From 4f550a937f4862bef10f05dba02d72665e50ad2f Mon Sep 17 00:00:00 2001 From: hatim boufnichel Date: Fri, 4 Nov 2022 21:22:18 +0100 Subject: [PATCH] up --- .gitignore | 3 +- README.md | 7 + build/express_server.js | 117 - build/express_server.js.map | 1 - build/http_client.js | 96 - build/http_client.js.map | 1 - .../proto/autogenerated/ts/express_server.js | 116 - .../autogenerated/ts/express_server.js.map | 1 - build/proto/autogenerated/ts/http_client.js | 84 - .../proto/autogenerated/ts/http_client.js.map | 1 - build/proto/autogenerated/ts/types.js | 44 - build/proto/autogenerated/ts/types.js.map | 1 - build/proto/lnd/invoices.client.js | 67 - build/proto/lnd/invoices.client.js.map | 1 - build/proto/lnd/invoices.grpc-client.js | 91 - build/proto/lnd/invoices.grpc-client.js.map | 1 - build/proto/lnd/invoices.js | 374 - build/proto/lnd/invoices.js.map | 1 - build/proto/lnd/router.client.js | 225 - build/proto/lnd/router.client.js.map | 1 - build/proto/lnd/router.grpc-client.js | 249 - build/proto/lnd/router.grpc-client.js.map | 1 - build/proto/lnd/router.js | 2309 --- build/proto/lnd/router.js.map | 1 - build/proto/lnd/rpc.client.js | 803 - build/proto/lnd/rpc.client.js.map | 1 - build/proto/lnd/rpc.grpc-client.js | 827 -- build/proto/lnd/rpc.grpc-client.js.map | 1 - build/proto/lnd/rpc.js | 12362 ---------------- build/proto/lnd/rpc.js.map | 1 - build/src/auth.js | 19 - build/src/auth.js.map | 1 - build/src/index.js | 9 - build/src/index.js.map | 1 - build/src/index.spec.js | 85 - build/src/index.spec.js.map | 1 - build/src/server.js | 10 - build/src/server.js.map | 1 - build/src/server.spec.js | 82 - build/src/server.spec.js.map | 1 - build/src/services/lnd/index.js | 45 - build/src/services/lnd/index.js.map | 1 - build/src/services/main/index.js | 25 - build/src/services/main/index.js.map | 1 - build/types.js | 35 - build/types.js.map | 1 - package-lock.json | 10884 ++++++++------ package.json | 112 +- proto/autogenerated/debug.txt | 614 +- proto/autogenerated/ts/express_server.ts | 147 +- proto/autogenerated/ts/http_client.ts | 137 +- proto/autogenerated/ts/types.ts | 384 +- proto/protoc-gen-pub.exe | Bin 8683008 -> 8686592 bytes proto/service/methods.proto | 66 +- proto/service/structs.proto | 67 + src/auth.ts | 9 +- src/index.spec.ts | 9 +- src/index.ts | 18 +- src/server.ts | 4 +- src/services/encryption/crypto.spec.ts | 34 - src/services/encryption/crypto.ts | 95 - src/services/encryption/index.spec.ts | 142 - src/services/encryption/index.ts | 167 - src/services/encryption/subprocess.ts | 155 - src/services/serverMethods/index.ts | 48 + src/services/storage/db.ts | 13 + src/services/storage/entity/User.ts | 29 + src/services/storage/index.ts | 67 +- tsconfig.json | 132 +- 69 files changed, 8098 insertions(+), 23341 deletions(-) create mode 100644 README.md delete mode 100644 build/express_server.js delete mode 100644 build/express_server.js.map delete mode 100644 build/http_client.js delete mode 100644 build/http_client.js.map delete mode 100644 build/proto/autogenerated/ts/express_server.js delete mode 100644 build/proto/autogenerated/ts/express_server.js.map delete mode 100644 build/proto/autogenerated/ts/http_client.js delete mode 100644 build/proto/autogenerated/ts/http_client.js.map delete mode 100644 build/proto/autogenerated/ts/types.js delete mode 100644 build/proto/autogenerated/ts/types.js.map delete mode 100644 build/proto/lnd/invoices.client.js delete mode 100644 build/proto/lnd/invoices.client.js.map delete mode 100644 build/proto/lnd/invoices.grpc-client.js delete mode 100644 build/proto/lnd/invoices.grpc-client.js.map delete mode 100644 build/proto/lnd/invoices.js delete mode 100644 build/proto/lnd/invoices.js.map delete mode 100644 build/proto/lnd/router.client.js delete mode 100644 build/proto/lnd/router.client.js.map delete mode 100644 build/proto/lnd/router.grpc-client.js delete mode 100644 build/proto/lnd/router.grpc-client.js.map delete mode 100644 build/proto/lnd/router.js delete mode 100644 build/proto/lnd/router.js.map delete mode 100644 build/proto/lnd/rpc.client.js delete mode 100644 build/proto/lnd/rpc.client.js.map delete mode 100644 build/proto/lnd/rpc.grpc-client.js delete mode 100644 build/proto/lnd/rpc.grpc-client.js.map delete mode 100644 build/proto/lnd/rpc.js delete mode 100644 build/proto/lnd/rpc.js.map delete mode 100644 build/src/auth.js delete mode 100644 build/src/auth.js.map delete mode 100644 build/src/index.js delete mode 100644 build/src/index.js.map delete mode 100644 build/src/index.spec.js delete mode 100644 build/src/index.spec.js.map delete mode 100644 build/src/server.js delete mode 100644 build/src/server.js.map delete mode 100644 build/src/server.spec.js delete mode 100644 build/src/server.spec.js.map delete mode 100644 build/src/services/lnd/index.js delete mode 100644 build/src/services/lnd/index.js.map delete mode 100644 build/src/services/main/index.js delete mode 100644 build/src/services/main/index.js.map delete mode 100644 build/types.js delete mode 100644 build/types.js.map delete mode 100644 src/services/encryption/crypto.spec.ts delete mode 100644 src/services/encryption/crypto.ts delete mode 100644 src/services/encryption/index.spec.ts delete mode 100644 src/services/encryption/index.ts delete mode 100644 src/services/encryption/subprocess.ts create mode 100644 src/services/serverMethods/index.ts create mode 100644 src/services/storage/db.ts create mode 100644 src/services/storage/entity/User.ts diff --git a/.gitignore b/.gitignore index d3c5696b..045918c3 100644 --- a/.gitignore +++ b/.gitignore @@ -5,4 +5,5 @@ build/ tmp/ temp/ .env -build/ \ No newline at end of file +build/ +db.sqlite \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 00000000..0fdaaf88 --- /dev/null +++ b/README.md @@ -0,0 +1,7 @@ +# Awesome Project Build with TypeORM + +Steps to run this project: + +1. Run `npm i` command +2. Setup database settings inside `data-source.ts` file +3. Run `npm start` command diff --git a/build/express_server.js b/build/express_server.js deleted file mode 100644 index 424b0190..00000000 --- a/build/express_server.js +++ /dev/null @@ -1,117 +0,0 @@ -"use strict"; -// This file was autogenerated from a .proto file, DO NOT EDIT! -var __assign = (this && this.__assign) || function () { - __assign = Object.assign || function(t) { - for (var s, i = 1, n = arguments.length; i < n; i++) { - s = arguments[i]; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) - t[p] = s[p]; - } - return t; - }; - return __assign.apply(this, arguments); -}; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (_) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -var express_1 = __importDefault(require("express")); -var Types = __importStar(require("./types")); -var logErrorAndReturnResponse = function (error, response, res, logger) { logger.error(error.message || error); res.json({ status: 'ERROR', reason: response }); }; -exports.default = (function (methods, opts) { - var logger = opts.logger || { log: console.log, error: console.error }; - var app = (0, express_1.default)(); - if (!opts.allowNotImplementedMethods && !methods.EncryptionExchange) - throw new Error('method: EncryptionExchange is not implemented'); - app.post('/api/encryption/exchange', function (req, res) { return __awaiter(void 0, void 0, void 0, function () { - var authContext, request, error, query, params, response, e_1; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - _a.trys.push([0, 3, , 4]); - if (!methods.EncryptionExchange) - throw new Error('method: EncryptionExchange is not implemented'); - return [4 /*yield*/, opts.NoAuthAuthGuard(req.headers['authorization'])]; - case 1: - authContext = _a.sent(); - request = req.body; - error = Types.EncryptionExchangeRequestValidate(request); - if (error !== null) - return [2 /*return*/, logErrorAndReturnResponse(error, 'invalid request body', res, logger)]; - query = req.query; - params = req.params; - return [4 /*yield*/, methods.EncryptionExchange(__assign(__assign(__assign({}, authContext), query), params), request)]; - case 2: - response = _a.sent(); - res.json({ status: 'OK', result: response }); - return [3 /*break*/, 4]; - case 3: - e_1 = _a.sent(); - logErrorAndReturnResponse(e_1, e_1.message || e_1, res, logger); - return [3 /*break*/, 4]; - case 4: return [2 /*return*/]; - } - }); - }); }); - return { Listen: function (port) { return app.listen(port, function () { return logger.log('Example app listening on port ' + port); }); } }; -}); -//# sourceMappingURL=express_server.js.map \ No newline at end of file diff --git a/build/express_server.js.map b/build/express_server.js.map deleted file mode 100644 index 69ae048c..00000000 --- a/build/express_server.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"express_server.js","sourceRoot":"","sources":["../proto/autogenerated/ts/express_server.ts"],"names":[],"mappings":";AAAA,+DAA+D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAE/D,oDAA2C;AAC3C,6CAAgC;AAUhC,IAAM,yBAAyB,GAAG,UAAC,KAAY,EAAE,QAAgB,EAAE,GAAa,EAAE,MAAc,IAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA,CAAC,CAAC,CAAA;AAC9L,mBAAe,UAAC,OAA4B,EAAE,IAAmB;IAC7D,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAA;IACxE,IAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAA;IACrB,IAAI,CAAC,IAAI,CAAC,0BAA0B,IAAI,CAAC,OAAO,CAAC,kBAAkB;QAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;IACrI,GAAG,CAAC,IAAI,CAAC,0BAA0B,EAAE,UAAO,GAAG,EAAE,GAAG;;;;;;oBAE5C,IAAI,CAAC,OAAO,CAAC,kBAAkB;wBAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;oBAC7E,qBAAM,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,EAAA;;oBAAtE,WAAW,GAAG,SAAwD;oBACtE,OAAO,GAAG,GAAG,CAAC,IAAI,CAAA;oBAClB,KAAK,GAAG,KAAK,CAAC,iCAAiC,CAAC,OAAO,CAAC,CAAA;oBAC9D,IAAI,KAAK,KAAK,IAAI;wBAAE,sBAAO,yBAAyB,CAAC,KAAK,EAAE,sBAAsB,EAAE,GAAG,EAAE,MAAM,CAAC,EAAA;oBAC1F,KAAK,GAAG,GAAG,CAAC,KAAK,CAAA;oBACjB,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;oBACR,qBAAM,OAAO,CAAC,kBAAkB,gCAAM,WAAW,GAAK,KAAK,GAAK,MAAM,GAAI,OAAO,CAAC,EAAA;;oBAA7F,QAAQ,GAAG,SAAkF;oBACnG,GAAG,CAAC,IAAI,CAAC,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAC,CAAC,CAAA;;;;oBAC3B,yBAAyB,CAAC,GAAC,EAAE,GAAC,CAAC,OAAO,IAAI,GAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAA;;;;;SAC/E,CAAC,CAAA;IACF,OAAO,EAAE,MAAM,EAAE,UAAC,IAAY,IAAK,OAAA,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,cAAM,OAAA,MAAM,CAAC,GAAG,CAAC,gCAAgC,GAAG,IAAI,CAAC,EAAnD,CAAmD,CAAC,EAA3E,CAA2E,EAAE,CAAA;AACpH,CAAC,EAAA"} \ No newline at end of file diff --git a/build/http_client.js b/build/http_client.js deleted file mode 100644 index 4ea73720..00000000 --- a/build/http_client.js +++ /dev/null @@ -1,96 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __generator = (this && this.__generator) || function (thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (_) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -// This file was autogenerated from a .proto file, DO NOT EDIT! -var axios_1 = __importDefault(require("axios")); -var Types = __importStar(require("./types")); -exports.default = (function (retrievers) { return ({ - EncryptionExchange: function (request) { return __awaiter(void 0, void 0, void 0, function () { - var auth, data, error; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: return [4 /*yield*/, retrievers.retrieveNoAuthAuth()]; - case 1: - auth = _a.sent(); - if (auth === null) - throw new Error('retrieveNoAuthAuth() returned null'); - return [4 /*yield*/, axios_1.default.post('/api/encryption/exchange', request, { headers: { 'authorization': auth } })]; - case 2: - data = (_a.sent()).data; - if (data.status === 'ERROR' && typeof data.reason === 'string') - return [2 /*return*/, data]; - if (data.status === 'OK') { - error = Types.EmptyValidate(data.result); - if (error === null) { - return [2 /*return*/, data]; - } - else - return [2 /*return*/, { status: 'ERROR', reason: error.message }]; - } - return [2 /*return*/, { status: 'ERROR', reason: 'invalid response' }]; - } - }); - }); }, -}); }); -//# sourceMappingURL=http_client.js.map \ No newline at end of file diff --git a/build/http_client.js.map b/build/http_client.js.map deleted file mode 100644 index 49e2fba2..00000000 --- a/build/http_client.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"http_client.js","sourceRoot":"","sources":["../proto/autogenerated/ts/http_client.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+DAA+D;AAC/D,gDAAyB;AACzB,6CAAgC;AAQhC,mBAAe,UAAC,UAA6B,IAAK,OAAA,CAAC;IAC/C,kBAAkB,EAAE,UAAO,OAAwC;;;;wBAClD,qBAAM,UAAU,CAAC,kBAAkB,EAAE,EAAA;;oBAA5C,IAAI,GAAG,SAAqC;oBAClD,IAAI,IAAI,KAAK,IAAI;wBAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;oBACvD,qBAAM,eAAK,CAAC,IAAI,CAAC,0BAA0B,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,CAAC,EAAA;;oBAAtG,IAAI,GAAK,CAAA,SAA6F,CAAA,KAAlG;oBACZ,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;wBAAE,sBAAO,IAAI,EAAA;oBAC3E,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE;wBAChB,KAAK,GAAG,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;wBAC9C,IAAI,KAAK,KAAK,IAAI,EAAE;4BAAE,sBAAO,IAAI,EAAA;yBAAE;;4BAAM,sBAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,EAAA;qBAC7F;oBACD,sBAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,EAAA;;;SACzD;CACJ,CAAC,EAZgD,CAYhD,EAAA"} \ No newline at end of file diff --git a/build/proto/autogenerated/ts/express_server.js b/build/proto/autogenerated/ts/express_server.js deleted file mode 100644 index 0544f1e2..00000000 --- a/build/proto/autogenerated/ts/express_server.js +++ /dev/null @@ -1,116 +0,0 @@ -"use strict"; -// This file was autogenerated from a .proto file, DO NOT EDIT! -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const express_1 = __importDefault(require("express")); -const Types = __importStar(require("./types")); -const logErrorAndReturnResponse = (error, response, res, logger) => { logger.error(error.message || error); res.json({ status: 'ERROR', reason: response }); }; -exports.default = (methods, opts) => { - const logger = opts.logger || { log: console.log, error: console.error }; - const app = (0, express_1.default)(); - if (!opts.allowNotImplementedMethods && !methods.Health) - throw new Error('method: Health is not implemented'); - app.get('/health', (req, res) => __awaiter(void 0, void 0, void 0, function* () { - try { - if (!methods.Health) - throw new Error('method: Health is not implemented'); - const authContext = yield opts.NoAuthAuthGuard(req.headers['authorization']); - const query = req.query; - const params = req.params; - yield methods.Health(Object.assign(Object.assign(Object.assign({}, authContext), query), params)); - res.json({ status: 'OK' }); - } - catch (ex) { - const e = ex; - logErrorAndReturnResponse(e, e.message || e, res, logger); - if (opts.throwErrors) - throw e; - } - })); - if (!opts.allowNotImplementedMethods && !methods.EncryptionExchange) - throw new Error('method: EncryptionExchange is not implemented'); - app.post('/api/encryption/exchange', (req, res) => __awaiter(void 0, void 0, void 0, function* () { - try { - if (!methods.EncryptionExchange) - throw new Error('method: EncryptionExchange is not implemented'); - const authContext = yield opts.NoAuthAuthGuard(req.headers['authorization']); - const request = req.body; - const error = Types.EncryptionExchangeRequestValidate(request); - if (error !== null) - return logErrorAndReturnResponse(error, 'invalid request body', res, logger); - const query = req.query; - const params = req.params; - yield methods.EncryptionExchange(Object.assign(Object.assign(Object.assign({}, authContext), query), params), request); - res.json({ status: 'OK' }); - } - catch (ex) { - const e = ex; - logErrorAndReturnResponse(e, e.message || e, res, logger); - if (opts.throwErrors) - throw e; - } - })); - if (!opts.allowNotImplementedMethods && !methods.LndGetInfo) - throw new Error('method: LndGetInfo is not implemented'); - app.get('/api/lnd/getinfo', (req, res) => __awaiter(void 0, void 0, void 0, function* () { - try { - if (!methods.LndGetInfo) - throw new Error('method: LndGetInfo is not implemented'); - const authContext = yield opts.NoAuthAuthGuard(req.headers['authorization']); - const query = req.query; - const params = req.params; - const response = yield methods.LndGetInfo(Object.assign(Object.assign(Object.assign({}, authContext), query), params)); - res.json({ status: 'OK', result: response }); - } - catch (ex) { - const e = ex; - logErrorAndReturnResponse(e, e.message || e, res, logger); - if (opts.throwErrors) - throw e; - } - })); - var server; - return { - Close: () => { if (!server) { - throw new Error('tried closing server before starting'); - } - else - server.close(); }, - Listen: (port) => { server = app.listen(port, () => logger.log('Example app listening on port ' + port)); } - }; -}; -//# sourceMappingURL=express_server.js.map \ No newline at end of file diff --git a/build/proto/autogenerated/ts/express_server.js.map b/build/proto/autogenerated/ts/express_server.js.map deleted file mode 100644 index d4f849a3..00000000 --- a/build/proto/autogenerated/ts/express_server.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"express_server.js","sourceRoot":"","sources":["../../../../proto/autogenerated/ts/express_server.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/proto/autogenerated/ts/http_client.js b/build/proto/autogenerated/ts/http_client.js deleted file mode 100644 index 5432a5dc..00000000 --- a/build/proto/autogenerated/ts/http_client.js +++ /dev/null @@ -1,84 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -// This file was autogenerated from a .proto file, DO NOT EDIT! -const axios_1 = __importDefault(require("axios")); -const Types = __importStar(require("./types")); -exports.default = (params) => ({ - Health: () => __awaiter(void 0, void 0, void 0, function* () { - const auth = yield params.retrieveNoAuthAuth(); - if (auth === null) - throw new Error('retrieveNoAuthAuth() returned null'); - const { data } = yield axios_1.default.get(params.baseUrl + '/health', { headers: { 'authorization': auth } }); - if (data.status === 'ERROR' && typeof data.reason === 'string') - return data; - if (data.status === 'OK') { - return data; - } - return { status: 'ERROR', reason: 'invalid response' }; - }), - EncryptionExchange: (request) => __awaiter(void 0, void 0, void 0, function* () { - const auth = yield params.retrieveNoAuthAuth(); - if (auth === null) - throw new Error('retrieveNoAuthAuth() returned null'); - const { data } = yield axios_1.default.post(params.baseUrl + '/api/encryption/exchange', request, { headers: { 'authorization': auth } }); - if (data.status === 'ERROR' && typeof data.reason === 'string') - return data; - if (data.status === 'OK') { - return data; - } - return { status: 'ERROR', reason: 'invalid response' }; - }), - LndGetInfo: () => __awaiter(void 0, void 0, void 0, function* () { - const auth = yield params.retrieveNoAuthAuth(); - if (auth === null) - throw new Error('retrieveNoAuthAuth() returned null'); - const { data } = yield axios_1.default.get(params.baseUrl + '/api/lnd/getinfo', { headers: { 'authorization': auth } }); - if (data.status === 'ERROR' && typeof data.reason === 'string') - return data; - if (data.status === 'OK') { - const error = Types.LndGetInfoResponseValidate(data.result); - if (error === null) { - return data; - } - else - return { status: 'ERROR', reason: error.message }; - } - return { status: 'ERROR', reason: 'invalid response' }; - }), -}); -//# sourceMappingURL=http_client.js.map \ No newline at end of file diff --git a/build/proto/autogenerated/ts/http_client.js.map b/build/proto/autogenerated/ts/http_client.js.map deleted file mode 100644 index 4f2ad385..00000000 --- a/build/proto/autogenerated/ts/http_client.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"http_client.js","sourceRoot":"","sources":["../../../../proto/autogenerated/ts/http_client.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+DAA+D;AAC/D,kDAAyB;AACzB,+CAAgC;AAShC,kBAAe,CAAC,MAAoB,EAAE,EAAE,CAAC,CAAC;IACtC,MAAM,EAAE,GAAkD,EAAE;QACxD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,kBAAkB,EAAE,CAAA;QAC9C,IAAI,IAAI,KAAK,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;QACxE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,eAAK,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,GAAG,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;QACpG,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAA;QAC3E,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE;YACtB,OAAO,IAAI,CAAA;SACd;QACD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAA;IAC1D,CAAC,CAAA;IACD,kBAAkB,EAAE,CAAO,OAAwC,EAA2C,EAAE;QAC5G,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,kBAAkB,EAAE,CAAA;QAC9C,IAAI,IAAI,KAAK,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;QACxE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,eAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,0BAA0B,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;QAC/H,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAA;QAC3E,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE;YACtB,OAAO,IAAI,CAAA;SACd;QACD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAA;IAC1D,CAAC,CAAA;IACD,UAAU,EAAE,GAAuE,EAAE;QACjF,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,kBAAkB,EAAE,CAAA;QAC9C,IAAI,IAAI,KAAK,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;QACxE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,eAAK,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,GAAG,kBAAkB,EAAE,EAAE,OAAO,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;QAC7G,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAA;QAC3E,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE;YACtB,MAAM,KAAK,GAAG,KAAK,CAAC,0BAA0B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAC3D,IAAI,KAAK,KAAK,IAAI,EAAE;gBAAE,OAAO,IAAI,CAAA;aAAE;;gBAAM,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,CAAA;SAC7F;QACD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAA;IAC1D,CAAC,CAAA;CACJ,CAAC,CAAA"} \ No newline at end of file diff --git a/build/proto/autogenerated/ts/types.js b/build/proto/autogenerated/ts/types.js deleted file mode 100644 index 8c887b0f..00000000 --- a/build/proto/autogenerated/ts/types.js +++ /dev/null @@ -1,44 +0,0 @@ -"use strict"; -// This file was autogenerated from a .proto file, DO NOT EDIT! -Object.defineProperty(exports, "__esModule", { value: true }); -exports.EncryptionExchangeRequestValidate = exports.EncryptionExchangeRequestOptionalFields = exports.EmptyValidate = exports.EmptyOptionalFields = exports.LndGetInfoResponseValidate = exports.LndGetInfoResponseOptionalFields = void 0; -exports.LndGetInfoResponseOptionalFields = []; -const LndGetInfoResponseValidate = (o, opts = {}, path = 'LndGetInfoResponse::root.') => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) - return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message'); - if (typeof o !== 'object' || o === null) - return new Error(path + ': object is not an instance of an object or is null'); - if (typeof o.alias !== 'string') - return new Error(`${path}.alias: is not a string`); - if (opts.alias_CustomCheck && !opts.alias_CustomCheck(o.alias)) - return new Error(`${path}.alias: custom check failed`); - return null; -}; -exports.LndGetInfoResponseValidate = LndGetInfoResponseValidate; -exports.EmptyOptionalFields = []; -const EmptyValidate = (o, opts = {}, path = 'Empty::root.') => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) - return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message'); - if (typeof o !== 'object' || o === null) - return new Error(path + ': object is not an instance of an object or is null'); - return null; -}; -exports.EmptyValidate = EmptyValidate; -exports.EncryptionExchangeRequestOptionalFields = []; -const EncryptionExchangeRequestValidate = (o, opts = {}, path = 'EncryptionExchangeRequest::root.') => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) - return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message'); - if (typeof o !== 'object' || o === null) - return new Error(path + ': object is not an instance of an object or is null'); - if (typeof o.public_key !== 'string') - return new Error(`${path}.public_key: is not a string`); - if (opts.public_key_CustomCheck && !opts.public_key_CustomCheck(o.public_key)) - return new Error(`${path}.public_key: custom check failed`); - if (typeof o.device_id !== 'string') - return new Error(`${path}.device_id: is not a string`); - if (opts.device_id_CustomCheck && !opts.device_id_CustomCheck(o.device_id)) - return new Error(`${path}.device_id: custom check failed`); - return null; -}; -exports.EncryptionExchangeRequestValidate = EncryptionExchangeRequestValidate; -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/build/proto/autogenerated/ts/types.js.map b/build/proto/autogenerated/ts/types.js.map deleted file mode 100644 index dcec2b01..00000000 --- a/build/proto/autogenerated/ts/types.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../proto/autogenerated/ts/types.ts"],"names":[],"mappings":";AAAA,+DAA+D;;;AAyClD,QAAA,gCAAgC,GAAO,EAAE,CAAA;AAK/C,MAAM,0BAA0B,GAAG,CAAC,CAAsB,EAAE,OAAkC,EAAE,EAAE,OAAe,2BAA2B,EAAgB,EAAE;IACjK,IAAI,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,kBAAkB;QAAE,OAAO,IAAI,KAAK,CAAC,IAAI,GAAG,yFAAyF,CAAC,CAAA;IAC5K,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,KAAK,CAAC,IAAI,GAAG,qDAAqD,CAAC,CAAA;IAEvH,IAAI,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,KAAK,CAAC,GAAG,IAAI,yBAAyB,CAAC,CAAA;IACnF,IAAI,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,KAAK,CAAC,GAAG,IAAI,6BAA6B,CAAC,CAAA;IAEtH,OAAO,IAAI,CAAA;AACf,CAAC,CAAA;AARY,QAAA,0BAA0B,8BAQtC;AAIY,QAAA,mBAAmB,GAAO,EAAE,CAAA;AAIlC,MAAM,aAAa,GAAG,CAAC,CAAS,EAAE,OAAqB,EAAE,EAAE,OAAe,cAAc,EAAgB,EAAE;IAC7G,IAAI,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,kBAAkB;QAAE,OAAO,IAAI,KAAK,CAAC,IAAI,GAAG,yFAAyF,CAAC,CAAA;IAC5K,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,KAAK,CAAC,IAAI,GAAG,qDAAqD,CAAC,CAAA;IAEvH,OAAO,IAAI,CAAA;AACf,CAAC,CAAA;AALY,QAAA,aAAa,iBAKzB;AAMY,QAAA,uCAAuC,GAAO,EAAE,CAAA;AAMtD,MAAM,iCAAiC,GAAG,CAAC,CAA6B,EAAE,OAAyC,EAAE,EAAE,OAAe,kCAAkC,EAAgB,EAAE;IAC7L,IAAI,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,kBAAkB;QAAE,OAAO,IAAI,KAAK,CAAC,IAAI,GAAG,yFAAyF,CAAC,CAAA;IAC5K,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,KAAK,CAAC,IAAI,GAAG,qDAAqD,CAAC,CAAA;IAEvH,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK,QAAQ;QAAE,OAAO,IAAI,KAAK,CAAC,GAAG,IAAI,8BAA8B,CAAC,CAAA;IAC7F,IAAI,IAAI,CAAC,sBAAsB,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,KAAK,CAAC,GAAG,IAAI,kCAAkC,CAAC,CAAA;IAE1I,IAAI,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ;QAAE,OAAO,IAAI,KAAK,CAAC,GAAG,IAAI,6BAA6B,CAAC,CAAA;IAC3F,IAAI,IAAI,CAAC,qBAAqB,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,KAAK,CAAC,GAAG,IAAI,iCAAiC,CAAC,CAAA;IAEtI,OAAO,IAAI,CAAA;AACf,CAAC,CAAA;AAXY,QAAA,iCAAiC,qCAW7C"} \ No newline at end of file diff --git a/build/proto/lnd/invoices.client.js b/build/proto/lnd/invoices.client.js deleted file mode 100644 index 12dad8b9..00000000 --- a/build/proto/lnd/invoices.client.js +++ /dev/null @@ -1,67 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.InvoicesClient = void 0; -const invoices_1 = require("./invoices"); -const runtime_rpc_1 = require("@protobuf-ts/runtime-rpc"); -/** - * Invoices is a service that can be used to create, accept, settle and cancel - * invoices. - * - * @generated from protobuf service invoicesrpc.Invoices - */ -class InvoicesClient { - constructor(_transport) { - this._transport = _transport; - this.typeName = invoices_1.Invoices.typeName; - this.methods = invoices_1.Invoices.methods; - this.options = invoices_1.Invoices.options; - } - /** - * - * SubscribeSingleInvoice returns a uni-directional stream (server -> client) - * to notify the client of state transitions of the specified invoice. - * Initially the current invoice state is always sent out. - * - * @generated from protobuf rpc: SubscribeSingleInvoice(invoicesrpc.SubscribeSingleInvoiceRequest) returns (stream lnrpc.Invoice); - */ - subscribeSingleInvoice(input, options) { - const method = this.methods[0], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("serverStreaming", this._transport, method, opt, input); - } - /** - * - * CancelInvoice cancels a currently open invoice. If the invoice is already - * canceled, this call will succeed. If the invoice is already settled, it will - * fail. - * - * @generated from protobuf rpc: CancelInvoice(invoicesrpc.CancelInvoiceMsg) returns (invoicesrpc.CancelInvoiceResp); - */ - cancelInvoice(input, options) { - const method = this.methods[1], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * AddHoldInvoice creates a hold invoice. It ties the invoice to the hash - * supplied in the request. - * - * @generated from protobuf rpc: AddHoldInvoice(invoicesrpc.AddHoldInvoiceRequest) returns (invoicesrpc.AddHoldInvoiceResp); - */ - addHoldInvoice(input, options) { - const method = this.methods[2], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * SettleInvoice settles an accepted invoice. If the invoice is already - * settled, this call will succeed. - * - * @generated from protobuf rpc: SettleInvoice(invoicesrpc.SettleInvoiceMsg) returns (invoicesrpc.SettleInvoiceResp); - */ - settleInvoice(input, options) { - const method = this.methods[3], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } -} -exports.InvoicesClient = InvoicesClient; -//# sourceMappingURL=invoices.client.js.map \ No newline at end of file diff --git a/build/proto/lnd/invoices.client.js.map b/build/proto/lnd/invoices.client.js.map deleted file mode 100644 index 8f1755ec..00000000 --- a/build/proto/lnd/invoices.client.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"invoices.client.js","sourceRoot":"","sources":["../../../proto/lnd/invoices.client.ts"],"names":[],"mappings":";;;AAKA,yCAAsC;AAQtC,0DAA0D;AA+C1D;;;;;GAKG;AACH,MAAa,cAAc;IAIvB,YAA6B,UAAwB;QAAxB,eAAU,GAAV,UAAU,CAAc;QAHrD,aAAQ,GAAG,mBAAQ,CAAC,QAAQ,CAAC;QAC7B,YAAO,GAAG,mBAAQ,CAAC,OAAO,CAAC;QAC3B,YAAO,GAAG,mBAAQ,CAAC,OAAO,CAAC;IAE3B,CAAC;IACD;;;;;;;OAOG;IACH,sBAAsB,CAAC,KAAoC,EAAE,OAAoB;QAC7E,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAC5E,OAAO,IAAA,4BAAc,EAAyC,iBAAiB,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IAC1H,CAAC;IACD;;;;;;;OAOG;IACH,aAAa,CAAC,KAAuB,EAAE,OAAoB;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAC5E,OAAO,IAAA,4BAAc,EAAsC,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IAC7G,CAAC;IACD;;;;;;OAMG;IACH,cAAc,CAAC,KAA4B,EAAE,OAAoB;QAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAC5E,OAAO,IAAA,4BAAc,EAA4C,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IACnH,CAAC;IACD;;;;;;OAMG;IACH,aAAa,CAAC,KAAuB,EAAE,OAAoB;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAC5E,OAAO,IAAA,4BAAc,EAAsC,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IAC7G,CAAC;CACJ;AApDD,wCAoDC"} \ No newline at end of file diff --git a/build/proto/lnd/invoices.grpc-client.js b/build/proto/lnd/invoices.grpc-client.js deleted file mode 100644 index 9aa22c5f..00000000 --- a/build/proto/lnd/invoices.grpc-client.js +++ /dev/null @@ -1,91 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.InvoicesClient = void 0; -// @generated by protobuf-ts 2.5.0 with parameter long_type_string,client_grpc1 -// @generated from protobuf file "invoices.proto" (package "invoicesrpc", syntax proto3) -// tslint:disable -const invoices_1 = require("./invoices"); -const grpc = __importStar(require("@grpc/grpc-js")); -/** - * Invoices is a service that can be used to create, accept, settle and cancel - * invoices. - * - * @generated from protobuf service invoicesrpc.Invoices - */ -class InvoicesClient extends grpc.Client { - constructor(address, credentials, options = {}, binaryOptions = {}) { - super(address, credentials, options); - this._binaryOptions = binaryOptions; - } - /** - * - * SubscribeSingleInvoice returns a uni-directional stream (server -> client) - * to notify the client of state transitions of the specified invoice. - * Initially the current invoice state is always sent out. - * - * @generated from protobuf rpc: SubscribeSingleInvoice(invoicesrpc.SubscribeSingleInvoiceRequest) returns (stream lnrpc.Invoice); - */ - subscribeSingleInvoice(input, metadata, options) { - const method = invoices_1.Invoices.methods[0]; - return this.makeServerStreamRequest(`/${invoices_1.Invoices.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options); - } - /** - * - * CancelInvoice cancels a currently open invoice. If the invoice is already - * canceled, this call will succeed. If the invoice is already settled, it will - * fail. - * - * @generated from protobuf rpc: CancelInvoice(invoicesrpc.CancelInvoiceMsg) returns (invoicesrpc.CancelInvoiceResp); - */ - cancelInvoice(input, metadata, options, callback) { - const method = invoices_1.Invoices.methods[1]; - return this.makeUnaryRequest(`/${invoices_1.Invoices.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * AddHoldInvoice creates a hold invoice. It ties the invoice to the hash - * supplied in the request. - * - * @generated from protobuf rpc: AddHoldInvoice(invoicesrpc.AddHoldInvoiceRequest) returns (invoicesrpc.AddHoldInvoiceResp); - */ - addHoldInvoice(input, metadata, options, callback) { - const method = invoices_1.Invoices.methods[2]; - return this.makeUnaryRequest(`/${invoices_1.Invoices.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * SettleInvoice settles an accepted invoice. If the invoice is already - * settled, this call will succeed. - * - * @generated from protobuf rpc: SettleInvoice(invoicesrpc.SettleInvoiceMsg) returns (invoicesrpc.SettleInvoiceResp); - */ - settleInvoice(input, metadata, options, callback) { - const method = invoices_1.Invoices.methods[3]; - return this.makeUnaryRequest(`/${invoices_1.Invoices.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } -} -exports.InvoicesClient = InvoicesClient; -//# sourceMappingURL=invoices.grpc-client.js.map \ No newline at end of file diff --git a/build/proto/lnd/invoices.grpc-client.js.map b/build/proto/lnd/invoices.grpc-client.js.map deleted file mode 100644 index b73971a6..00000000 --- a/build/proto/lnd/invoices.grpc-client.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"invoices.grpc-client.js","sourceRoot":"","sources":["../../../proto/lnd/invoices.grpc-client.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/proto/lnd/invoices.js b/build/proto/lnd/invoices.js deleted file mode 100644 index cd2599ce..00000000 --- a/build/proto/lnd/invoices.js +++ /dev/null @@ -1,374 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Invoices = exports.SubscribeSingleInvoiceRequest = exports.SettleInvoiceResp = exports.SettleInvoiceMsg = exports.AddHoldInvoiceResp = exports.AddHoldInvoiceRequest = exports.CancelInvoiceResp = exports.CancelInvoiceMsg = void 0; -// @generated by protobuf-ts 2.5.0 with parameter long_type_string -// @generated from protobuf file "invoices.proto" (package "invoicesrpc", syntax proto3) -// tslint:disable -const rpc_1 = require("./rpc"); -const runtime_rpc_1 = require("@protobuf-ts/runtime-rpc"); -const runtime_1 = require("@protobuf-ts/runtime"); -const runtime_2 = require("@protobuf-ts/runtime"); -const runtime_3 = require("@protobuf-ts/runtime"); -const runtime_4 = require("@protobuf-ts/runtime"); -const runtime_5 = require("@protobuf-ts/runtime"); -const rpc_2 = require("./rpc"); -// @generated message type with reflection information, may provide speed optimized methods -class CancelInvoiceMsg$Type extends runtime_5.MessageType { - constructor() { - super("invoicesrpc.CancelInvoiceMsg", [ - { no: 1, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { paymentHash: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes payment_hash */ 1: - message.paymentHash = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes payment_hash = 1; */ - if (message.paymentHash.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.paymentHash); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message invoicesrpc.CancelInvoiceMsg - */ -exports.CancelInvoiceMsg = new CancelInvoiceMsg$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class CancelInvoiceResp$Type extends runtime_5.MessageType { - constructor() { - super("invoicesrpc.CancelInvoiceResp", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message invoicesrpc.CancelInvoiceResp - */ -exports.CancelInvoiceResp = new CancelInvoiceResp$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class AddHoldInvoiceRequest$Type extends runtime_5.MessageType { - constructor() { - super("invoicesrpc.AddHoldInvoiceRequest", [ - { no: 1, name: "memo", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "value", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 10, name: "value_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 4, name: "description_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 5, name: "expiry", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 6, name: "fallback_addr", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 7, name: "cltv_expiry", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 8, name: "route_hints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => rpc_2.RouteHint }, - { no: 9, name: "private", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { memo: "", hash: new Uint8Array(0), value: "0", valueMsat: "0", descriptionHash: new Uint8Array(0), expiry: "0", fallbackAddr: "", cltvExpiry: "0", routeHints: [], private: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string memo */ 1: - message.memo = reader.string(); - break; - case /* bytes hash */ 2: - message.hash = reader.bytes(); - break; - case /* int64 value */ 3: - message.value = reader.int64().toString(); - break; - case /* int64 value_msat */ 10: - message.valueMsat = reader.int64().toString(); - break; - case /* bytes description_hash */ 4: - message.descriptionHash = reader.bytes(); - break; - case /* int64 expiry */ 5: - message.expiry = reader.int64().toString(); - break; - case /* string fallback_addr */ 6: - message.fallbackAddr = reader.string(); - break; - case /* uint64 cltv_expiry */ 7: - message.cltvExpiry = reader.uint64().toString(); - break; - case /* repeated lnrpc.RouteHint route_hints */ 8: - message.routeHints.push(rpc_2.RouteHint.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* bool private */ 9: - message.private = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string memo = 1; */ - if (message.memo !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.memo); - /* bytes hash = 2; */ - if (message.hash.length) - writer.tag(2, runtime_1.WireType.LengthDelimited).bytes(message.hash); - /* int64 value = 3; */ - if (message.value !== "0") - writer.tag(3, runtime_1.WireType.Varint).int64(message.value); - /* int64 value_msat = 10; */ - if (message.valueMsat !== "0") - writer.tag(10, runtime_1.WireType.Varint).int64(message.valueMsat); - /* bytes description_hash = 4; */ - if (message.descriptionHash.length) - writer.tag(4, runtime_1.WireType.LengthDelimited).bytes(message.descriptionHash); - /* int64 expiry = 5; */ - if (message.expiry !== "0") - writer.tag(5, runtime_1.WireType.Varint).int64(message.expiry); - /* string fallback_addr = 6; */ - if (message.fallbackAddr !== "") - writer.tag(6, runtime_1.WireType.LengthDelimited).string(message.fallbackAddr); - /* uint64 cltv_expiry = 7; */ - if (message.cltvExpiry !== "0") - writer.tag(7, runtime_1.WireType.Varint).uint64(message.cltvExpiry); - /* repeated lnrpc.RouteHint route_hints = 8; */ - for (let i = 0; i < message.routeHints.length; i++) - rpc_2.RouteHint.internalBinaryWrite(message.routeHints[i], writer.tag(8, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* bool private = 9; */ - if (message.private !== false) - writer.tag(9, runtime_1.WireType.Varint).bool(message.private); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message invoicesrpc.AddHoldInvoiceRequest - */ -exports.AddHoldInvoiceRequest = new AddHoldInvoiceRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class AddHoldInvoiceResp$Type extends runtime_5.MessageType { - constructor() { - super("invoicesrpc.AddHoldInvoiceResp", [ - { no: 1, name: "payment_request", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { paymentRequest: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string payment_request */ 1: - message.paymentRequest = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string payment_request = 1; */ - if (message.paymentRequest !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.paymentRequest); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message invoicesrpc.AddHoldInvoiceResp - */ -exports.AddHoldInvoiceResp = new AddHoldInvoiceResp$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SettleInvoiceMsg$Type extends runtime_5.MessageType { - constructor() { - super("invoicesrpc.SettleInvoiceMsg", [ - { no: 1, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { preimage: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes preimage */ 1: - message.preimage = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes preimage = 1; */ - if (message.preimage.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.preimage); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message invoicesrpc.SettleInvoiceMsg - */ -exports.SettleInvoiceMsg = new SettleInvoiceMsg$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SettleInvoiceResp$Type extends runtime_5.MessageType { - constructor() { - super("invoicesrpc.SettleInvoiceResp", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message invoicesrpc.SettleInvoiceResp - */ -exports.SettleInvoiceResp = new SettleInvoiceResp$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SubscribeSingleInvoiceRequest$Type extends runtime_5.MessageType { - constructor() { - super("invoicesrpc.SubscribeSingleInvoiceRequest", [ - { no: 2, name: "r_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { rHash: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes r_hash */ 2: - message.rHash = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes r_hash = 2; */ - if (message.rHash.length) - writer.tag(2, runtime_1.WireType.LengthDelimited).bytes(message.rHash); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message invoicesrpc.SubscribeSingleInvoiceRequest - */ -exports.SubscribeSingleInvoiceRequest = new SubscribeSingleInvoiceRequest$Type(); -/** - * @generated ServiceType for protobuf service invoicesrpc.Invoices - */ -exports.Invoices = new runtime_rpc_1.ServiceType("invoicesrpc.Invoices", [ - { name: "SubscribeSingleInvoice", serverStreaming: true, options: {}, I: exports.SubscribeSingleInvoiceRequest, O: rpc_1.Invoice }, - { name: "CancelInvoice", options: {}, I: exports.CancelInvoiceMsg, O: exports.CancelInvoiceResp }, - { name: "AddHoldInvoice", options: {}, I: exports.AddHoldInvoiceRequest, O: exports.AddHoldInvoiceResp }, - { name: "SettleInvoice", options: {}, I: exports.SettleInvoiceMsg, O: exports.SettleInvoiceResp } -]); -//# sourceMappingURL=invoices.js.map \ No newline at end of file diff --git a/build/proto/lnd/invoices.js.map b/build/proto/lnd/invoices.js.map deleted file mode 100644 index cdbc67eb..00000000 --- a/build/proto/lnd/invoices.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"invoices.js","sourceRoot":"","sources":["../../../proto/lnd/invoices.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/proto/lnd/router.client.js b/build/proto/lnd/router.client.js deleted file mode 100644 index 58bef4c8..00000000 --- a/build/proto/lnd/router.client.js +++ /dev/null @@ -1,225 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.RouterClient = void 0; -const router_1 = require("./router"); -const runtime_rpc_1 = require("@protobuf-ts/runtime-rpc"); -/** - * Router is a service that offers advanced interaction with the router - * subsystem of the daemon. - * - * @generated from protobuf service routerrpc.Router - */ -class RouterClient { - constructor(_transport) { - this._transport = _transport; - this.typeName = router_1.Router.typeName; - this.methods = router_1.Router.methods; - this.options = router_1.Router.options; - } - /** - * - * SendPaymentV2 attempts to route a payment described by the passed - * PaymentRequest to the final destination. The call returns a stream of - * payment updates. - * - * @generated from protobuf rpc: SendPaymentV2(routerrpc.SendPaymentRequest) returns (stream lnrpc.Payment); - */ - sendPaymentV2(input, options) { - const method = this.methods[0], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("serverStreaming", this._transport, method, opt, input); - } - /** - * - * TrackPaymentV2 returns an update stream for the payment identified by the - * payment hash. - * - * @generated from protobuf rpc: TrackPaymentV2(routerrpc.TrackPaymentRequest) returns (stream lnrpc.Payment); - */ - trackPaymentV2(input, options) { - const method = this.methods[1], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("serverStreaming", this._transport, method, opt, input); - } - /** - * - * EstimateRouteFee allows callers to obtain a lower bound w.r.t how much it - * may cost to send an HTLC to the target end destination. - * - * @generated from protobuf rpc: EstimateRouteFee(routerrpc.RouteFeeRequest) returns (routerrpc.RouteFeeResponse); - */ - estimateRouteFee(input, options) { - const method = this.methods[2], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * Deprecated, use SendToRouteV2. SendToRoute attempts to make a payment via - * the specified route. This method differs from SendPayment in that it - * allows users to specify a full route manually. This can be used for - * things like rebalancing, and atomic swaps. It differs from the newer - * SendToRouteV2 in that it doesn't return the full HTLC information. - * - * @deprecated - * @generated from protobuf rpc: SendToRoute(routerrpc.SendToRouteRequest) returns (routerrpc.SendToRouteResponse); - */ - sendToRoute(input, options) { - const method = this.methods[3], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * SendToRouteV2 attempts to make a payment via the specified route. This - * method differs from SendPayment in that it allows users to specify a full - * route manually. This can be used for things like rebalancing, and atomic - * swaps. - * - * @generated from protobuf rpc: SendToRouteV2(routerrpc.SendToRouteRequest) returns (lnrpc.HTLCAttempt); - */ - sendToRouteV2(input, options) { - const method = this.methods[4], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * ResetMissionControl clears all mission control state and starts with a clean - * slate. - * - * @generated from protobuf rpc: ResetMissionControl(routerrpc.ResetMissionControlRequest) returns (routerrpc.ResetMissionControlResponse); - */ - resetMissionControl(input, options) { - const method = this.methods[5], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * QueryMissionControl exposes the internal mission control state to callers. - * It is a development feature. - * - * @generated from protobuf rpc: QueryMissionControl(routerrpc.QueryMissionControlRequest) returns (routerrpc.QueryMissionControlResponse); - */ - queryMissionControl(input, options) { - const method = this.methods[6], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * XImportMissionControl is an experimental API that imports the state provided - * to the internal mission control's state, using all results which are more - * recent than our existing values. These values will only be imported - * in-memory, and will not be persisted across restarts. - * - * @generated from protobuf rpc: XImportMissionControl(routerrpc.XImportMissionControlRequest) returns (routerrpc.XImportMissionControlResponse); - */ - xImportMissionControl(input, options) { - const method = this.methods[7], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * GetMissionControlConfig returns mission control's current config. - * - * @generated from protobuf rpc: GetMissionControlConfig(routerrpc.GetMissionControlConfigRequest) returns (routerrpc.GetMissionControlConfigResponse); - */ - getMissionControlConfig(input, options) { - const method = this.methods[8], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * SetMissionControlConfig will set mission control's config, if the config - * provided is valid. - * - * @generated from protobuf rpc: SetMissionControlConfig(routerrpc.SetMissionControlConfigRequest) returns (routerrpc.SetMissionControlConfigResponse); - */ - setMissionControlConfig(input, options) { - const method = this.methods[9], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * QueryProbability returns the current success probability estimate for a - * given node pair and amount. - * - * @generated from protobuf rpc: QueryProbability(routerrpc.QueryProbabilityRequest) returns (routerrpc.QueryProbabilityResponse); - */ - queryProbability(input, options) { - const method = this.methods[10], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * BuildRoute builds a fully specified route based on a list of hop public - * keys. It retrieves the relevant channel policies from the graph in order to - * calculate the correct fees and time locks. - * - * @generated from protobuf rpc: BuildRoute(routerrpc.BuildRouteRequest) returns (routerrpc.BuildRouteResponse); - */ - buildRoute(input, options) { - const method = this.methods[11], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * SubscribeHtlcEvents creates a uni-directional stream from the server to - * the client which delivers a stream of htlc events. - * - * @generated from protobuf rpc: SubscribeHtlcEvents(routerrpc.SubscribeHtlcEventsRequest) returns (stream routerrpc.HtlcEvent); - */ - subscribeHtlcEvents(input, options) { - const method = this.methods[12], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("serverStreaming", this._transport, method, opt, input); - } - /** - * - * Deprecated, use SendPaymentV2. SendPayment attempts to route a payment - * described by the passed PaymentRequest to the final destination. The call - * returns a stream of payment status updates. - * - * @deprecated - * @generated from protobuf rpc: SendPayment(routerrpc.SendPaymentRequest) returns (stream routerrpc.PaymentStatus); - */ - sendPayment(input, options) { - const method = this.methods[13], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("serverStreaming", this._transport, method, opt, input); - } - /** - * - * Deprecated, use TrackPaymentV2. TrackPayment returns an update stream for - * the payment identified by the payment hash. - * - * @deprecated - * @generated from protobuf rpc: TrackPayment(routerrpc.TrackPaymentRequest) returns (stream routerrpc.PaymentStatus); - */ - trackPayment(input, options) { - const method = this.methods[14], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("serverStreaming", this._transport, method, opt, input); - } - /** - * * - * HtlcInterceptor dispatches a bi-directional streaming RPC in which - * Forwarded HTLC requests are sent to the client and the client responds with - * a boolean that tells LND if this htlc should be intercepted. - * In case of interception, the htlc can be either settled, cancelled or - * resumed later by using the ResolveHoldForward endpoint. - * - * @generated from protobuf rpc: HtlcInterceptor(stream routerrpc.ForwardHtlcInterceptResponse) returns (stream routerrpc.ForwardHtlcInterceptRequest); - */ - htlcInterceptor(options) { - const method = this.methods[15], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("duplex", this._transport, method, opt); - } - /** - * - * UpdateChanStatus attempts to manually set the state of a channel - * (enabled, disabled, or auto). A manual "disable" request will cause the - * channel to stay disabled until a subsequent manual request of either - * "enable" or "auto". - * - * @generated from protobuf rpc: UpdateChanStatus(routerrpc.UpdateChanStatusRequest) returns (routerrpc.UpdateChanStatusResponse); - */ - updateChanStatus(input, options) { - const method = this.methods[16], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } -} -exports.RouterClient = RouterClient; -//# sourceMappingURL=router.client.js.map \ No newline at end of file diff --git a/build/proto/lnd/router.client.js.map b/build/proto/lnd/router.client.js.map deleted file mode 100644 index 45a69e25..00000000 --- a/build/proto/lnd/router.client.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"router.client.js","sourceRoot":"","sources":["../../../proto/lnd/router.client.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/proto/lnd/router.grpc-client.js b/build/proto/lnd/router.grpc-client.js deleted file mode 100644 index 6829a974..00000000 --- a/build/proto/lnd/router.grpc-client.js +++ /dev/null @@ -1,249 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.RouterClient = void 0; -// @generated by protobuf-ts 2.5.0 with parameter long_type_string,client_grpc1 -// @generated from protobuf file "router.proto" (package "routerrpc", syntax proto3) -// tslint:disable -const router_1 = require("./router"); -const grpc = __importStar(require("@grpc/grpc-js")); -/** - * Router is a service that offers advanced interaction with the router - * subsystem of the daemon. - * - * @generated from protobuf service routerrpc.Router - */ -class RouterClient extends grpc.Client { - constructor(address, credentials, options = {}, binaryOptions = {}) { - super(address, credentials, options); - this._binaryOptions = binaryOptions; - } - /** - * - * SendPaymentV2 attempts to route a payment described by the passed - * PaymentRequest to the final destination. The call returns a stream of - * payment updates. - * - * @generated from protobuf rpc: SendPaymentV2(routerrpc.SendPaymentRequest) returns (stream lnrpc.Payment); - */ - sendPaymentV2(input, metadata, options) { - const method = router_1.Router.methods[0]; - return this.makeServerStreamRequest(`/${router_1.Router.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options); - } - /** - * - * TrackPaymentV2 returns an update stream for the payment identified by the - * payment hash. - * - * @generated from protobuf rpc: TrackPaymentV2(routerrpc.TrackPaymentRequest) returns (stream lnrpc.Payment); - */ - trackPaymentV2(input, metadata, options) { - const method = router_1.Router.methods[1]; - return this.makeServerStreamRequest(`/${router_1.Router.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options); - } - /** - * - * EstimateRouteFee allows callers to obtain a lower bound w.r.t how much it - * may cost to send an HTLC to the target end destination. - * - * @generated from protobuf rpc: EstimateRouteFee(routerrpc.RouteFeeRequest) returns (routerrpc.RouteFeeResponse); - */ - estimateRouteFee(input, metadata, options, callback) { - const method = router_1.Router.methods[2]; - return this.makeUnaryRequest(`/${router_1.Router.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * Deprecated, use SendToRouteV2. SendToRoute attempts to make a payment via - * the specified route. This method differs from SendPayment in that it - * allows users to specify a full route manually. This can be used for - * things like rebalancing, and atomic swaps. It differs from the newer - * SendToRouteV2 in that it doesn't return the full HTLC information. - * - * @deprecated - * @generated from protobuf rpc: SendToRoute(routerrpc.SendToRouteRequest) returns (routerrpc.SendToRouteResponse); - */ - sendToRoute(input, metadata, options, callback) { - const method = router_1.Router.methods[3]; - return this.makeUnaryRequest(`/${router_1.Router.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * SendToRouteV2 attempts to make a payment via the specified route. This - * method differs from SendPayment in that it allows users to specify a full - * route manually. This can be used for things like rebalancing, and atomic - * swaps. - * - * @generated from protobuf rpc: SendToRouteV2(routerrpc.SendToRouteRequest) returns (lnrpc.HTLCAttempt); - */ - sendToRouteV2(input, metadata, options, callback) { - const method = router_1.Router.methods[4]; - return this.makeUnaryRequest(`/${router_1.Router.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * ResetMissionControl clears all mission control state and starts with a clean - * slate. - * - * @generated from protobuf rpc: ResetMissionControl(routerrpc.ResetMissionControlRequest) returns (routerrpc.ResetMissionControlResponse); - */ - resetMissionControl(input, metadata, options, callback) { - const method = router_1.Router.methods[5]; - return this.makeUnaryRequest(`/${router_1.Router.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * QueryMissionControl exposes the internal mission control state to callers. - * It is a development feature. - * - * @generated from protobuf rpc: QueryMissionControl(routerrpc.QueryMissionControlRequest) returns (routerrpc.QueryMissionControlResponse); - */ - queryMissionControl(input, metadata, options, callback) { - const method = router_1.Router.methods[6]; - return this.makeUnaryRequest(`/${router_1.Router.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * XImportMissionControl is an experimental API that imports the state provided - * to the internal mission control's state, using all results which are more - * recent than our existing values. These values will only be imported - * in-memory, and will not be persisted across restarts. - * - * @generated from protobuf rpc: XImportMissionControl(routerrpc.XImportMissionControlRequest) returns (routerrpc.XImportMissionControlResponse); - */ - xImportMissionControl(input, metadata, options, callback) { - const method = router_1.Router.methods[7]; - return this.makeUnaryRequest(`/${router_1.Router.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * GetMissionControlConfig returns mission control's current config. - * - * @generated from protobuf rpc: GetMissionControlConfig(routerrpc.GetMissionControlConfigRequest) returns (routerrpc.GetMissionControlConfigResponse); - */ - getMissionControlConfig(input, metadata, options, callback) { - const method = router_1.Router.methods[8]; - return this.makeUnaryRequest(`/${router_1.Router.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * SetMissionControlConfig will set mission control's config, if the config - * provided is valid. - * - * @generated from protobuf rpc: SetMissionControlConfig(routerrpc.SetMissionControlConfigRequest) returns (routerrpc.SetMissionControlConfigResponse); - */ - setMissionControlConfig(input, metadata, options, callback) { - const method = router_1.Router.methods[9]; - return this.makeUnaryRequest(`/${router_1.Router.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * QueryProbability returns the current success probability estimate for a - * given node pair and amount. - * - * @generated from protobuf rpc: QueryProbability(routerrpc.QueryProbabilityRequest) returns (routerrpc.QueryProbabilityResponse); - */ - queryProbability(input, metadata, options, callback) { - const method = router_1.Router.methods[10]; - return this.makeUnaryRequest(`/${router_1.Router.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * BuildRoute builds a fully specified route based on a list of hop public - * keys. It retrieves the relevant channel policies from the graph in order to - * calculate the correct fees and time locks. - * - * @generated from protobuf rpc: BuildRoute(routerrpc.BuildRouteRequest) returns (routerrpc.BuildRouteResponse); - */ - buildRoute(input, metadata, options, callback) { - const method = router_1.Router.methods[11]; - return this.makeUnaryRequest(`/${router_1.Router.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * SubscribeHtlcEvents creates a uni-directional stream from the server to - * the client which delivers a stream of htlc events. - * - * @generated from protobuf rpc: SubscribeHtlcEvents(routerrpc.SubscribeHtlcEventsRequest) returns (stream routerrpc.HtlcEvent); - */ - subscribeHtlcEvents(input, metadata, options) { - const method = router_1.Router.methods[12]; - return this.makeServerStreamRequest(`/${router_1.Router.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options); - } - /** - * - * Deprecated, use SendPaymentV2. SendPayment attempts to route a payment - * described by the passed PaymentRequest to the final destination. The call - * returns a stream of payment status updates. - * - * @deprecated - * @generated from protobuf rpc: SendPayment(routerrpc.SendPaymentRequest) returns (stream routerrpc.PaymentStatus); - */ - sendPayment(input, metadata, options) { - const method = router_1.Router.methods[13]; - return this.makeServerStreamRequest(`/${router_1.Router.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options); - } - /** - * - * Deprecated, use TrackPaymentV2. TrackPayment returns an update stream for - * the payment identified by the payment hash. - * - * @deprecated - * @generated from protobuf rpc: TrackPayment(routerrpc.TrackPaymentRequest) returns (stream routerrpc.PaymentStatus); - */ - trackPayment(input, metadata, options) { - const method = router_1.Router.methods[14]; - return this.makeServerStreamRequest(`/${router_1.Router.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options); - } - /** - * * - * HtlcInterceptor dispatches a bi-directional streaming RPC in which - * Forwarded HTLC requests are sent to the client and the client responds with - * a boolean that tells LND if this htlc should be intercepted. - * In case of interception, the htlc can be either settled, cancelled or - * resumed later by using the ResolveHoldForward endpoint. - * - * @generated from protobuf rpc: HtlcInterceptor(stream routerrpc.ForwardHtlcInterceptResponse) returns (stream routerrpc.ForwardHtlcInterceptRequest); - */ - htlcInterceptor(metadata, options) { - const method = router_1.Router.methods[15]; - return this.makeBidiStreamRequest(`/${router_1.Router.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), metadata, options); - } - /** - * - * UpdateChanStatus attempts to manually set the state of a channel - * (enabled, disabled, or auto). A manual "disable" request will cause the - * channel to stay disabled until a subsequent manual request of either - * "enable" or "auto". - * - * @generated from protobuf rpc: UpdateChanStatus(routerrpc.UpdateChanStatusRequest) returns (routerrpc.UpdateChanStatusResponse); - */ - updateChanStatus(input, metadata, options, callback) { - const method = router_1.Router.methods[16]; - return this.makeUnaryRequest(`/${router_1.Router.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } -} -exports.RouterClient = RouterClient; -//# sourceMappingURL=router.grpc-client.js.map \ No newline at end of file diff --git a/build/proto/lnd/router.grpc-client.js.map b/build/proto/lnd/router.grpc-client.js.map deleted file mode 100644 index 88d63d56..00000000 --- a/build/proto/lnd/router.grpc-client.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"router.grpc-client.js","sourceRoot":"","sources":["../../../proto/lnd/router.grpc-client.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/proto/lnd/router.js b/build/proto/lnd/router.js deleted file mode 100644 index 26319e57..00000000 --- a/build/proto/lnd/router.js +++ /dev/null @@ -1,2309 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Router = exports.UpdateChanStatusResponse = exports.UpdateChanStatusRequest = exports.ForwardHtlcInterceptResponse = exports.ForwardHtlcInterceptRequest = exports.CircuitKey = exports.PaymentStatus = exports.LinkFailEvent = exports.SettleEvent = exports.ForwardFailEvent = exports.ForwardEvent = exports.HtlcInfo = exports.HtlcEvent = exports.SubscribeHtlcEventsRequest = exports.BuildRouteResponse = exports.BuildRouteRequest = exports.QueryProbabilityResponse = exports.QueryProbabilityRequest = exports.MissionControlConfig = exports.SetMissionControlConfigResponse = exports.SetMissionControlConfigRequest = exports.GetMissionControlConfigResponse = exports.GetMissionControlConfigRequest = exports.PairData = exports.PairHistory = exports.XImportMissionControlResponse = exports.XImportMissionControlRequest = exports.QueryMissionControlResponse = exports.QueryMissionControlRequest = exports.ResetMissionControlResponse = exports.ResetMissionControlRequest = exports.SendToRouteResponse = exports.SendToRouteRequest = exports.RouteFeeResponse = exports.RouteFeeRequest = exports.TrackPaymentRequest = exports.SendPaymentRequest = exports.ChanStatusAction = exports.ResolveHoldForwardAction = exports.PaymentState = exports.FailureDetail = exports.HtlcEvent_EventType = void 0; -// @generated by protobuf-ts 2.5.0 with parameter long_type_string -// @generated from protobuf file "router.proto" (package "routerrpc", syntax proto3) -// tslint:disable -const rpc_1 = require("./rpc"); -const runtime_rpc_1 = require("@protobuf-ts/runtime-rpc"); -const runtime_1 = require("@protobuf-ts/runtime"); -const runtime_2 = require("@protobuf-ts/runtime"); -const runtime_3 = require("@protobuf-ts/runtime"); -const runtime_4 = require("@protobuf-ts/runtime"); -const runtime_5 = require("@protobuf-ts/runtime"); -const rpc_2 = require("./rpc"); -const rpc_3 = require("./rpc"); -const rpc_4 = require("./rpc"); -const rpc_5 = require("./rpc"); -const rpc_6 = require("./rpc"); -const rpc_7 = require("./rpc"); -const rpc_8 = require("./rpc"); -/** - * @generated from protobuf enum routerrpc.HtlcEvent.EventType - */ -var HtlcEvent_EventType; -(function (HtlcEvent_EventType) { - /** - * @generated from protobuf enum value: UNKNOWN = 0; - */ - HtlcEvent_EventType[HtlcEvent_EventType["UNKNOWN"] = 0] = "UNKNOWN"; - /** - * @generated from protobuf enum value: SEND = 1; - */ - HtlcEvent_EventType[HtlcEvent_EventType["SEND"] = 1] = "SEND"; - /** - * @generated from protobuf enum value: RECEIVE = 2; - */ - HtlcEvent_EventType[HtlcEvent_EventType["RECEIVE"] = 2] = "RECEIVE"; - /** - * @generated from protobuf enum value: FORWARD = 3; - */ - HtlcEvent_EventType[HtlcEvent_EventType["FORWARD"] = 3] = "FORWARD"; -})(HtlcEvent_EventType = exports.HtlcEvent_EventType || (exports.HtlcEvent_EventType = {})); -/** - * @generated from protobuf enum routerrpc.FailureDetail - */ -var FailureDetail; -(function (FailureDetail) { - /** - * @generated from protobuf enum value: UNKNOWN = 0; - */ - FailureDetail[FailureDetail["UNKNOWN"] = 0] = "UNKNOWN"; - /** - * @generated from protobuf enum value: NO_DETAIL = 1; - */ - FailureDetail[FailureDetail["NO_DETAIL"] = 1] = "NO_DETAIL"; - /** - * @generated from protobuf enum value: ONION_DECODE = 2; - */ - FailureDetail[FailureDetail["ONION_DECODE"] = 2] = "ONION_DECODE"; - /** - * @generated from protobuf enum value: LINK_NOT_ELIGIBLE = 3; - */ - FailureDetail[FailureDetail["LINK_NOT_ELIGIBLE"] = 3] = "LINK_NOT_ELIGIBLE"; - /** - * @generated from protobuf enum value: ON_CHAIN_TIMEOUT = 4; - */ - FailureDetail[FailureDetail["ON_CHAIN_TIMEOUT"] = 4] = "ON_CHAIN_TIMEOUT"; - /** - * @generated from protobuf enum value: HTLC_EXCEEDS_MAX = 5; - */ - FailureDetail[FailureDetail["HTLC_EXCEEDS_MAX"] = 5] = "HTLC_EXCEEDS_MAX"; - /** - * @generated from protobuf enum value: INSUFFICIENT_BALANCE = 6; - */ - FailureDetail[FailureDetail["INSUFFICIENT_BALANCE"] = 6] = "INSUFFICIENT_BALANCE"; - /** - * @generated from protobuf enum value: INCOMPLETE_FORWARD = 7; - */ - FailureDetail[FailureDetail["INCOMPLETE_FORWARD"] = 7] = "INCOMPLETE_FORWARD"; - /** - * @generated from protobuf enum value: HTLC_ADD_FAILED = 8; - */ - FailureDetail[FailureDetail["HTLC_ADD_FAILED"] = 8] = "HTLC_ADD_FAILED"; - /** - * @generated from protobuf enum value: FORWARDS_DISABLED = 9; - */ - FailureDetail[FailureDetail["FORWARDS_DISABLED"] = 9] = "FORWARDS_DISABLED"; - /** - * @generated from protobuf enum value: INVOICE_CANCELED = 10; - */ - FailureDetail[FailureDetail["INVOICE_CANCELED"] = 10] = "INVOICE_CANCELED"; - /** - * @generated from protobuf enum value: INVOICE_UNDERPAID = 11; - */ - FailureDetail[FailureDetail["INVOICE_UNDERPAID"] = 11] = "INVOICE_UNDERPAID"; - /** - * @generated from protobuf enum value: INVOICE_EXPIRY_TOO_SOON = 12; - */ - FailureDetail[FailureDetail["INVOICE_EXPIRY_TOO_SOON"] = 12] = "INVOICE_EXPIRY_TOO_SOON"; - /** - * @generated from protobuf enum value: INVOICE_NOT_OPEN = 13; - */ - FailureDetail[FailureDetail["INVOICE_NOT_OPEN"] = 13] = "INVOICE_NOT_OPEN"; - /** - * @generated from protobuf enum value: MPP_INVOICE_TIMEOUT = 14; - */ - FailureDetail[FailureDetail["MPP_INVOICE_TIMEOUT"] = 14] = "MPP_INVOICE_TIMEOUT"; - /** - * @generated from protobuf enum value: ADDRESS_MISMATCH = 15; - */ - FailureDetail[FailureDetail["ADDRESS_MISMATCH"] = 15] = "ADDRESS_MISMATCH"; - /** - * @generated from protobuf enum value: SET_TOTAL_MISMATCH = 16; - */ - FailureDetail[FailureDetail["SET_TOTAL_MISMATCH"] = 16] = "SET_TOTAL_MISMATCH"; - /** - * @generated from protobuf enum value: SET_TOTAL_TOO_LOW = 17; - */ - FailureDetail[FailureDetail["SET_TOTAL_TOO_LOW"] = 17] = "SET_TOTAL_TOO_LOW"; - /** - * @generated from protobuf enum value: SET_OVERPAID = 18; - */ - FailureDetail[FailureDetail["SET_OVERPAID"] = 18] = "SET_OVERPAID"; - /** - * @generated from protobuf enum value: UNKNOWN_INVOICE = 19; - */ - FailureDetail[FailureDetail["UNKNOWN_INVOICE"] = 19] = "UNKNOWN_INVOICE"; - /** - * @generated from protobuf enum value: INVALID_KEYSEND = 20; - */ - FailureDetail[FailureDetail["INVALID_KEYSEND"] = 20] = "INVALID_KEYSEND"; - /** - * @generated from protobuf enum value: MPP_IN_PROGRESS = 21; - */ - FailureDetail[FailureDetail["MPP_IN_PROGRESS"] = 21] = "MPP_IN_PROGRESS"; - /** - * @generated from protobuf enum value: CIRCULAR_ROUTE = 22; - */ - FailureDetail[FailureDetail["CIRCULAR_ROUTE"] = 22] = "CIRCULAR_ROUTE"; -})(FailureDetail = exports.FailureDetail || (exports.FailureDetail = {})); -/** - * @generated from protobuf enum routerrpc.PaymentState - */ -var PaymentState; -(function (PaymentState) { - /** - * - * Payment is still in flight. - * - * @generated from protobuf enum value: IN_FLIGHT = 0; - */ - PaymentState[PaymentState["IN_FLIGHT"] = 0] = "IN_FLIGHT"; - /** - * - * Payment completed successfully. - * - * @generated from protobuf enum value: SUCCEEDED = 1; - */ - PaymentState[PaymentState["SUCCEEDED"] = 1] = "SUCCEEDED"; - /** - * - * There are more routes to try, but the payment timeout was exceeded. - * - * @generated from protobuf enum value: FAILED_TIMEOUT = 2; - */ - PaymentState[PaymentState["FAILED_TIMEOUT"] = 2] = "FAILED_TIMEOUT"; - /** - * - * All possible routes were tried and failed permanently. Or were no - * routes to the destination at all. - * - * @generated from protobuf enum value: FAILED_NO_ROUTE = 3; - */ - PaymentState[PaymentState["FAILED_NO_ROUTE"] = 3] = "FAILED_NO_ROUTE"; - /** - * - * A non-recoverable error has occured. - * - * @generated from protobuf enum value: FAILED_ERROR = 4; - */ - PaymentState[PaymentState["FAILED_ERROR"] = 4] = "FAILED_ERROR"; - /** - * - * Payment details incorrect (unknown hash, invalid amt or - * invalid final cltv delta) - * - * @generated from protobuf enum value: FAILED_INCORRECT_PAYMENT_DETAILS = 5; - */ - PaymentState[PaymentState["FAILED_INCORRECT_PAYMENT_DETAILS"] = 5] = "FAILED_INCORRECT_PAYMENT_DETAILS"; - /** - * - * Insufficient local balance. - * - * @generated from protobuf enum value: FAILED_INSUFFICIENT_BALANCE = 6; - */ - PaymentState[PaymentState["FAILED_INSUFFICIENT_BALANCE"] = 6] = "FAILED_INSUFFICIENT_BALANCE"; -})(PaymentState = exports.PaymentState || (exports.PaymentState = {})); -/** - * @generated from protobuf enum routerrpc.ResolveHoldForwardAction - */ -var ResolveHoldForwardAction; -(function (ResolveHoldForwardAction) { - /** - * @generated from protobuf enum value: SETTLE = 0; - */ - ResolveHoldForwardAction[ResolveHoldForwardAction["SETTLE"] = 0] = "SETTLE"; - /** - * @generated from protobuf enum value: FAIL = 1; - */ - ResolveHoldForwardAction[ResolveHoldForwardAction["FAIL"] = 1] = "FAIL"; - /** - * @generated from protobuf enum value: RESUME = 2; - */ - ResolveHoldForwardAction[ResolveHoldForwardAction["RESUME"] = 2] = "RESUME"; -})(ResolveHoldForwardAction = exports.ResolveHoldForwardAction || (exports.ResolveHoldForwardAction = {})); -/** - * @generated from protobuf enum routerrpc.ChanStatusAction - */ -var ChanStatusAction; -(function (ChanStatusAction) { - /** - * @generated from protobuf enum value: ENABLE = 0; - */ - ChanStatusAction[ChanStatusAction["ENABLE"] = 0] = "ENABLE"; - /** - * @generated from protobuf enum value: DISABLE = 1; - */ - ChanStatusAction[ChanStatusAction["DISABLE"] = 1] = "DISABLE"; - /** - * @generated from protobuf enum value: AUTO = 2; - */ - ChanStatusAction[ChanStatusAction["AUTO"] = 2] = "AUTO"; -})(ChanStatusAction = exports.ChanStatusAction || (exports.ChanStatusAction = {})); -// @generated message type with reflection information, may provide speed optimized methods -class SendPaymentRequest$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.SendPaymentRequest", [ - { no: 1, name: "dest", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "amt", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 12, name: "amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 3, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 4, name: "final_cltv_delta", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 20, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 5, name: "payment_request", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 6, name: "timeout_seconds", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 7, name: "fee_limit_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 13, name: "fee_limit_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 8, name: "outgoing_chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 19, name: "outgoing_chan_ids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 4 /*ScalarType.UINT64*/ }, - { no: 14, name: "last_hop_pubkey", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 9, name: "cltv_limit", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 10, name: "route_hints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => rpc_8.RouteHint }, - { no: 11, name: "dest_custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } }, - { no: 15, name: "allow_self_payment", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 16, name: "dest_features", kind: "enum", repeat: 1 /*RepeatType.PACKED*/, T: () => ["lnrpc.FeatureBit", rpc_7.FeatureBit] }, - { no: 17, name: "max_parts", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 18, name: "no_inflight_updates", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 21, name: "max_shard_size_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 22, name: "amp", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { dest: new Uint8Array(0), amt: "0", amtMsat: "0", paymentHash: new Uint8Array(0), finalCltvDelta: 0, paymentAddr: new Uint8Array(0), paymentRequest: "", timeoutSeconds: 0, feeLimitSat: "0", feeLimitMsat: "0", outgoingChanId: "0", outgoingChanIds: [], lastHopPubkey: new Uint8Array(0), cltvLimit: 0, routeHints: [], destCustomRecords: {}, allowSelfPayment: false, destFeatures: [], maxParts: 0, noInflightUpdates: false, maxShardSizeMsat: "0", amp: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes dest */ 1: - message.dest = reader.bytes(); - break; - case /* int64 amt */ 2: - message.amt = reader.int64().toString(); - break; - case /* int64 amt_msat */ 12: - message.amtMsat = reader.int64().toString(); - break; - case /* bytes payment_hash */ 3: - message.paymentHash = reader.bytes(); - break; - case /* int32 final_cltv_delta */ 4: - message.finalCltvDelta = reader.int32(); - break; - case /* bytes payment_addr */ 20: - message.paymentAddr = reader.bytes(); - break; - case /* string payment_request */ 5: - message.paymentRequest = reader.string(); - break; - case /* int32 timeout_seconds */ 6: - message.timeoutSeconds = reader.int32(); - break; - case /* int64 fee_limit_sat */ 7: - message.feeLimitSat = reader.int64().toString(); - break; - case /* int64 fee_limit_msat */ 13: - message.feeLimitMsat = reader.int64().toString(); - break; - case /* uint64 outgoing_chan_id = 8 [deprecated = true, jstype = JS_STRING];*/ 8: - message.outgoingChanId = reader.uint64().toString(); - break; - case /* repeated uint64 outgoing_chan_ids */ 19: - if (wireType === runtime_2.WireType.LengthDelimited) - for (let e = reader.int32() + reader.pos; reader.pos < e;) - message.outgoingChanIds.push(reader.uint64().toString()); - else - message.outgoingChanIds.push(reader.uint64().toString()); - break; - case /* bytes last_hop_pubkey */ 14: - message.lastHopPubkey = reader.bytes(); - break; - case /* int32 cltv_limit */ 9: - message.cltvLimit = reader.int32(); - break; - case /* repeated lnrpc.RouteHint route_hints */ 10: - message.routeHints.push(rpc_8.RouteHint.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* map dest_custom_records */ 11: - this.binaryReadMap11(message.destCustomRecords, reader, options); - break; - case /* bool allow_self_payment */ 15: - message.allowSelfPayment = reader.bool(); - break; - case /* repeated lnrpc.FeatureBit dest_features */ 16: - if (wireType === runtime_2.WireType.LengthDelimited) - for (let e = reader.int32() + reader.pos; reader.pos < e;) - message.destFeatures.push(reader.int32()); - else - message.destFeatures.push(reader.int32()); - break; - case /* uint32 max_parts */ 17: - message.maxParts = reader.uint32(); - break; - case /* bool no_inflight_updates */ 18: - message.noInflightUpdates = reader.bool(); - break; - case /* uint64 max_shard_size_msat */ 21: - message.maxShardSizeMsat = reader.uint64().toString(); - break; - case /* bool amp */ 22: - message.amp = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - binaryReadMap11(map, reader, options) { - let len = reader.uint32(), end = reader.pos + len, key, val; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint64().toString(); - break; - case 2: - val = reader.bytes(); - break; - default: throw new globalThis.Error("unknown map entry field for field routerrpc.SendPaymentRequest.dest_custom_records"); - } - } - map[key !== null && key !== void 0 ? key : "0"] = val !== null && val !== void 0 ? val : new Uint8Array(0); - } - internalBinaryWrite(message, writer, options) { - /* bytes dest = 1; */ - if (message.dest.length) - writer.tag(1, runtime_2.WireType.LengthDelimited).bytes(message.dest); - /* int64 amt = 2; */ - if (message.amt !== "0") - writer.tag(2, runtime_2.WireType.Varint).int64(message.amt); - /* int64 amt_msat = 12; */ - if (message.amtMsat !== "0") - writer.tag(12, runtime_2.WireType.Varint).int64(message.amtMsat); - /* bytes payment_hash = 3; */ - if (message.paymentHash.length) - writer.tag(3, runtime_2.WireType.LengthDelimited).bytes(message.paymentHash); - /* int32 final_cltv_delta = 4; */ - if (message.finalCltvDelta !== 0) - writer.tag(4, runtime_2.WireType.Varint).int32(message.finalCltvDelta); - /* bytes payment_addr = 20; */ - if (message.paymentAddr.length) - writer.tag(20, runtime_2.WireType.LengthDelimited).bytes(message.paymentAddr); - /* string payment_request = 5; */ - if (message.paymentRequest !== "") - writer.tag(5, runtime_2.WireType.LengthDelimited).string(message.paymentRequest); - /* int32 timeout_seconds = 6; */ - if (message.timeoutSeconds !== 0) - writer.tag(6, runtime_2.WireType.Varint).int32(message.timeoutSeconds); - /* int64 fee_limit_sat = 7; */ - if (message.feeLimitSat !== "0") - writer.tag(7, runtime_2.WireType.Varint).int64(message.feeLimitSat); - /* int64 fee_limit_msat = 13; */ - if (message.feeLimitMsat !== "0") - writer.tag(13, runtime_2.WireType.Varint).int64(message.feeLimitMsat); - /* uint64 outgoing_chan_id = 8 [deprecated = true, jstype = JS_STRING]; */ - if (message.outgoingChanId !== "0") - writer.tag(8, runtime_2.WireType.Varint).uint64(message.outgoingChanId); - /* repeated uint64 outgoing_chan_ids = 19; */ - if (message.outgoingChanIds.length) { - writer.tag(19, runtime_2.WireType.LengthDelimited).fork(); - for (let i = 0; i < message.outgoingChanIds.length; i++) - writer.uint64(message.outgoingChanIds[i]); - writer.join(); - } - /* bytes last_hop_pubkey = 14; */ - if (message.lastHopPubkey.length) - writer.tag(14, runtime_2.WireType.LengthDelimited).bytes(message.lastHopPubkey); - /* int32 cltv_limit = 9; */ - if (message.cltvLimit !== 0) - writer.tag(9, runtime_2.WireType.Varint).int32(message.cltvLimit); - /* repeated lnrpc.RouteHint route_hints = 10; */ - for (let i = 0; i < message.routeHints.length; i++) - rpc_8.RouteHint.internalBinaryWrite(message.routeHints[i], writer.tag(10, runtime_2.WireType.LengthDelimited).fork(), options).join(); - /* map dest_custom_records = 11; */ - for (let k of Object.keys(message.destCustomRecords)) - writer.tag(11, runtime_2.WireType.LengthDelimited).fork().tag(1, runtime_2.WireType.Varint).uint64(k).tag(2, runtime_2.WireType.LengthDelimited).bytes(message.destCustomRecords[k]).join(); - /* bool allow_self_payment = 15; */ - if (message.allowSelfPayment !== false) - writer.tag(15, runtime_2.WireType.Varint).bool(message.allowSelfPayment); - /* repeated lnrpc.FeatureBit dest_features = 16; */ - if (message.destFeatures.length) { - writer.tag(16, runtime_2.WireType.LengthDelimited).fork(); - for (let i = 0; i < message.destFeatures.length; i++) - writer.int32(message.destFeatures[i]); - writer.join(); - } - /* uint32 max_parts = 17; */ - if (message.maxParts !== 0) - writer.tag(17, runtime_2.WireType.Varint).uint32(message.maxParts); - /* bool no_inflight_updates = 18; */ - if (message.noInflightUpdates !== false) - writer.tag(18, runtime_2.WireType.Varint).bool(message.noInflightUpdates); - /* uint64 max_shard_size_msat = 21; */ - if (message.maxShardSizeMsat !== "0") - writer.tag(21, runtime_2.WireType.Varint).uint64(message.maxShardSizeMsat); - /* bool amp = 22; */ - if (message.amp !== false) - writer.tag(22, runtime_2.WireType.Varint).bool(message.amp); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.SendPaymentRequest - */ -exports.SendPaymentRequest = new SendPaymentRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class TrackPaymentRequest$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.TrackPaymentRequest", [ - { no: 1, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "no_inflight_updates", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { paymentHash: new Uint8Array(0), noInflightUpdates: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes payment_hash */ 1: - message.paymentHash = reader.bytes(); - break; - case /* bool no_inflight_updates */ 2: - message.noInflightUpdates = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes payment_hash = 1; */ - if (message.paymentHash.length) - writer.tag(1, runtime_2.WireType.LengthDelimited).bytes(message.paymentHash); - /* bool no_inflight_updates = 2; */ - if (message.noInflightUpdates !== false) - writer.tag(2, runtime_2.WireType.Varint).bool(message.noInflightUpdates); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.TrackPaymentRequest - */ -exports.TrackPaymentRequest = new TrackPaymentRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class RouteFeeRequest$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.RouteFeeRequest", [ - { no: 1, name: "dest", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "amt_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/ } - ]); - } - create(value) { - const message = { dest: new Uint8Array(0), amtSat: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes dest */ 1: - message.dest = reader.bytes(); - break; - case /* int64 amt_sat */ 2: - message.amtSat = reader.int64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes dest = 1; */ - if (message.dest.length) - writer.tag(1, runtime_2.WireType.LengthDelimited).bytes(message.dest); - /* int64 amt_sat = 2; */ - if (message.amtSat !== "0") - writer.tag(2, runtime_2.WireType.Varint).int64(message.amtSat); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.RouteFeeRequest - */ -exports.RouteFeeRequest = new RouteFeeRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class RouteFeeResponse$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.RouteFeeResponse", [ - { no: 1, name: "routing_fee_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 2, name: "time_lock_delay", kind: "scalar", T: 3 /*ScalarType.INT64*/ } - ]); - } - create(value) { - const message = { routingFeeMsat: "0", timeLockDelay: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 routing_fee_msat */ 1: - message.routingFeeMsat = reader.int64().toString(); - break; - case /* int64 time_lock_delay */ 2: - message.timeLockDelay = reader.int64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* int64 routing_fee_msat = 1; */ - if (message.routingFeeMsat !== "0") - writer.tag(1, runtime_2.WireType.Varint).int64(message.routingFeeMsat); - /* int64 time_lock_delay = 2; */ - if (message.timeLockDelay !== "0") - writer.tag(2, runtime_2.WireType.Varint).int64(message.timeLockDelay); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.RouteFeeResponse - */ -exports.RouteFeeResponse = new RouteFeeResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendToRouteRequest$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.SendToRouteRequest", [ - { no: 1, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "route", kind: "message", T: () => rpc_6.Route } - ]); - } - create(value) { - const message = { paymentHash: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes payment_hash */ 1: - message.paymentHash = reader.bytes(); - break; - case /* lnrpc.Route route */ 2: - message.route = rpc_6.Route.internalBinaryRead(reader, reader.uint32(), options, message.route); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes payment_hash = 1; */ - if (message.paymentHash.length) - writer.tag(1, runtime_2.WireType.LengthDelimited).bytes(message.paymentHash); - /* lnrpc.Route route = 2; */ - if (message.route) - rpc_6.Route.internalBinaryWrite(message.route, writer.tag(2, runtime_2.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.SendToRouteRequest - */ -exports.SendToRouteRequest = new SendToRouteRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendToRouteResponse$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.SendToRouteResponse", [ - { no: 1, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "failure", kind: "message", T: () => rpc_5.Failure } - ]); - } - create(value) { - const message = { preimage: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes preimage */ 1: - message.preimage = reader.bytes(); - break; - case /* lnrpc.Failure failure */ 2: - message.failure = rpc_5.Failure.internalBinaryRead(reader, reader.uint32(), options, message.failure); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes preimage = 1; */ - if (message.preimage.length) - writer.tag(1, runtime_2.WireType.LengthDelimited).bytes(message.preimage); - /* lnrpc.Failure failure = 2; */ - if (message.failure) - rpc_5.Failure.internalBinaryWrite(message.failure, writer.tag(2, runtime_2.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.SendToRouteResponse - */ -exports.SendToRouteResponse = new SendToRouteResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ResetMissionControlRequest$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.ResetMissionControlRequest", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.ResetMissionControlRequest - */ -exports.ResetMissionControlRequest = new ResetMissionControlRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ResetMissionControlResponse$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.ResetMissionControlResponse", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.ResetMissionControlResponse - */ -exports.ResetMissionControlResponse = new ResetMissionControlResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class QueryMissionControlRequest$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.QueryMissionControlRequest", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.QueryMissionControlRequest - */ -exports.QueryMissionControlRequest = new QueryMissionControlRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class QueryMissionControlResponse$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.QueryMissionControlResponse", [ - { no: 2, name: "pairs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.PairHistory } - ]); - } - create(value) { - const message = { pairs: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated routerrpc.PairHistory pairs */ 2: - message.pairs.push(exports.PairHistory.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated routerrpc.PairHistory pairs = 2; */ - for (let i = 0; i < message.pairs.length; i++) - exports.PairHistory.internalBinaryWrite(message.pairs[i], writer.tag(2, runtime_2.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.QueryMissionControlResponse - */ -exports.QueryMissionControlResponse = new QueryMissionControlResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class XImportMissionControlRequest$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.XImportMissionControlRequest", [ - { no: 1, name: "pairs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.PairHistory } - ]); - } - create(value) { - const message = { pairs: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated routerrpc.PairHistory pairs */ 1: - message.pairs.push(exports.PairHistory.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated routerrpc.PairHistory pairs = 1; */ - for (let i = 0; i < message.pairs.length; i++) - exports.PairHistory.internalBinaryWrite(message.pairs[i], writer.tag(1, runtime_2.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.XImportMissionControlRequest - */ -exports.XImportMissionControlRequest = new XImportMissionControlRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class XImportMissionControlResponse$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.XImportMissionControlResponse", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.XImportMissionControlResponse - */ -exports.XImportMissionControlResponse = new XImportMissionControlResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PairHistory$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.PairHistory", [ - { no: 1, name: "node_from", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "node_to", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 7, name: "history", kind: "message", T: () => exports.PairData } - ]); - } - create(value) { - const message = { nodeFrom: new Uint8Array(0), nodeTo: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes node_from */ 1: - message.nodeFrom = reader.bytes(); - break; - case /* bytes node_to */ 2: - message.nodeTo = reader.bytes(); - break; - case /* routerrpc.PairData history */ 7: - message.history = exports.PairData.internalBinaryRead(reader, reader.uint32(), options, message.history); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes node_from = 1; */ - if (message.nodeFrom.length) - writer.tag(1, runtime_2.WireType.LengthDelimited).bytes(message.nodeFrom); - /* bytes node_to = 2; */ - if (message.nodeTo.length) - writer.tag(2, runtime_2.WireType.LengthDelimited).bytes(message.nodeTo); - /* routerrpc.PairData history = 7; */ - if (message.history) - exports.PairData.internalBinaryWrite(message.history, writer.tag(7, runtime_2.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.PairHistory - */ -exports.PairHistory = new PairHistory$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PairData$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.PairData", [ - { no: 1, name: "fail_time", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 2, name: "fail_amt_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 4, name: "fail_amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 5, name: "success_time", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 6, name: "success_amt_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 7, name: "success_amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ } - ]); - } - create(value) { - const message = { failTime: "0", failAmtSat: "0", failAmtMsat: "0", successTime: "0", successAmtSat: "0", successAmtMsat: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 fail_time */ 1: - message.failTime = reader.int64().toString(); - break; - case /* int64 fail_amt_sat */ 2: - message.failAmtSat = reader.int64().toString(); - break; - case /* int64 fail_amt_msat */ 4: - message.failAmtMsat = reader.int64().toString(); - break; - case /* int64 success_time */ 5: - message.successTime = reader.int64().toString(); - break; - case /* int64 success_amt_sat */ 6: - message.successAmtSat = reader.int64().toString(); - break; - case /* int64 success_amt_msat */ 7: - message.successAmtMsat = reader.int64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* int64 fail_time = 1; */ - if (message.failTime !== "0") - writer.tag(1, runtime_2.WireType.Varint).int64(message.failTime); - /* int64 fail_amt_sat = 2; */ - if (message.failAmtSat !== "0") - writer.tag(2, runtime_2.WireType.Varint).int64(message.failAmtSat); - /* int64 fail_amt_msat = 4; */ - if (message.failAmtMsat !== "0") - writer.tag(4, runtime_2.WireType.Varint).int64(message.failAmtMsat); - /* int64 success_time = 5; */ - if (message.successTime !== "0") - writer.tag(5, runtime_2.WireType.Varint).int64(message.successTime); - /* int64 success_amt_sat = 6; */ - if (message.successAmtSat !== "0") - writer.tag(6, runtime_2.WireType.Varint).int64(message.successAmtSat); - /* int64 success_amt_msat = 7; */ - if (message.successAmtMsat !== "0") - writer.tag(7, runtime_2.WireType.Varint).int64(message.successAmtMsat); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.PairData - */ -exports.PairData = new PairData$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class GetMissionControlConfigRequest$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.GetMissionControlConfigRequest", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.GetMissionControlConfigRequest - */ -exports.GetMissionControlConfigRequest = new GetMissionControlConfigRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class GetMissionControlConfigResponse$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.GetMissionControlConfigResponse", [ - { no: 1, name: "config", kind: "message", T: () => exports.MissionControlConfig } - ]); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* routerrpc.MissionControlConfig config */ 1: - message.config = exports.MissionControlConfig.internalBinaryRead(reader, reader.uint32(), options, message.config); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* routerrpc.MissionControlConfig config = 1; */ - if (message.config) - exports.MissionControlConfig.internalBinaryWrite(message.config, writer.tag(1, runtime_2.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.GetMissionControlConfigResponse - */ -exports.GetMissionControlConfigResponse = new GetMissionControlConfigResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SetMissionControlConfigRequest$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.SetMissionControlConfigRequest", [ - { no: 1, name: "config", kind: "message", T: () => exports.MissionControlConfig } - ]); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* routerrpc.MissionControlConfig config */ 1: - message.config = exports.MissionControlConfig.internalBinaryRead(reader, reader.uint32(), options, message.config); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* routerrpc.MissionControlConfig config = 1; */ - if (message.config) - exports.MissionControlConfig.internalBinaryWrite(message.config, writer.tag(1, runtime_2.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.SetMissionControlConfigRequest - */ -exports.SetMissionControlConfigRequest = new SetMissionControlConfigRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SetMissionControlConfigResponse$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.SetMissionControlConfigResponse", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.SetMissionControlConfigResponse - */ -exports.SetMissionControlConfigResponse = new SetMissionControlConfigResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class MissionControlConfig$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.MissionControlConfig", [ - { no: 1, name: "half_life_seconds", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "hop_probability", kind: "scalar", T: 2 /*ScalarType.FLOAT*/ }, - { no: 3, name: "weight", kind: "scalar", T: 2 /*ScalarType.FLOAT*/ }, - { no: 4, name: "maximum_payment_results", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "minimum_failure_relax_interval", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { halfLifeSeconds: "0", hopProbability: 0, weight: 0, maximumPaymentResults: 0, minimumFailureRelaxInterval: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 half_life_seconds */ 1: - message.halfLifeSeconds = reader.uint64().toString(); - break; - case /* float hop_probability */ 2: - message.hopProbability = reader.float(); - break; - case /* float weight */ 3: - message.weight = reader.float(); - break; - case /* uint32 maximum_payment_results */ 4: - message.maximumPaymentResults = reader.uint32(); - break; - case /* uint64 minimum_failure_relax_interval */ 5: - message.minimumFailureRelaxInterval = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint64 half_life_seconds = 1; */ - if (message.halfLifeSeconds !== "0") - writer.tag(1, runtime_2.WireType.Varint).uint64(message.halfLifeSeconds); - /* float hop_probability = 2; */ - if (message.hopProbability !== 0) - writer.tag(2, runtime_2.WireType.Bit32).float(message.hopProbability); - /* float weight = 3; */ - if (message.weight !== 0) - writer.tag(3, runtime_2.WireType.Bit32).float(message.weight); - /* uint32 maximum_payment_results = 4; */ - if (message.maximumPaymentResults !== 0) - writer.tag(4, runtime_2.WireType.Varint).uint32(message.maximumPaymentResults); - /* uint64 minimum_failure_relax_interval = 5; */ - if (message.minimumFailureRelaxInterval !== "0") - writer.tag(5, runtime_2.WireType.Varint).uint64(message.minimumFailureRelaxInterval); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.MissionControlConfig - */ -exports.MissionControlConfig = new MissionControlConfig$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class QueryProbabilityRequest$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.QueryProbabilityRequest", [ - { no: 1, name: "from_node", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "to_node", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ } - ]); - } - create(value) { - const message = { fromNode: new Uint8Array(0), toNode: new Uint8Array(0), amtMsat: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes from_node */ 1: - message.fromNode = reader.bytes(); - break; - case /* bytes to_node */ 2: - message.toNode = reader.bytes(); - break; - case /* int64 amt_msat */ 3: - message.amtMsat = reader.int64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes from_node = 1; */ - if (message.fromNode.length) - writer.tag(1, runtime_2.WireType.LengthDelimited).bytes(message.fromNode); - /* bytes to_node = 2; */ - if (message.toNode.length) - writer.tag(2, runtime_2.WireType.LengthDelimited).bytes(message.toNode); - /* int64 amt_msat = 3; */ - if (message.amtMsat !== "0") - writer.tag(3, runtime_2.WireType.Varint).int64(message.amtMsat); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.QueryProbabilityRequest - */ -exports.QueryProbabilityRequest = new QueryProbabilityRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class QueryProbabilityResponse$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.QueryProbabilityResponse", [ - { no: 1, name: "probability", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ }, - { no: 2, name: "history", kind: "message", T: () => exports.PairData } - ]); - } - create(value) { - const message = { probability: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* double probability */ 1: - message.probability = reader.double(); - break; - case /* routerrpc.PairData history */ 2: - message.history = exports.PairData.internalBinaryRead(reader, reader.uint32(), options, message.history); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* double probability = 1; */ - if (message.probability !== 0) - writer.tag(1, runtime_2.WireType.Bit64).double(message.probability); - /* routerrpc.PairData history = 2; */ - if (message.history) - exports.PairData.internalBinaryWrite(message.history, writer.tag(2, runtime_2.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.QueryProbabilityResponse - */ -exports.QueryProbabilityResponse = new QueryProbabilityResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class BuildRouteRequest$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.BuildRouteRequest", [ - { no: 1, name: "amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 2, name: "final_cltv_delta", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 3, name: "outgoing_chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 4, name: "hop_pubkeys", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 12 /*ScalarType.BYTES*/ }, - { no: 5, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { amtMsat: "0", finalCltvDelta: 0, outgoingChanId: "0", hopPubkeys: [], paymentAddr: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 amt_msat */ 1: - message.amtMsat = reader.int64().toString(); - break; - case /* int32 final_cltv_delta */ 2: - message.finalCltvDelta = reader.int32(); - break; - case /* uint64 outgoing_chan_id = 3 [jstype = JS_STRING];*/ 3: - message.outgoingChanId = reader.uint64().toString(); - break; - case /* repeated bytes hop_pubkeys */ 4: - message.hopPubkeys.push(reader.bytes()); - break; - case /* bytes payment_addr */ 5: - message.paymentAddr = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* int64 amt_msat = 1; */ - if (message.amtMsat !== "0") - writer.tag(1, runtime_2.WireType.Varint).int64(message.amtMsat); - /* int32 final_cltv_delta = 2; */ - if (message.finalCltvDelta !== 0) - writer.tag(2, runtime_2.WireType.Varint).int32(message.finalCltvDelta); - /* uint64 outgoing_chan_id = 3 [jstype = JS_STRING]; */ - if (message.outgoingChanId !== "0") - writer.tag(3, runtime_2.WireType.Varint).uint64(message.outgoingChanId); - /* repeated bytes hop_pubkeys = 4; */ - for (let i = 0; i < message.hopPubkeys.length; i++) - writer.tag(4, runtime_2.WireType.LengthDelimited).bytes(message.hopPubkeys[i]); - /* bytes payment_addr = 5; */ - if (message.paymentAddr.length) - writer.tag(5, runtime_2.WireType.LengthDelimited).bytes(message.paymentAddr); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.BuildRouteRequest - */ -exports.BuildRouteRequest = new BuildRouteRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class BuildRouteResponse$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.BuildRouteResponse", [ - { no: 1, name: "route", kind: "message", T: () => rpc_6.Route } - ]); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.Route route */ 1: - message.route = rpc_6.Route.internalBinaryRead(reader, reader.uint32(), options, message.route); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.Route route = 1; */ - if (message.route) - rpc_6.Route.internalBinaryWrite(message.route, writer.tag(1, runtime_2.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.BuildRouteResponse - */ -exports.BuildRouteResponse = new BuildRouteResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SubscribeHtlcEventsRequest$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.SubscribeHtlcEventsRequest", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.SubscribeHtlcEventsRequest - */ -exports.SubscribeHtlcEventsRequest = new SubscribeHtlcEventsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class HtlcEvent$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.HtlcEvent", [ - { no: 1, name: "incoming_channel_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "outgoing_channel_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 3, name: "incoming_htlc_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 4, name: "outgoing_htlc_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 5, name: "timestamp_ns", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 6, name: "event_type", kind: "enum", T: () => ["routerrpc.HtlcEvent.EventType", HtlcEvent_EventType] }, - { no: 7, name: "forward_event", kind: "message", oneof: "event", T: () => exports.ForwardEvent }, - { no: 8, name: "forward_fail_event", kind: "message", oneof: "event", T: () => exports.ForwardFailEvent }, - { no: 9, name: "settle_event", kind: "message", oneof: "event", T: () => exports.SettleEvent }, - { no: 10, name: "link_fail_event", kind: "message", oneof: "event", T: () => exports.LinkFailEvent } - ]); - } - create(value) { - const message = { incomingChannelId: "0", outgoingChannelId: "0", incomingHtlcId: "0", outgoingHtlcId: "0", timestampNs: "0", eventType: 0, event: { oneofKind: undefined } }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 incoming_channel_id */ 1: - message.incomingChannelId = reader.uint64().toString(); - break; - case /* uint64 outgoing_channel_id */ 2: - message.outgoingChannelId = reader.uint64().toString(); - break; - case /* uint64 incoming_htlc_id */ 3: - message.incomingHtlcId = reader.uint64().toString(); - break; - case /* uint64 outgoing_htlc_id */ 4: - message.outgoingHtlcId = reader.uint64().toString(); - break; - case /* uint64 timestamp_ns */ 5: - message.timestampNs = reader.uint64().toString(); - break; - case /* routerrpc.HtlcEvent.EventType event_type */ 6: - message.eventType = reader.int32(); - break; - case /* routerrpc.ForwardEvent forward_event */ 7: - message.event = { - oneofKind: "forwardEvent", - forwardEvent: exports.ForwardEvent.internalBinaryRead(reader, reader.uint32(), options, message.event.forwardEvent) - }; - break; - case /* routerrpc.ForwardFailEvent forward_fail_event */ 8: - message.event = { - oneofKind: "forwardFailEvent", - forwardFailEvent: exports.ForwardFailEvent.internalBinaryRead(reader, reader.uint32(), options, message.event.forwardFailEvent) - }; - break; - case /* routerrpc.SettleEvent settle_event */ 9: - message.event = { - oneofKind: "settleEvent", - settleEvent: exports.SettleEvent.internalBinaryRead(reader, reader.uint32(), options, message.event.settleEvent) - }; - break; - case /* routerrpc.LinkFailEvent link_fail_event */ 10: - message.event = { - oneofKind: "linkFailEvent", - linkFailEvent: exports.LinkFailEvent.internalBinaryRead(reader, reader.uint32(), options, message.event.linkFailEvent) - }; - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint64 incoming_channel_id = 1; */ - if (message.incomingChannelId !== "0") - writer.tag(1, runtime_2.WireType.Varint).uint64(message.incomingChannelId); - /* uint64 outgoing_channel_id = 2; */ - if (message.outgoingChannelId !== "0") - writer.tag(2, runtime_2.WireType.Varint).uint64(message.outgoingChannelId); - /* uint64 incoming_htlc_id = 3; */ - if (message.incomingHtlcId !== "0") - writer.tag(3, runtime_2.WireType.Varint).uint64(message.incomingHtlcId); - /* uint64 outgoing_htlc_id = 4; */ - if (message.outgoingHtlcId !== "0") - writer.tag(4, runtime_2.WireType.Varint).uint64(message.outgoingHtlcId); - /* uint64 timestamp_ns = 5; */ - if (message.timestampNs !== "0") - writer.tag(5, runtime_2.WireType.Varint).uint64(message.timestampNs); - /* routerrpc.HtlcEvent.EventType event_type = 6; */ - if (message.eventType !== 0) - writer.tag(6, runtime_2.WireType.Varint).int32(message.eventType); - /* routerrpc.ForwardEvent forward_event = 7; */ - if (message.event.oneofKind === "forwardEvent") - exports.ForwardEvent.internalBinaryWrite(message.event.forwardEvent, writer.tag(7, runtime_2.WireType.LengthDelimited).fork(), options).join(); - /* routerrpc.ForwardFailEvent forward_fail_event = 8; */ - if (message.event.oneofKind === "forwardFailEvent") - exports.ForwardFailEvent.internalBinaryWrite(message.event.forwardFailEvent, writer.tag(8, runtime_2.WireType.LengthDelimited).fork(), options).join(); - /* routerrpc.SettleEvent settle_event = 9; */ - if (message.event.oneofKind === "settleEvent") - exports.SettleEvent.internalBinaryWrite(message.event.settleEvent, writer.tag(9, runtime_2.WireType.LengthDelimited).fork(), options).join(); - /* routerrpc.LinkFailEvent link_fail_event = 10; */ - if (message.event.oneofKind === "linkFailEvent") - exports.LinkFailEvent.internalBinaryWrite(message.event.linkFailEvent, writer.tag(10, runtime_2.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.HtlcEvent - */ -exports.HtlcEvent = new HtlcEvent$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class HtlcInfo$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.HtlcInfo", [ - { no: 1, name: "incoming_timelock", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 2, name: "outgoing_timelock", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 3, name: "incoming_amt_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 4, name: "outgoing_amt_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { incomingTimelock: 0, outgoingTimelock: 0, incomingAmtMsat: "0", outgoingAmtMsat: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint32 incoming_timelock */ 1: - message.incomingTimelock = reader.uint32(); - break; - case /* uint32 outgoing_timelock */ 2: - message.outgoingTimelock = reader.uint32(); - break; - case /* uint64 incoming_amt_msat */ 3: - message.incomingAmtMsat = reader.uint64().toString(); - break; - case /* uint64 outgoing_amt_msat */ 4: - message.outgoingAmtMsat = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint32 incoming_timelock = 1; */ - if (message.incomingTimelock !== 0) - writer.tag(1, runtime_2.WireType.Varint).uint32(message.incomingTimelock); - /* uint32 outgoing_timelock = 2; */ - if (message.outgoingTimelock !== 0) - writer.tag(2, runtime_2.WireType.Varint).uint32(message.outgoingTimelock); - /* uint64 incoming_amt_msat = 3; */ - if (message.incomingAmtMsat !== "0") - writer.tag(3, runtime_2.WireType.Varint).uint64(message.incomingAmtMsat); - /* uint64 outgoing_amt_msat = 4; */ - if (message.outgoingAmtMsat !== "0") - writer.tag(4, runtime_2.WireType.Varint).uint64(message.outgoingAmtMsat); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.HtlcInfo - */ -exports.HtlcInfo = new HtlcInfo$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ForwardEvent$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.ForwardEvent", [ - { no: 1, name: "info", kind: "message", T: () => exports.HtlcInfo } - ]); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* routerrpc.HtlcInfo info */ 1: - message.info = exports.HtlcInfo.internalBinaryRead(reader, reader.uint32(), options, message.info); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* routerrpc.HtlcInfo info = 1; */ - if (message.info) - exports.HtlcInfo.internalBinaryWrite(message.info, writer.tag(1, runtime_2.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.ForwardEvent - */ -exports.ForwardEvent = new ForwardEvent$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ForwardFailEvent$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.ForwardFailEvent", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.ForwardFailEvent - */ -exports.ForwardFailEvent = new ForwardFailEvent$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SettleEvent$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.SettleEvent", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.SettleEvent - */ -exports.SettleEvent = new SettleEvent$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class LinkFailEvent$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.LinkFailEvent", [ - { no: 1, name: "info", kind: "message", T: () => exports.HtlcInfo }, - { no: 2, name: "wire_failure", kind: "enum", T: () => ["lnrpc.Failure.FailureCode", rpc_4.Failure_FailureCode] }, - { no: 3, name: "failure_detail", kind: "enum", T: () => ["routerrpc.FailureDetail", FailureDetail] }, - { no: 4, name: "failure_string", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { wireFailure: 0, failureDetail: 0, failureString: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* routerrpc.HtlcInfo info */ 1: - message.info = exports.HtlcInfo.internalBinaryRead(reader, reader.uint32(), options, message.info); - break; - case /* lnrpc.Failure.FailureCode wire_failure */ 2: - message.wireFailure = reader.int32(); - break; - case /* routerrpc.FailureDetail failure_detail */ 3: - message.failureDetail = reader.int32(); - break; - case /* string failure_string */ 4: - message.failureString = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* routerrpc.HtlcInfo info = 1; */ - if (message.info) - exports.HtlcInfo.internalBinaryWrite(message.info, writer.tag(1, runtime_2.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.Failure.FailureCode wire_failure = 2; */ - if (message.wireFailure !== 0) - writer.tag(2, runtime_2.WireType.Varint).int32(message.wireFailure); - /* routerrpc.FailureDetail failure_detail = 3; */ - if (message.failureDetail !== 0) - writer.tag(3, runtime_2.WireType.Varint).int32(message.failureDetail); - /* string failure_string = 4; */ - if (message.failureString !== "") - writer.tag(4, runtime_2.WireType.LengthDelimited).string(message.failureString); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.LinkFailEvent - */ -exports.LinkFailEvent = new LinkFailEvent$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PaymentStatus$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.PaymentStatus", [ - { no: 1, name: "state", kind: "enum", T: () => ["routerrpc.PaymentState", PaymentState] }, - { no: 2, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 4, name: "htlcs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => rpc_3.HTLCAttempt } - ]); - } - create(value) { - const message = { state: 0, preimage: new Uint8Array(0), htlcs: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* routerrpc.PaymentState state */ 1: - message.state = reader.int32(); - break; - case /* bytes preimage */ 2: - message.preimage = reader.bytes(); - break; - case /* repeated lnrpc.HTLCAttempt htlcs */ 4: - message.htlcs.push(rpc_3.HTLCAttempt.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* routerrpc.PaymentState state = 1; */ - if (message.state !== 0) - writer.tag(1, runtime_2.WireType.Varint).int32(message.state); - /* bytes preimage = 2; */ - if (message.preimage.length) - writer.tag(2, runtime_2.WireType.LengthDelimited).bytes(message.preimage); - /* repeated lnrpc.HTLCAttempt htlcs = 4; */ - for (let i = 0; i < message.htlcs.length; i++) - rpc_3.HTLCAttempt.internalBinaryWrite(message.htlcs[i], writer.tag(4, runtime_2.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.PaymentStatus - */ -exports.PaymentStatus = new PaymentStatus$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class CircuitKey$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.CircuitKey", [ - { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "htlc_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { chanId: "0", htlcId: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 chan_id */ 1: - message.chanId = reader.uint64().toString(); - break; - case /* uint64 htlc_id */ 2: - message.htlcId = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint64 chan_id = 1; */ - if (message.chanId !== "0") - writer.tag(1, runtime_2.WireType.Varint).uint64(message.chanId); - /* uint64 htlc_id = 2; */ - if (message.htlcId !== "0") - writer.tag(2, runtime_2.WireType.Varint).uint64(message.htlcId); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.CircuitKey - */ -exports.CircuitKey = new CircuitKey$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ForwardHtlcInterceptRequest$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.ForwardHtlcInterceptRequest", [ - { no: 1, name: "incoming_circuit_key", kind: "message", T: () => exports.CircuitKey }, - { no: 5, name: "incoming_amount_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 6, name: "incoming_expiry", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 2, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 7, name: "outgoing_requested_chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 3, name: "outgoing_amount_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 4, name: "outgoing_expiry", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 8, name: "custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } }, - { no: 9, name: "onion_blob", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { incomingAmountMsat: "0", incomingExpiry: 0, paymentHash: new Uint8Array(0), outgoingRequestedChanId: "0", outgoingAmountMsat: "0", outgoingExpiry: 0, customRecords: {}, onionBlob: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* routerrpc.CircuitKey incoming_circuit_key */ 1: - message.incomingCircuitKey = exports.CircuitKey.internalBinaryRead(reader, reader.uint32(), options, message.incomingCircuitKey); - break; - case /* uint64 incoming_amount_msat */ 5: - message.incomingAmountMsat = reader.uint64().toString(); - break; - case /* uint32 incoming_expiry */ 6: - message.incomingExpiry = reader.uint32(); - break; - case /* bytes payment_hash */ 2: - message.paymentHash = reader.bytes(); - break; - case /* uint64 outgoing_requested_chan_id */ 7: - message.outgoingRequestedChanId = reader.uint64().toString(); - break; - case /* uint64 outgoing_amount_msat */ 3: - message.outgoingAmountMsat = reader.uint64().toString(); - break; - case /* uint32 outgoing_expiry */ 4: - message.outgoingExpiry = reader.uint32(); - break; - case /* map custom_records */ 8: - this.binaryReadMap8(message.customRecords, reader, options); - break; - case /* bytes onion_blob */ 9: - message.onionBlob = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - binaryReadMap8(map, reader, options) { - let len = reader.uint32(), end = reader.pos + len, key, val; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint64().toString(); - break; - case 2: - val = reader.bytes(); - break; - default: throw new globalThis.Error("unknown map entry field for field routerrpc.ForwardHtlcInterceptRequest.custom_records"); - } - } - map[key !== null && key !== void 0 ? key : "0"] = val !== null && val !== void 0 ? val : new Uint8Array(0); - } - internalBinaryWrite(message, writer, options) { - /* routerrpc.CircuitKey incoming_circuit_key = 1; */ - if (message.incomingCircuitKey) - exports.CircuitKey.internalBinaryWrite(message.incomingCircuitKey, writer.tag(1, runtime_2.WireType.LengthDelimited).fork(), options).join(); - /* uint64 incoming_amount_msat = 5; */ - if (message.incomingAmountMsat !== "0") - writer.tag(5, runtime_2.WireType.Varint).uint64(message.incomingAmountMsat); - /* uint32 incoming_expiry = 6; */ - if (message.incomingExpiry !== 0) - writer.tag(6, runtime_2.WireType.Varint).uint32(message.incomingExpiry); - /* bytes payment_hash = 2; */ - if (message.paymentHash.length) - writer.tag(2, runtime_2.WireType.LengthDelimited).bytes(message.paymentHash); - /* uint64 outgoing_requested_chan_id = 7; */ - if (message.outgoingRequestedChanId !== "0") - writer.tag(7, runtime_2.WireType.Varint).uint64(message.outgoingRequestedChanId); - /* uint64 outgoing_amount_msat = 3; */ - if (message.outgoingAmountMsat !== "0") - writer.tag(3, runtime_2.WireType.Varint).uint64(message.outgoingAmountMsat); - /* uint32 outgoing_expiry = 4; */ - if (message.outgoingExpiry !== 0) - writer.tag(4, runtime_2.WireType.Varint).uint32(message.outgoingExpiry); - /* map custom_records = 8; */ - for (let k of Object.keys(message.customRecords)) - writer.tag(8, runtime_2.WireType.LengthDelimited).fork().tag(1, runtime_2.WireType.Varint).uint64(k).tag(2, runtime_2.WireType.LengthDelimited).bytes(message.customRecords[k]).join(); - /* bytes onion_blob = 9; */ - if (message.onionBlob.length) - writer.tag(9, runtime_2.WireType.LengthDelimited).bytes(message.onionBlob); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.ForwardHtlcInterceptRequest - */ -exports.ForwardHtlcInterceptRequest = new ForwardHtlcInterceptRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ForwardHtlcInterceptResponse$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.ForwardHtlcInterceptResponse", [ - { no: 1, name: "incoming_circuit_key", kind: "message", T: () => exports.CircuitKey }, - { no: 2, name: "action", kind: "enum", T: () => ["routerrpc.ResolveHoldForwardAction", ResolveHoldForwardAction] }, - { no: 3, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { action: 0, preimage: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* routerrpc.CircuitKey incoming_circuit_key */ 1: - message.incomingCircuitKey = exports.CircuitKey.internalBinaryRead(reader, reader.uint32(), options, message.incomingCircuitKey); - break; - case /* routerrpc.ResolveHoldForwardAction action */ 2: - message.action = reader.int32(); - break; - case /* bytes preimage */ 3: - message.preimage = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* routerrpc.CircuitKey incoming_circuit_key = 1; */ - if (message.incomingCircuitKey) - exports.CircuitKey.internalBinaryWrite(message.incomingCircuitKey, writer.tag(1, runtime_2.WireType.LengthDelimited).fork(), options).join(); - /* routerrpc.ResolveHoldForwardAction action = 2; */ - if (message.action !== 0) - writer.tag(2, runtime_2.WireType.Varint).int32(message.action); - /* bytes preimage = 3; */ - if (message.preimage.length) - writer.tag(3, runtime_2.WireType.LengthDelimited).bytes(message.preimage); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.ForwardHtlcInterceptResponse - */ -exports.ForwardHtlcInterceptResponse = new ForwardHtlcInterceptResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class UpdateChanStatusRequest$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.UpdateChanStatusRequest", [ - { no: 1, name: "chan_point", kind: "message", T: () => rpc_2.ChannelPoint }, - { no: 2, name: "action", kind: "enum", T: () => ["routerrpc.ChanStatusAction", ChanStatusAction] } - ]); - } - create(value) { - const message = { action: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ChannelPoint chan_point */ 1: - message.chanPoint = rpc_2.ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.chanPoint); - break; - case /* routerrpc.ChanStatusAction action */ 2: - message.action = reader.int32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.ChannelPoint chan_point = 1; */ - if (message.chanPoint) - rpc_2.ChannelPoint.internalBinaryWrite(message.chanPoint, writer.tag(1, runtime_2.WireType.LengthDelimited).fork(), options).join(); - /* routerrpc.ChanStatusAction action = 2; */ - if (message.action !== 0) - writer.tag(2, runtime_2.WireType.Varint).int32(message.action); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.UpdateChanStatusRequest - */ -exports.UpdateChanStatusRequest = new UpdateChanStatusRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class UpdateChanStatusResponse$Type extends runtime_5.MessageType { - constructor() { - super("routerrpc.UpdateChanStatusResponse", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.UpdateChanStatusResponse - */ -exports.UpdateChanStatusResponse = new UpdateChanStatusResponse$Type(); -/** - * @generated ServiceType for protobuf service routerrpc.Router - */ -exports.Router = new runtime_rpc_1.ServiceType("routerrpc.Router", [ - { name: "SendPaymentV2", serverStreaming: true, options: {}, I: exports.SendPaymentRequest, O: rpc_1.Payment }, - { name: "TrackPaymentV2", serverStreaming: true, options: {}, I: exports.TrackPaymentRequest, O: rpc_1.Payment }, - { name: "EstimateRouteFee", options: {}, I: exports.RouteFeeRequest, O: exports.RouteFeeResponse }, - { name: "SendToRoute", options: {}, I: exports.SendToRouteRequest, O: exports.SendToRouteResponse }, - { name: "SendToRouteV2", options: {}, I: exports.SendToRouteRequest, O: rpc_3.HTLCAttempt }, - { name: "ResetMissionControl", options: {}, I: exports.ResetMissionControlRequest, O: exports.ResetMissionControlResponse }, - { name: "QueryMissionControl", options: {}, I: exports.QueryMissionControlRequest, O: exports.QueryMissionControlResponse }, - { name: "XImportMissionControl", options: {}, I: exports.XImportMissionControlRequest, O: exports.XImportMissionControlResponse }, - { name: "GetMissionControlConfig", options: {}, I: exports.GetMissionControlConfigRequest, O: exports.GetMissionControlConfigResponse }, - { name: "SetMissionControlConfig", options: {}, I: exports.SetMissionControlConfigRequest, O: exports.SetMissionControlConfigResponse }, - { name: "QueryProbability", options: {}, I: exports.QueryProbabilityRequest, O: exports.QueryProbabilityResponse }, - { name: "BuildRoute", options: {}, I: exports.BuildRouteRequest, O: exports.BuildRouteResponse }, - { name: "SubscribeHtlcEvents", serverStreaming: true, options: {}, I: exports.SubscribeHtlcEventsRequest, O: exports.HtlcEvent }, - { name: "SendPayment", serverStreaming: true, options: {}, I: exports.SendPaymentRequest, O: exports.PaymentStatus }, - { name: "TrackPayment", serverStreaming: true, options: {}, I: exports.TrackPaymentRequest, O: exports.PaymentStatus }, - { name: "HtlcInterceptor", serverStreaming: true, clientStreaming: true, options: {}, I: exports.ForwardHtlcInterceptResponse, O: exports.ForwardHtlcInterceptRequest }, - { name: "UpdateChanStatus", options: {}, I: exports.UpdateChanStatusRequest, O: exports.UpdateChanStatusResponse } -]); -//# sourceMappingURL=router.js.map \ No newline at end of file diff --git a/build/proto/lnd/router.js.map b/build/proto/lnd/router.js.map deleted file mode 100644 index 74fc3d31..00000000 --- a/build/proto/lnd/router.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"router.js","sourceRoot":"","sources":["../../../proto/lnd/router.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/proto/lnd/rpc.client.js b/build/proto/lnd/rpc.client.js deleted file mode 100644 index 12778e1a..00000000 --- a/build/proto/lnd/rpc.client.js +++ /dev/null @@ -1,803 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.LightningClient = void 0; -const rpc_1 = require("./rpc"); -const runtime_rpc_1 = require("@protobuf-ts/runtime-rpc"); -// -// Comments in this file will be directly parsed into the API -// Documentation as descriptions of the associated method, message, or field. -// These descriptions should go right above the definition of the object, and -// can be in either block or // comment format. -// -// An RPC method can be matched to an lncli command by placing a line in the -// beginning of the description in exactly the following format: -// lncli: `methodname` -// -// Failure to specify the exact name of the command will cause documentation -// generation to fail. -// -// More information on how exactly the gRPC documentation is generated from -// this proto file can be found here: -// https://github.com/lightninglabs/lightning-api -/** - * Lightning is the main RPC server of the daemon. - * - * @generated from protobuf service lnrpc.Lightning - */ -class LightningClient { - constructor(_transport) { - this._transport = _transport; - this.typeName = rpc_1.Lightning.typeName; - this.methods = rpc_1.Lightning.methods; - this.options = rpc_1.Lightning.options; - } - /** - * lncli: `walletbalance` - * WalletBalance returns total unspent outputs(confirmed and unconfirmed), all - * confirmed unspent outputs and all unconfirmed unspent outputs under control - * of the wallet. - * - * @generated from protobuf rpc: WalletBalance(lnrpc.WalletBalanceRequest) returns (lnrpc.WalletBalanceResponse); - */ - walletBalance(input, options) { - const method = this.methods[0], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `channelbalance` - * ChannelBalance returns a report on the total funds across all open channels, - * categorized in local/remote, pending local/remote and unsettled local/remote - * balances. - * - * @generated from protobuf rpc: ChannelBalance(lnrpc.ChannelBalanceRequest) returns (lnrpc.ChannelBalanceResponse); - */ - channelBalance(input, options) { - const method = this.methods[1], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `listchaintxns` - * GetTransactions returns a list describing all the known transactions - * relevant to the wallet. - * - * @generated from protobuf rpc: GetTransactions(lnrpc.GetTransactionsRequest) returns (lnrpc.TransactionDetails); - */ - getTransactions(input, options) { - const method = this.methods[2], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `estimatefee` - * EstimateFee asks the chain backend to estimate the fee rate and total fees - * for a transaction that pays to multiple specified outputs. - * - * When using REST, the `AddrToAmount` map type can be set by appending - * `&AddrToAmount[
]=` to the URL. Unfortunately this - * map type doesn't appear in the REST API documentation because of a bug in - * the grpc-gateway library. - * - * @generated from protobuf rpc: EstimateFee(lnrpc.EstimateFeeRequest) returns (lnrpc.EstimateFeeResponse); - */ - estimateFee(input, options) { - const method = this.methods[3], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `sendcoins` - * SendCoins executes a request to send coins to a particular address. Unlike - * SendMany, this RPC call only allows creating a single output at a time. If - * neither target_conf, or sat_per_vbyte are set, then the internal wallet will - * consult its fee model to determine a fee for the default confirmation - * target. - * - * @generated from protobuf rpc: SendCoins(lnrpc.SendCoinsRequest) returns (lnrpc.SendCoinsResponse); - */ - sendCoins(input, options) { - const method = this.methods[4], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `listunspent` - * Deprecated, use walletrpc.ListUnspent instead. - * - * ListUnspent returns a list of all utxos spendable by the wallet with a - * number of confirmations between the specified minimum and maximum. - * - * @generated from protobuf rpc: ListUnspent(lnrpc.ListUnspentRequest) returns (lnrpc.ListUnspentResponse); - */ - listUnspent(input, options) { - const method = this.methods[5], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * SubscribeTransactions creates a uni-directional stream from the server to - * the client in which any newly discovered transactions relevant to the - * wallet are sent over. - * - * @generated from protobuf rpc: SubscribeTransactions(lnrpc.GetTransactionsRequest) returns (stream lnrpc.Transaction); - */ - subscribeTransactions(input, options) { - const method = this.methods[6], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("serverStreaming", this._transport, method, opt, input); - } - /** - * lncli: `sendmany` - * SendMany handles a request for a transaction that creates multiple specified - * outputs in parallel. If neither target_conf, or sat_per_vbyte are set, then - * the internal wallet will consult its fee model to determine a fee for the - * default confirmation target. - * - * @generated from protobuf rpc: SendMany(lnrpc.SendManyRequest) returns (lnrpc.SendManyResponse); - */ - sendMany(input, options) { - const method = this.methods[7], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `newaddress` - * NewAddress creates a new address under control of the local wallet. - * - * @generated from protobuf rpc: NewAddress(lnrpc.NewAddressRequest) returns (lnrpc.NewAddressResponse); - */ - newAddress(input, options) { - const method = this.methods[8], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `signmessage` - * SignMessage signs a message with this node's private key. The returned - * signature string is `zbase32` encoded and pubkey recoverable, meaning that - * only the message digest and signature are needed for verification. - * - * @generated from protobuf rpc: SignMessage(lnrpc.SignMessageRequest) returns (lnrpc.SignMessageResponse); - */ - signMessage(input, options) { - const method = this.methods[9], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `verifymessage` - * VerifyMessage verifies a signature over a msg. The signature must be - * zbase32 encoded and signed by an active node in the resident node's - * channel database. In addition to returning the validity of the signature, - * VerifyMessage also returns the recovered pubkey from the signature. - * - * @generated from protobuf rpc: VerifyMessage(lnrpc.VerifyMessageRequest) returns (lnrpc.VerifyMessageResponse); - */ - verifyMessage(input, options) { - const method = this.methods[10], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `connect` - * ConnectPeer attempts to establish a connection to a remote peer. This is at - * the networking level, and is used for communication between nodes. This is - * distinct from establishing a channel with a peer. - * - * @generated from protobuf rpc: ConnectPeer(lnrpc.ConnectPeerRequest) returns (lnrpc.ConnectPeerResponse); - */ - connectPeer(input, options) { - const method = this.methods[11], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `disconnect` - * DisconnectPeer attempts to disconnect one peer from another identified by a - * given pubKey. In the case that we currently have a pending or active channel - * with the target peer, then this action will be not be allowed. - * - * @generated from protobuf rpc: DisconnectPeer(lnrpc.DisconnectPeerRequest) returns (lnrpc.DisconnectPeerResponse); - */ - disconnectPeer(input, options) { - const method = this.methods[12], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `listpeers` - * ListPeers returns a verbose listing of all currently active peers. - * - * @generated from protobuf rpc: ListPeers(lnrpc.ListPeersRequest) returns (lnrpc.ListPeersResponse); - */ - listPeers(input, options) { - const method = this.methods[13], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * SubscribePeerEvents creates a uni-directional stream from the server to - * the client in which any events relevant to the state of peers are sent - * over. Events include peers going online and offline. - * - * @generated from protobuf rpc: SubscribePeerEvents(lnrpc.PeerEventSubscription) returns (stream lnrpc.PeerEvent); - */ - subscribePeerEvents(input, options) { - const method = this.methods[14], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("serverStreaming", this._transport, method, opt, input); - } - /** - * lncli: `getinfo` - * GetInfo returns general information concerning the lightning node including - * it's identity pubkey, alias, the chains it is connected to, and information - * concerning the number of open+pending channels. - * - * @generated from protobuf rpc: GetInfo(lnrpc.GetInfoRequest) returns (lnrpc.GetInfoResponse); - */ - getInfo(input, options) { - const method = this.methods[15], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * * lncli: `getrecoveryinfo` - * GetRecoveryInfo returns information concerning the recovery mode including - * whether it's in a recovery mode, whether the recovery is finished, and the - * progress made so far. - * - * @generated from protobuf rpc: GetRecoveryInfo(lnrpc.GetRecoveryInfoRequest) returns (lnrpc.GetRecoveryInfoResponse); - */ - getRecoveryInfo(input, options) { - const method = this.methods[16], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - // TODO(roasbeef): merge with below with bool? - /** - * lncli: `pendingchannels` - * PendingChannels returns a list of all the channels that are currently - * considered "pending". A channel is pending if it has finished the funding - * workflow and is waiting for confirmations for the funding txn, or is in the - * process of closure, either initiated cooperatively or non-cooperatively. - * - * @generated from protobuf rpc: PendingChannels(lnrpc.PendingChannelsRequest) returns (lnrpc.PendingChannelsResponse); - */ - pendingChannels(input, options) { - const method = this.methods[17], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `listchannels` - * ListChannels returns a description of all the open channels that this node - * is a participant in. - * - * @generated from protobuf rpc: ListChannels(lnrpc.ListChannelsRequest) returns (lnrpc.ListChannelsResponse); - */ - listChannels(input, options) { - const method = this.methods[18], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * SubscribeChannelEvents creates a uni-directional stream from the server to - * the client in which any updates relevant to the state of the channels are - * sent over. Events include new active channels, inactive channels, and closed - * channels. - * - * @generated from protobuf rpc: SubscribeChannelEvents(lnrpc.ChannelEventSubscription) returns (stream lnrpc.ChannelEventUpdate); - */ - subscribeChannelEvents(input, options) { - const method = this.methods[19], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("serverStreaming", this._transport, method, opt, input); - } - /** - * lncli: `closedchannels` - * ClosedChannels returns a description of all the closed channels that - * this node was a participant in. - * - * @generated from protobuf rpc: ClosedChannels(lnrpc.ClosedChannelsRequest) returns (lnrpc.ClosedChannelsResponse); - */ - closedChannels(input, options) { - const method = this.methods[20], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * OpenChannelSync is a synchronous version of the OpenChannel RPC call. This - * call is meant to be consumed by clients to the REST proxy. As with all - * other sync calls, all byte slices are intended to be populated as hex - * encoded strings. - * - * @generated from protobuf rpc: OpenChannelSync(lnrpc.OpenChannelRequest) returns (lnrpc.ChannelPoint); - */ - openChannelSync(input, options) { - const method = this.methods[21], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `openchannel` - * OpenChannel attempts to open a singly funded channel specified in the - * request to a remote peer. Users are able to specify a target number of - * blocks that the funding transaction should be confirmed in, or a manual fee - * rate to us for the funding transaction. If neither are specified, then a - * lax block confirmation target is used. Each OpenStatusUpdate will return - * the pending channel ID of the in-progress channel. Depending on the - * arguments specified in the OpenChannelRequest, this pending channel ID can - * then be used to manually progress the channel funding flow. - * - * @generated from protobuf rpc: OpenChannel(lnrpc.OpenChannelRequest) returns (stream lnrpc.OpenStatusUpdate); - */ - openChannel(input, options) { - const method = this.methods[22], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("serverStreaming", this._transport, method, opt, input); - } - /** - * - * FundingStateStep is an advanced funding related call that allows the caller - * to either execute some preparatory steps for a funding workflow, or - * manually progress a funding workflow. The primary way a funding flow is - * identified is via its pending channel ID. As an example, this method can be - * used to specify that we're expecting a funding flow for a particular - * pending channel ID, for which we need to use specific parameters. - * Alternatively, this can be used to interactively drive PSBT signing for - * funding for partially complete funding transactions. - * - * @generated from protobuf rpc: FundingStateStep(lnrpc.FundingTransitionMsg) returns (lnrpc.FundingStateStepResp); - */ - fundingStateStep(input, options) { - const method = this.methods[23], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * ChannelAcceptor dispatches a bi-directional streaming RPC in which - * OpenChannel requests are sent to the client and the client responds with - * a boolean that tells LND whether or not to accept the channel. This allows - * node operators to specify their own criteria for accepting inbound channels - * through a single persistent connection. - * - * @generated from protobuf rpc: ChannelAcceptor(stream lnrpc.ChannelAcceptResponse) returns (stream lnrpc.ChannelAcceptRequest); - */ - channelAcceptor(options) { - const method = this.methods[24], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("duplex", this._transport, method, opt); - } - /** - * lncli: `closechannel` - * CloseChannel attempts to close an active channel identified by its channel - * outpoint (ChannelPoint). The actions of this method can additionally be - * augmented to attempt a force close after a timeout period in the case of an - * inactive peer. If a non-force close (cooperative closure) is requested, - * then the user can specify either a target number of blocks until the - * closure transaction is confirmed, or a manual fee rate. If neither are - * specified, then a default lax, block confirmation target is used. - * - * @generated from protobuf rpc: CloseChannel(lnrpc.CloseChannelRequest) returns (stream lnrpc.CloseStatusUpdate); - */ - closeChannel(input, options) { - const method = this.methods[25], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("serverStreaming", this._transport, method, opt, input); - } - /** - * lncli: `abandonchannel` - * AbandonChannel removes all channel state from the database except for a - * close summary. This method can be used to get rid of permanently unusable - * channels due to bugs fixed in newer versions of lnd. This method can also be - * used to remove externally funded channels where the funding transaction was - * never broadcast. Only available for non-externally funded channels in dev - * build. - * - * @generated from protobuf rpc: AbandonChannel(lnrpc.AbandonChannelRequest) returns (lnrpc.AbandonChannelResponse); - */ - abandonChannel(input, options) { - const method = this.methods[26], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `sendpayment` - * Deprecated, use routerrpc.SendPaymentV2. SendPayment dispatches a - * bi-directional streaming RPC for sending payments through the Lightning - * Network. A single RPC invocation creates a persistent bi-directional - * stream allowing clients to rapidly send payments through the Lightning - * Network with a single persistent connection. - * - * @deprecated - * @generated from protobuf rpc: SendPayment(stream lnrpc.SendRequest) returns (stream lnrpc.SendResponse); - */ - sendPayment(options) { - const method = this.methods[27], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("duplex", this._transport, method, opt); - } - /** - * - * SendPaymentSync is the synchronous non-streaming version of SendPayment. - * This RPC is intended to be consumed by clients of the REST proxy. - * Additionally, this RPC expects the destination's public key and the payment - * hash (if any) to be encoded as hex strings. - * - * @generated from protobuf rpc: SendPaymentSync(lnrpc.SendRequest) returns (lnrpc.SendResponse); - */ - sendPaymentSync(input, options) { - const method = this.methods[28], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `sendtoroute` - * Deprecated, use routerrpc.SendToRouteV2. SendToRoute is a bi-directional - * streaming RPC for sending payment through the Lightning Network. This - * method differs from SendPayment in that it allows users to specify a full - * route manually. This can be used for things like rebalancing, and atomic - * swaps. - * - * @deprecated - * @generated from protobuf rpc: SendToRoute(stream lnrpc.SendToRouteRequest) returns (stream lnrpc.SendResponse); - */ - sendToRoute(options) { - const method = this.methods[29], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("duplex", this._transport, method, opt); - } - /** - * - * SendToRouteSync is a synchronous version of SendToRoute. It Will block - * until the payment either fails or succeeds. - * - * @generated from protobuf rpc: SendToRouteSync(lnrpc.SendToRouteRequest) returns (lnrpc.SendResponse); - */ - sendToRouteSync(input, options) { - const method = this.methods[30], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `addinvoice` - * AddInvoice attempts to add a new invoice to the invoice database. Any - * duplicated invoices are rejected, therefore all invoices *must* have a - * unique payment preimage. - * - * @generated from protobuf rpc: AddInvoice(lnrpc.Invoice) returns (lnrpc.AddInvoiceResponse); - */ - addInvoice(input, options) { - const method = this.methods[31], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `listinvoices` - * ListInvoices returns a list of all the invoices currently stored within the - * database. Any active debug invoices are ignored. It has full support for - * paginated responses, allowing users to query for specific invoices through - * their add_index. This can be done by using either the first_index_offset or - * last_index_offset fields included in the response as the index_offset of the - * next request. By default, the first 100 invoices created will be returned. - * Backwards pagination is also supported through the Reversed flag. - * - * @generated from protobuf rpc: ListInvoices(lnrpc.ListInvoiceRequest) returns (lnrpc.ListInvoiceResponse); - */ - listInvoices(input, options) { - const method = this.methods[32], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `lookupinvoice` - * LookupInvoice attempts to look up an invoice according to its payment hash. - * The passed payment hash *must* be exactly 32 bytes, if not, an error is - * returned. - * - * @generated from protobuf rpc: LookupInvoice(lnrpc.PaymentHash) returns (lnrpc.Invoice); - */ - lookupInvoice(input, options) { - const method = this.methods[33], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * SubscribeInvoices returns a uni-directional stream (server -> client) for - * notifying the client of newly added/settled invoices. The caller can - * optionally specify the add_index and/or the settle_index. If the add_index - * is specified, then we'll first start by sending add invoice events for all - * invoices with an add_index greater than the specified value. If the - * settle_index is specified, the next, we'll send out all settle events for - * invoices with a settle_index greater than the specified value. One or both - * of these fields can be set. If no fields are set, then we'll only send out - * the latest add/settle events. - * - * @generated from protobuf rpc: SubscribeInvoices(lnrpc.InvoiceSubscription) returns (stream lnrpc.Invoice); - */ - subscribeInvoices(input, options) { - const method = this.methods[34], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("serverStreaming", this._transport, method, opt, input); - } - /** - * lncli: `decodepayreq` - * DecodePayReq takes an encoded payment request string and attempts to decode - * it, returning a full description of the conditions encoded within the - * payment request. - * - * @generated from protobuf rpc: DecodePayReq(lnrpc.PayReqString) returns (lnrpc.PayReq); - */ - decodePayReq(input, options) { - const method = this.methods[35], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `listpayments` - * ListPayments returns a list of all outgoing payments. - * - * @generated from protobuf rpc: ListPayments(lnrpc.ListPaymentsRequest) returns (lnrpc.ListPaymentsResponse); - */ - listPayments(input, options) { - const method = this.methods[36], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * DeleteAllPayments deletes all outgoing payments from DB. - * - * @generated from protobuf rpc: DeleteAllPayments(lnrpc.DeleteAllPaymentsRequest) returns (lnrpc.DeleteAllPaymentsResponse); - */ - deleteAllPayments(input, options) { - const method = this.methods[37], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `describegraph` - * DescribeGraph returns a description of the latest graph state from the - * point of view of the node. The graph information is partitioned into two - * components: all the nodes/vertexes, and all the edges that connect the - * vertexes themselves. As this is a directed graph, the edges also contain - * the node directional specific routing policy which includes: the time lock - * delta, fee information, etc. - * - * @generated from protobuf rpc: DescribeGraph(lnrpc.ChannelGraphRequest) returns (lnrpc.ChannelGraph); - */ - describeGraph(input, options) { - const method = this.methods[38], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `getnodemetrics` - * GetNodeMetrics returns node metrics calculated from the graph. Currently - * the only supported metric is betweenness centrality of individual nodes. - * - * @generated from protobuf rpc: GetNodeMetrics(lnrpc.NodeMetricsRequest) returns (lnrpc.NodeMetricsResponse); - */ - getNodeMetrics(input, options) { - const method = this.methods[39], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `getchaninfo` - * GetChanInfo returns the latest authenticated network announcement for the - * given channel identified by its channel ID: an 8-byte integer which - * uniquely identifies the location of transaction's funding output within the - * blockchain. - * - * @generated from protobuf rpc: GetChanInfo(lnrpc.ChanInfoRequest) returns (lnrpc.ChannelEdge); - */ - getChanInfo(input, options) { - const method = this.methods[40], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `getnodeinfo` - * GetNodeInfo returns the latest advertised, aggregated, and authenticated - * channel information for the specified node identified by its public key. - * - * @generated from protobuf rpc: GetNodeInfo(lnrpc.NodeInfoRequest) returns (lnrpc.NodeInfo); - */ - getNodeInfo(input, options) { - const method = this.methods[41], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `queryroutes` - * QueryRoutes attempts to query the daemon's Channel Router for a possible - * route to a target destination capable of carrying a specific amount of - * satoshis. The returned route contains the full details required to craft and - * send an HTLC, also including the necessary information that should be - * present within the Sphinx packet encapsulated within the HTLC. - * - * When using REST, the `dest_custom_records` map type can be set by appending - * `&dest_custom_records[]=` - * to the URL. Unfortunately this map type doesn't appear in the REST API - * documentation because of a bug in the grpc-gateway library. - * - * @generated from protobuf rpc: QueryRoutes(lnrpc.QueryRoutesRequest) returns (lnrpc.QueryRoutesResponse); - */ - queryRoutes(input, options) { - const method = this.methods[42], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `getnetworkinfo` - * GetNetworkInfo returns some basic stats about the known channel graph from - * the point of view of the node. - * - * @generated from protobuf rpc: GetNetworkInfo(lnrpc.NetworkInfoRequest) returns (lnrpc.NetworkInfo); - */ - getNetworkInfo(input, options) { - const method = this.methods[43], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `stop` - * StopDaemon will send a shutdown request to the interrupt handler, triggering - * a graceful shutdown of the daemon. - * - * @generated from protobuf rpc: StopDaemon(lnrpc.StopRequest) returns (lnrpc.StopResponse); - */ - stopDaemon(input, options) { - const method = this.methods[44], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * SubscribeChannelGraph launches a streaming RPC that allows the caller to - * receive notifications upon any changes to the channel graph topology from - * the point of view of the responding node. Events notified include: new - * nodes coming online, nodes updating their authenticated attributes, new - * channels being advertised, updates in the routing policy for a directional - * channel edge, and when channels are closed on-chain. - * - * @generated from protobuf rpc: SubscribeChannelGraph(lnrpc.GraphTopologySubscription) returns (stream lnrpc.GraphTopologyUpdate); - */ - subscribeChannelGraph(input, options) { - const method = this.methods[45], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("serverStreaming", this._transport, method, opt, input); - } - /** - * lncli: `debuglevel` - * DebugLevel allows a caller to programmatically set the logging verbosity of - * lnd. The logging can be targeted according to a coarse daemon-wide logging - * level, or in a granular fashion to specify the logging for a target - * sub-system. - * - * @generated from protobuf rpc: DebugLevel(lnrpc.DebugLevelRequest) returns (lnrpc.DebugLevelResponse); - */ - debugLevel(input, options) { - const method = this.methods[46], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `feereport` - * FeeReport allows the caller to obtain a report detailing the current fee - * schedule enforced by the node globally for each channel. - * - * @generated from protobuf rpc: FeeReport(lnrpc.FeeReportRequest) returns (lnrpc.FeeReportResponse); - */ - feeReport(input, options) { - const method = this.methods[47], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `updatechanpolicy` - * UpdateChannelPolicy allows the caller to update the fee schedule and - * channel policies for all channels globally, or a particular channel. - * - * @generated from protobuf rpc: UpdateChannelPolicy(lnrpc.PolicyUpdateRequest) returns (lnrpc.PolicyUpdateResponse); - */ - updateChannelPolicy(input, options) { - const method = this.methods[48], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `fwdinghistory` - * ForwardingHistory allows the caller to query the htlcswitch for a record of - * all HTLCs forwarded within the target time range, and integer offset - * within that time range. If no time-range is specified, then the first chunk - * of the past 24 hrs of forwarding history are returned. - * - * A list of forwarding events are returned. The size of each forwarding event - * is 40 bytes, and the max message size able to be returned in gRPC is 4 MiB. - * As a result each message can only contain 50k entries. Each response has - * the index offset of the last entry. The index offset can be provided to the - * request to allow the caller to skip a series of records. - * - * @generated from protobuf rpc: ForwardingHistory(lnrpc.ForwardingHistoryRequest) returns (lnrpc.ForwardingHistoryResponse); - */ - forwardingHistory(input, options) { - const method = this.methods[49], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `exportchanbackup` - * ExportChannelBackup attempts to return an encrypted static channel backup - * for the target channel identified by it channel point. The backup is - * encrypted with a key generated from the aezeed seed of the user. The - * returned backup can either be restored using the RestoreChannelBackup - * method once lnd is running, or via the InitWallet and UnlockWallet methods - * from the WalletUnlocker service. - * - * @generated from protobuf rpc: ExportChannelBackup(lnrpc.ExportChannelBackupRequest) returns (lnrpc.ChannelBackup); - */ - exportChannelBackup(input, options) { - const method = this.methods[50], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * ExportAllChannelBackups returns static channel backups for all existing - * channels known to lnd. A set of regular singular static channel backups for - * each channel are returned. Additionally, a multi-channel backup is returned - * as well, which contains a single encrypted blob containing the backups of - * each channel. - * - * @generated from protobuf rpc: ExportAllChannelBackups(lnrpc.ChanBackupExportRequest) returns (lnrpc.ChanBackupSnapshot); - */ - exportAllChannelBackups(input, options) { - const method = this.methods[51], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * VerifyChanBackup allows a caller to verify the integrity of a channel backup - * snapshot. This method will accept either a packed Single or a packed Multi. - * Specifying both will result in an error. - * - * @generated from protobuf rpc: VerifyChanBackup(lnrpc.ChanBackupSnapshot) returns (lnrpc.VerifyChanBackupResponse); - */ - verifyChanBackup(input, options) { - const method = this.methods[52], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `restorechanbackup` - * RestoreChannelBackups accepts a set of singular channel backups, or a - * single encrypted multi-chan backup and attempts to recover any funds - * remaining within the channel. If we are able to unpack the backup, then the - * new channel will be shown under listchannels, as well as pending channels. - * - * @generated from protobuf rpc: RestoreChannelBackups(lnrpc.RestoreChanBackupRequest) returns (lnrpc.RestoreBackupResponse); - */ - restoreChannelBackups(input, options) { - const method = this.methods[53], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * - * SubscribeChannelBackups allows a client to sub-subscribe to the most up to - * date information concerning the state of all channel backups. Each time a - * new channel is added, we return the new set of channels, along with a - * multi-chan backup containing the backup info for all channels. Each time a - * channel is closed, we send a new update, which contains new new chan back - * ups, but the updated set of encrypted multi-chan backups with the closed - * channel(s) removed. - * - * @generated from protobuf rpc: SubscribeChannelBackups(lnrpc.ChannelBackupSubscription) returns (stream lnrpc.ChanBackupSnapshot); - */ - subscribeChannelBackups(input, options) { - const method = this.methods[54], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("serverStreaming", this._transport, method, opt, input); - } - /** - * lncli: `bakemacaroon` - * BakeMacaroon allows the creation of a new macaroon with custom read and - * write permissions. No first-party caveats are added since this can be done - * offline. - * - * @generated from protobuf rpc: BakeMacaroon(lnrpc.BakeMacaroonRequest) returns (lnrpc.BakeMacaroonResponse); - */ - bakeMacaroon(input, options) { - const method = this.methods[55], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `listmacaroonids` - * ListMacaroonIDs returns all root key IDs that are in use. - * - * @generated from protobuf rpc: ListMacaroonIDs(lnrpc.ListMacaroonIDsRequest) returns (lnrpc.ListMacaroonIDsResponse); - */ - listMacaroonIDs(input, options) { - const method = this.methods[56], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `deletemacaroonid` - * DeleteMacaroonID deletes the specified macaroon ID and invalidates all - * macaroons derived from that ID. - * - * @generated from protobuf rpc: DeleteMacaroonID(lnrpc.DeleteMacaroonIDRequest) returns (lnrpc.DeleteMacaroonIDResponse); - */ - deleteMacaroonID(input, options) { - const method = this.methods[57], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } - /** - * lncli: `listpermissions` - * ListPermissions lists all RPC method URIs and their required macaroon - * permissions to access them. - * - * @generated from protobuf rpc: ListPermissions(lnrpc.ListPermissionsRequest) returns (lnrpc.ListPermissionsResponse); - */ - listPermissions(input, options) { - const method = this.methods[58], opt = this._transport.mergeOptions(options); - return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input); - } -} -exports.LightningClient = LightningClient; -//# sourceMappingURL=rpc.client.js.map \ No newline at end of file diff --git a/build/proto/lnd/rpc.client.js.map b/build/proto/lnd/rpc.client.js.map deleted file mode 100644 index 88fee1d5..00000000 --- a/build/proto/lnd/rpc.client.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"rpc.client.js","sourceRoot":"","sources":["../../../proto/lnd/rpc.client.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/proto/lnd/rpc.grpc-client.js b/build/proto/lnd/rpc.grpc-client.js deleted file mode 100644 index d36be427..00000000 --- a/build/proto/lnd/rpc.grpc-client.js +++ /dev/null @@ -1,827 +0,0 @@ -"use strict"; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.LightningClient = void 0; -// @generated by protobuf-ts 2.5.0 with parameter long_type_string,client_grpc1 -// @generated from protobuf file "rpc.proto" (package "lnrpc", syntax proto3) -// tslint:disable -const rpc_1 = require("./rpc"); -const grpc = __importStar(require("@grpc/grpc-js")); -// -// Comments in this file will be directly parsed into the API -// Documentation as descriptions of the associated method, message, or field. -// These descriptions should go right above the definition of the object, and -// can be in either block or // comment format. -// -// An RPC method can be matched to an lncli command by placing a line in the -// beginning of the description in exactly the following format: -// lncli: `methodname` -// -// Failure to specify the exact name of the command will cause documentation -// generation to fail. -// -// More information on how exactly the gRPC documentation is generated from -// this proto file can be found here: -// https://github.com/lightninglabs/lightning-api -/** - * Lightning is the main RPC server of the daemon. - * - * @generated from protobuf service lnrpc.Lightning - */ -class LightningClient extends grpc.Client { - constructor(address, credentials, options = {}, binaryOptions = {}) { - super(address, credentials, options); - this._binaryOptions = binaryOptions; - } - /** - * lncli: `walletbalance` - * WalletBalance returns total unspent outputs(confirmed and unconfirmed), all - * confirmed unspent outputs and all unconfirmed unspent outputs under control - * of the wallet. - * - * @generated from protobuf rpc: WalletBalance(lnrpc.WalletBalanceRequest) returns (lnrpc.WalletBalanceResponse); - */ - walletBalance(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[0]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `channelbalance` - * ChannelBalance returns a report on the total funds across all open channels, - * categorized in local/remote, pending local/remote and unsettled local/remote - * balances. - * - * @generated from protobuf rpc: ChannelBalance(lnrpc.ChannelBalanceRequest) returns (lnrpc.ChannelBalanceResponse); - */ - channelBalance(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[1]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `listchaintxns` - * GetTransactions returns a list describing all the known transactions - * relevant to the wallet. - * - * @generated from protobuf rpc: GetTransactions(lnrpc.GetTransactionsRequest) returns (lnrpc.TransactionDetails); - */ - getTransactions(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[2]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `estimatefee` - * EstimateFee asks the chain backend to estimate the fee rate and total fees - * for a transaction that pays to multiple specified outputs. - * - * When using REST, the `AddrToAmount` map type can be set by appending - * `&AddrToAmount[
]=` to the URL. Unfortunately this - * map type doesn't appear in the REST API documentation because of a bug in - * the grpc-gateway library. - * - * @generated from protobuf rpc: EstimateFee(lnrpc.EstimateFeeRequest) returns (lnrpc.EstimateFeeResponse); - */ - estimateFee(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[3]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `sendcoins` - * SendCoins executes a request to send coins to a particular address. Unlike - * SendMany, this RPC call only allows creating a single output at a time. If - * neither target_conf, or sat_per_vbyte are set, then the internal wallet will - * consult its fee model to determine a fee for the default confirmation - * target. - * - * @generated from protobuf rpc: SendCoins(lnrpc.SendCoinsRequest) returns (lnrpc.SendCoinsResponse); - */ - sendCoins(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[4]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `listunspent` - * Deprecated, use walletrpc.ListUnspent instead. - * - * ListUnspent returns a list of all utxos spendable by the wallet with a - * number of confirmations between the specified minimum and maximum. - * - * @generated from protobuf rpc: ListUnspent(lnrpc.ListUnspentRequest) returns (lnrpc.ListUnspentResponse); - */ - listUnspent(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[5]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * SubscribeTransactions creates a uni-directional stream from the server to - * the client in which any newly discovered transactions relevant to the - * wallet are sent over. - * - * @generated from protobuf rpc: SubscribeTransactions(lnrpc.GetTransactionsRequest) returns (stream lnrpc.Transaction); - */ - subscribeTransactions(input, metadata, options) { - const method = rpc_1.Lightning.methods[6]; - return this.makeServerStreamRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options); - } - /** - * lncli: `sendmany` - * SendMany handles a request for a transaction that creates multiple specified - * outputs in parallel. If neither target_conf, or sat_per_vbyte are set, then - * the internal wallet will consult its fee model to determine a fee for the - * default confirmation target. - * - * @generated from protobuf rpc: SendMany(lnrpc.SendManyRequest) returns (lnrpc.SendManyResponse); - */ - sendMany(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[7]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `newaddress` - * NewAddress creates a new address under control of the local wallet. - * - * @generated from protobuf rpc: NewAddress(lnrpc.NewAddressRequest) returns (lnrpc.NewAddressResponse); - */ - newAddress(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[8]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `signmessage` - * SignMessage signs a message with this node's private key. The returned - * signature string is `zbase32` encoded and pubkey recoverable, meaning that - * only the message digest and signature are needed for verification. - * - * @generated from protobuf rpc: SignMessage(lnrpc.SignMessageRequest) returns (lnrpc.SignMessageResponse); - */ - signMessage(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[9]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `verifymessage` - * VerifyMessage verifies a signature over a msg. The signature must be - * zbase32 encoded and signed by an active node in the resident node's - * channel database. In addition to returning the validity of the signature, - * VerifyMessage also returns the recovered pubkey from the signature. - * - * @generated from protobuf rpc: VerifyMessage(lnrpc.VerifyMessageRequest) returns (lnrpc.VerifyMessageResponse); - */ - verifyMessage(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[10]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `connect` - * ConnectPeer attempts to establish a connection to a remote peer. This is at - * the networking level, and is used for communication between nodes. This is - * distinct from establishing a channel with a peer. - * - * @generated from protobuf rpc: ConnectPeer(lnrpc.ConnectPeerRequest) returns (lnrpc.ConnectPeerResponse); - */ - connectPeer(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[11]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `disconnect` - * DisconnectPeer attempts to disconnect one peer from another identified by a - * given pubKey. In the case that we currently have a pending or active channel - * with the target peer, then this action will be not be allowed. - * - * @generated from protobuf rpc: DisconnectPeer(lnrpc.DisconnectPeerRequest) returns (lnrpc.DisconnectPeerResponse); - */ - disconnectPeer(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[12]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `listpeers` - * ListPeers returns a verbose listing of all currently active peers. - * - * @generated from protobuf rpc: ListPeers(lnrpc.ListPeersRequest) returns (lnrpc.ListPeersResponse); - */ - listPeers(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[13]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * SubscribePeerEvents creates a uni-directional stream from the server to - * the client in which any events relevant to the state of peers are sent - * over. Events include peers going online and offline. - * - * @generated from protobuf rpc: SubscribePeerEvents(lnrpc.PeerEventSubscription) returns (stream lnrpc.PeerEvent); - */ - subscribePeerEvents(input, metadata, options) { - const method = rpc_1.Lightning.methods[14]; - return this.makeServerStreamRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options); - } - /** - * lncli: `getinfo` - * GetInfo returns general information concerning the lightning node including - * it's identity pubkey, alias, the chains it is connected to, and information - * concerning the number of open+pending channels. - * - * @generated from protobuf rpc: GetInfo(lnrpc.GetInfoRequest) returns (lnrpc.GetInfoResponse); - */ - getInfo(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[15]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * * lncli: `getrecoveryinfo` - * GetRecoveryInfo returns information concerning the recovery mode including - * whether it's in a recovery mode, whether the recovery is finished, and the - * progress made so far. - * - * @generated from protobuf rpc: GetRecoveryInfo(lnrpc.GetRecoveryInfoRequest) returns (lnrpc.GetRecoveryInfoResponse); - */ - getRecoveryInfo(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[16]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - // TODO(roasbeef): merge with below with bool? - /** - * lncli: `pendingchannels` - * PendingChannels returns a list of all the channels that are currently - * considered "pending". A channel is pending if it has finished the funding - * workflow and is waiting for confirmations for the funding txn, or is in the - * process of closure, either initiated cooperatively or non-cooperatively. - * - * @generated from protobuf rpc: PendingChannels(lnrpc.PendingChannelsRequest) returns (lnrpc.PendingChannelsResponse); - */ - pendingChannels(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[17]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `listchannels` - * ListChannels returns a description of all the open channels that this node - * is a participant in. - * - * @generated from protobuf rpc: ListChannels(lnrpc.ListChannelsRequest) returns (lnrpc.ListChannelsResponse); - */ - listChannels(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[18]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * SubscribeChannelEvents creates a uni-directional stream from the server to - * the client in which any updates relevant to the state of the channels are - * sent over. Events include new active channels, inactive channels, and closed - * channels. - * - * @generated from protobuf rpc: SubscribeChannelEvents(lnrpc.ChannelEventSubscription) returns (stream lnrpc.ChannelEventUpdate); - */ - subscribeChannelEvents(input, metadata, options) { - const method = rpc_1.Lightning.methods[19]; - return this.makeServerStreamRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options); - } - /** - * lncli: `closedchannels` - * ClosedChannels returns a description of all the closed channels that - * this node was a participant in. - * - * @generated from protobuf rpc: ClosedChannels(lnrpc.ClosedChannelsRequest) returns (lnrpc.ClosedChannelsResponse); - */ - closedChannels(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[20]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * OpenChannelSync is a synchronous version of the OpenChannel RPC call. This - * call is meant to be consumed by clients to the REST proxy. As with all - * other sync calls, all byte slices are intended to be populated as hex - * encoded strings. - * - * @generated from protobuf rpc: OpenChannelSync(lnrpc.OpenChannelRequest) returns (lnrpc.ChannelPoint); - */ - openChannelSync(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[21]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `openchannel` - * OpenChannel attempts to open a singly funded channel specified in the - * request to a remote peer. Users are able to specify a target number of - * blocks that the funding transaction should be confirmed in, or a manual fee - * rate to us for the funding transaction. If neither are specified, then a - * lax block confirmation target is used. Each OpenStatusUpdate will return - * the pending channel ID of the in-progress channel. Depending on the - * arguments specified in the OpenChannelRequest, this pending channel ID can - * then be used to manually progress the channel funding flow. - * - * @generated from protobuf rpc: OpenChannel(lnrpc.OpenChannelRequest) returns (stream lnrpc.OpenStatusUpdate); - */ - openChannel(input, metadata, options) { - const method = rpc_1.Lightning.methods[22]; - return this.makeServerStreamRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options); - } - /** - * - * FundingStateStep is an advanced funding related call that allows the caller - * to either execute some preparatory steps for a funding workflow, or - * manually progress a funding workflow. The primary way a funding flow is - * identified is via its pending channel ID. As an example, this method can be - * used to specify that we're expecting a funding flow for a particular - * pending channel ID, for which we need to use specific parameters. - * Alternatively, this can be used to interactively drive PSBT signing for - * funding for partially complete funding transactions. - * - * @generated from protobuf rpc: FundingStateStep(lnrpc.FundingTransitionMsg) returns (lnrpc.FundingStateStepResp); - */ - fundingStateStep(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[23]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * ChannelAcceptor dispatches a bi-directional streaming RPC in which - * OpenChannel requests are sent to the client and the client responds with - * a boolean that tells LND whether or not to accept the channel. This allows - * node operators to specify their own criteria for accepting inbound channels - * through a single persistent connection. - * - * @generated from protobuf rpc: ChannelAcceptor(stream lnrpc.ChannelAcceptResponse) returns (stream lnrpc.ChannelAcceptRequest); - */ - channelAcceptor(metadata, options) { - const method = rpc_1.Lightning.methods[24]; - return this.makeBidiStreamRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), metadata, options); - } - /** - * lncli: `closechannel` - * CloseChannel attempts to close an active channel identified by its channel - * outpoint (ChannelPoint). The actions of this method can additionally be - * augmented to attempt a force close after a timeout period in the case of an - * inactive peer. If a non-force close (cooperative closure) is requested, - * then the user can specify either a target number of blocks until the - * closure transaction is confirmed, or a manual fee rate. If neither are - * specified, then a default lax, block confirmation target is used. - * - * @generated from protobuf rpc: CloseChannel(lnrpc.CloseChannelRequest) returns (stream lnrpc.CloseStatusUpdate); - */ - closeChannel(input, metadata, options) { - const method = rpc_1.Lightning.methods[25]; - return this.makeServerStreamRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options); - } - /** - * lncli: `abandonchannel` - * AbandonChannel removes all channel state from the database except for a - * close summary. This method can be used to get rid of permanently unusable - * channels due to bugs fixed in newer versions of lnd. This method can also be - * used to remove externally funded channels where the funding transaction was - * never broadcast. Only available for non-externally funded channels in dev - * build. - * - * @generated from protobuf rpc: AbandonChannel(lnrpc.AbandonChannelRequest) returns (lnrpc.AbandonChannelResponse); - */ - abandonChannel(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[26]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `sendpayment` - * Deprecated, use routerrpc.SendPaymentV2. SendPayment dispatches a - * bi-directional streaming RPC for sending payments through the Lightning - * Network. A single RPC invocation creates a persistent bi-directional - * stream allowing clients to rapidly send payments through the Lightning - * Network with a single persistent connection. - * - * @deprecated - * @generated from protobuf rpc: SendPayment(stream lnrpc.SendRequest) returns (stream lnrpc.SendResponse); - */ - sendPayment(metadata, options) { - const method = rpc_1.Lightning.methods[27]; - return this.makeBidiStreamRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), metadata, options); - } - /** - * - * SendPaymentSync is the synchronous non-streaming version of SendPayment. - * This RPC is intended to be consumed by clients of the REST proxy. - * Additionally, this RPC expects the destination's public key and the payment - * hash (if any) to be encoded as hex strings. - * - * @generated from protobuf rpc: SendPaymentSync(lnrpc.SendRequest) returns (lnrpc.SendResponse); - */ - sendPaymentSync(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[28]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `sendtoroute` - * Deprecated, use routerrpc.SendToRouteV2. SendToRoute is a bi-directional - * streaming RPC for sending payment through the Lightning Network. This - * method differs from SendPayment in that it allows users to specify a full - * route manually. This can be used for things like rebalancing, and atomic - * swaps. - * - * @deprecated - * @generated from protobuf rpc: SendToRoute(stream lnrpc.SendToRouteRequest) returns (stream lnrpc.SendResponse); - */ - sendToRoute(metadata, options) { - const method = rpc_1.Lightning.methods[29]; - return this.makeBidiStreamRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), metadata, options); - } - /** - * - * SendToRouteSync is a synchronous version of SendToRoute. It Will block - * until the payment either fails or succeeds. - * - * @generated from protobuf rpc: SendToRouteSync(lnrpc.SendToRouteRequest) returns (lnrpc.SendResponse); - */ - sendToRouteSync(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[30]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `addinvoice` - * AddInvoice attempts to add a new invoice to the invoice database. Any - * duplicated invoices are rejected, therefore all invoices *must* have a - * unique payment preimage. - * - * @generated from protobuf rpc: AddInvoice(lnrpc.Invoice) returns (lnrpc.AddInvoiceResponse); - */ - addInvoice(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[31]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `listinvoices` - * ListInvoices returns a list of all the invoices currently stored within the - * database. Any active debug invoices are ignored. It has full support for - * paginated responses, allowing users to query for specific invoices through - * their add_index. This can be done by using either the first_index_offset or - * last_index_offset fields included in the response as the index_offset of the - * next request. By default, the first 100 invoices created will be returned. - * Backwards pagination is also supported through the Reversed flag. - * - * @generated from protobuf rpc: ListInvoices(lnrpc.ListInvoiceRequest) returns (lnrpc.ListInvoiceResponse); - */ - listInvoices(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[32]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `lookupinvoice` - * LookupInvoice attempts to look up an invoice according to its payment hash. - * The passed payment hash *must* be exactly 32 bytes, if not, an error is - * returned. - * - * @generated from protobuf rpc: LookupInvoice(lnrpc.PaymentHash) returns (lnrpc.Invoice); - */ - lookupInvoice(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[33]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * SubscribeInvoices returns a uni-directional stream (server -> client) for - * notifying the client of newly added/settled invoices. The caller can - * optionally specify the add_index and/or the settle_index. If the add_index - * is specified, then we'll first start by sending add invoice events for all - * invoices with an add_index greater than the specified value. If the - * settle_index is specified, the next, we'll send out all settle events for - * invoices with a settle_index greater than the specified value. One or both - * of these fields can be set. If no fields are set, then we'll only send out - * the latest add/settle events. - * - * @generated from protobuf rpc: SubscribeInvoices(lnrpc.InvoiceSubscription) returns (stream lnrpc.Invoice); - */ - subscribeInvoices(input, metadata, options) { - const method = rpc_1.Lightning.methods[34]; - return this.makeServerStreamRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options); - } - /** - * lncli: `decodepayreq` - * DecodePayReq takes an encoded payment request string and attempts to decode - * it, returning a full description of the conditions encoded within the - * payment request. - * - * @generated from protobuf rpc: DecodePayReq(lnrpc.PayReqString) returns (lnrpc.PayReq); - */ - decodePayReq(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[35]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `listpayments` - * ListPayments returns a list of all outgoing payments. - * - * @generated from protobuf rpc: ListPayments(lnrpc.ListPaymentsRequest) returns (lnrpc.ListPaymentsResponse); - */ - listPayments(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[36]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * DeleteAllPayments deletes all outgoing payments from DB. - * - * @generated from protobuf rpc: DeleteAllPayments(lnrpc.DeleteAllPaymentsRequest) returns (lnrpc.DeleteAllPaymentsResponse); - */ - deleteAllPayments(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[37]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `describegraph` - * DescribeGraph returns a description of the latest graph state from the - * point of view of the node. The graph information is partitioned into two - * components: all the nodes/vertexes, and all the edges that connect the - * vertexes themselves. As this is a directed graph, the edges also contain - * the node directional specific routing policy which includes: the time lock - * delta, fee information, etc. - * - * @generated from protobuf rpc: DescribeGraph(lnrpc.ChannelGraphRequest) returns (lnrpc.ChannelGraph); - */ - describeGraph(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[38]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `getnodemetrics` - * GetNodeMetrics returns node metrics calculated from the graph. Currently - * the only supported metric is betweenness centrality of individual nodes. - * - * @generated from protobuf rpc: GetNodeMetrics(lnrpc.NodeMetricsRequest) returns (lnrpc.NodeMetricsResponse); - */ - getNodeMetrics(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[39]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `getchaninfo` - * GetChanInfo returns the latest authenticated network announcement for the - * given channel identified by its channel ID: an 8-byte integer which - * uniquely identifies the location of transaction's funding output within the - * blockchain. - * - * @generated from protobuf rpc: GetChanInfo(lnrpc.ChanInfoRequest) returns (lnrpc.ChannelEdge); - */ - getChanInfo(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[40]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `getnodeinfo` - * GetNodeInfo returns the latest advertised, aggregated, and authenticated - * channel information for the specified node identified by its public key. - * - * @generated from protobuf rpc: GetNodeInfo(lnrpc.NodeInfoRequest) returns (lnrpc.NodeInfo); - */ - getNodeInfo(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[41]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `queryroutes` - * QueryRoutes attempts to query the daemon's Channel Router for a possible - * route to a target destination capable of carrying a specific amount of - * satoshis. The returned route contains the full details required to craft and - * send an HTLC, also including the necessary information that should be - * present within the Sphinx packet encapsulated within the HTLC. - * - * When using REST, the `dest_custom_records` map type can be set by appending - * `&dest_custom_records[]=` - * to the URL. Unfortunately this map type doesn't appear in the REST API - * documentation because of a bug in the grpc-gateway library. - * - * @generated from protobuf rpc: QueryRoutes(lnrpc.QueryRoutesRequest) returns (lnrpc.QueryRoutesResponse); - */ - queryRoutes(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[42]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `getnetworkinfo` - * GetNetworkInfo returns some basic stats about the known channel graph from - * the point of view of the node. - * - * @generated from protobuf rpc: GetNetworkInfo(lnrpc.NetworkInfoRequest) returns (lnrpc.NetworkInfo); - */ - getNetworkInfo(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[43]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `stop` - * StopDaemon will send a shutdown request to the interrupt handler, triggering - * a graceful shutdown of the daemon. - * - * @generated from protobuf rpc: StopDaemon(lnrpc.StopRequest) returns (lnrpc.StopResponse); - */ - stopDaemon(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[44]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * SubscribeChannelGraph launches a streaming RPC that allows the caller to - * receive notifications upon any changes to the channel graph topology from - * the point of view of the responding node. Events notified include: new - * nodes coming online, nodes updating their authenticated attributes, new - * channels being advertised, updates in the routing policy for a directional - * channel edge, and when channels are closed on-chain. - * - * @generated from protobuf rpc: SubscribeChannelGraph(lnrpc.GraphTopologySubscription) returns (stream lnrpc.GraphTopologyUpdate); - */ - subscribeChannelGraph(input, metadata, options) { - const method = rpc_1.Lightning.methods[45]; - return this.makeServerStreamRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options); - } - /** - * lncli: `debuglevel` - * DebugLevel allows a caller to programmatically set the logging verbosity of - * lnd. The logging can be targeted according to a coarse daemon-wide logging - * level, or in a granular fashion to specify the logging for a target - * sub-system. - * - * @generated from protobuf rpc: DebugLevel(lnrpc.DebugLevelRequest) returns (lnrpc.DebugLevelResponse); - */ - debugLevel(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[46]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `feereport` - * FeeReport allows the caller to obtain a report detailing the current fee - * schedule enforced by the node globally for each channel. - * - * @generated from protobuf rpc: FeeReport(lnrpc.FeeReportRequest) returns (lnrpc.FeeReportResponse); - */ - feeReport(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[47]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `updatechanpolicy` - * UpdateChannelPolicy allows the caller to update the fee schedule and - * channel policies for all channels globally, or a particular channel. - * - * @generated from protobuf rpc: UpdateChannelPolicy(lnrpc.PolicyUpdateRequest) returns (lnrpc.PolicyUpdateResponse); - */ - updateChannelPolicy(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[48]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `fwdinghistory` - * ForwardingHistory allows the caller to query the htlcswitch for a record of - * all HTLCs forwarded within the target time range, and integer offset - * within that time range. If no time-range is specified, then the first chunk - * of the past 24 hrs of forwarding history are returned. - * - * A list of forwarding events are returned. The size of each forwarding event - * is 40 bytes, and the max message size able to be returned in gRPC is 4 MiB. - * As a result each message can only contain 50k entries. Each response has - * the index offset of the last entry. The index offset can be provided to the - * request to allow the caller to skip a series of records. - * - * @generated from protobuf rpc: ForwardingHistory(lnrpc.ForwardingHistoryRequest) returns (lnrpc.ForwardingHistoryResponse); - */ - forwardingHistory(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[49]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `exportchanbackup` - * ExportChannelBackup attempts to return an encrypted static channel backup - * for the target channel identified by it channel point. The backup is - * encrypted with a key generated from the aezeed seed of the user. The - * returned backup can either be restored using the RestoreChannelBackup - * method once lnd is running, or via the InitWallet and UnlockWallet methods - * from the WalletUnlocker service. - * - * @generated from protobuf rpc: ExportChannelBackup(lnrpc.ExportChannelBackupRequest) returns (lnrpc.ChannelBackup); - */ - exportChannelBackup(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[50]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * ExportAllChannelBackups returns static channel backups for all existing - * channels known to lnd. A set of regular singular static channel backups for - * each channel are returned. Additionally, a multi-channel backup is returned - * as well, which contains a single encrypted blob containing the backups of - * each channel. - * - * @generated from protobuf rpc: ExportAllChannelBackups(lnrpc.ChanBackupExportRequest) returns (lnrpc.ChanBackupSnapshot); - */ - exportAllChannelBackups(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[51]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * VerifyChanBackup allows a caller to verify the integrity of a channel backup - * snapshot. This method will accept either a packed Single or a packed Multi. - * Specifying both will result in an error. - * - * @generated from protobuf rpc: VerifyChanBackup(lnrpc.ChanBackupSnapshot) returns (lnrpc.VerifyChanBackupResponse); - */ - verifyChanBackup(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[52]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `restorechanbackup` - * RestoreChannelBackups accepts a set of singular channel backups, or a - * single encrypted multi-chan backup and attempts to recover any funds - * remaining within the channel. If we are able to unpack the backup, then the - * new channel will be shown under listchannels, as well as pending channels. - * - * @generated from protobuf rpc: RestoreChannelBackups(lnrpc.RestoreChanBackupRequest) returns (lnrpc.RestoreBackupResponse); - */ - restoreChannelBackups(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[53]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * - * SubscribeChannelBackups allows a client to sub-subscribe to the most up to - * date information concerning the state of all channel backups. Each time a - * new channel is added, we return the new set of channels, along with a - * multi-chan backup containing the backup info for all channels. Each time a - * channel is closed, we send a new update, which contains new new chan back - * ups, but the updated set of encrypted multi-chan backups with the closed - * channel(s) removed. - * - * @generated from protobuf rpc: SubscribeChannelBackups(lnrpc.ChannelBackupSubscription) returns (stream lnrpc.ChanBackupSnapshot); - */ - subscribeChannelBackups(input, metadata, options) { - const method = rpc_1.Lightning.methods[54]; - return this.makeServerStreamRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options); - } - /** - * lncli: `bakemacaroon` - * BakeMacaroon allows the creation of a new macaroon with custom read and - * write permissions. No first-party caveats are added since this can be done - * offline. - * - * @generated from protobuf rpc: BakeMacaroon(lnrpc.BakeMacaroonRequest) returns (lnrpc.BakeMacaroonResponse); - */ - bakeMacaroon(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[55]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `listmacaroonids` - * ListMacaroonIDs returns all root key IDs that are in use. - * - * @generated from protobuf rpc: ListMacaroonIDs(lnrpc.ListMacaroonIDsRequest) returns (lnrpc.ListMacaroonIDsResponse); - */ - listMacaroonIDs(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[56]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `deletemacaroonid` - * DeleteMacaroonID deletes the specified macaroon ID and invalidates all - * macaroons derived from that ID. - * - * @generated from protobuf rpc: DeleteMacaroonID(lnrpc.DeleteMacaroonIDRequest) returns (lnrpc.DeleteMacaroonIDResponse); - */ - deleteMacaroonID(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[57]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } - /** - * lncli: `listpermissions` - * ListPermissions lists all RPC method URIs and their required macaroon - * permissions to access them. - * - * @generated from protobuf rpc: ListPermissions(lnrpc.ListPermissionsRequest) returns (lnrpc.ListPermissionsResponse); - */ - listPermissions(input, metadata, options, callback) { - const method = rpc_1.Lightning.methods[58]; - return this.makeUnaryRequest(`/${rpc_1.Lightning.typeName}/${method.name}`, (value) => Buffer.from(method.I.toBinary(value, this._binaryOptions)), (value) => method.O.fromBinary(value, this._binaryOptions), input, metadata, options, callback); - } -} -exports.LightningClient = LightningClient; -//# sourceMappingURL=rpc.grpc-client.js.map \ No newline at end of file diff --git a/build/proto/lnd/rpc.grpc-client.js.map b/build/proto/lnd/rpc.grpc-client.js.map deleted file mode 100644 index 5d689bc3..00000000 --- a/build/proto/lnd/rpc.grpc-client.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"rpc.grpc-client.js","sourceRoot":"","sources":["../../../proto/lnd/rpc.grpc-client.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/proto/lnd/rpc.js b/build/proto/lnd/rpc.js deleted file mode 100644 index 0f0b5a6e..00000000 --- a/build/proto/lnd/rpc.js +++ /dev/null @@ -1,12362 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.HTLC = exports.DisconnectPeerResponse = exports.DisconnectPeerRequest = exports.ConnectPeerResponse = exports.ConnectPeerRequest = exports.VerifyMessageResponse = exports.VerifyMessageRequest = exports.SignMessageResponse = exports.SignMessageRequest = exports.NewAddressResponse = exports.NewAddressRequest = exports.ListUnspentResponse = exports.ListUnspentRequest = exports.SendCoinsResponse = exports.SendCoinsRequest = exports.SendManyResponse = exports.SendManyRequest = exports.EstimateFeeResponse = exports.EstimateFeeRequest = exports.LightningAddress = exports.OutPoint = exports.ChannelPoint = exports.ChannelAcceptResponse = exports.ChannelAcceptRequest = exports.SendToRouteRequest = exports.SendResponse = exports.SendRequest = exports.FeeLimit = exports.TransactionDetails = exports.GetTransactionsRequest = exports.Transaction = exports.Utxo = exports.FeatureBit = exports.PaymentFailureReason = exports.InvoiceHTLCState = exports.NodeMetricType = exports.ResolutionOutcome = exports.ResolutionType = exports.Initiator = exports.CommitmentType = exports.AddressType = exports.Failure_FailureCode = exports.HTLCAttempt_HTLCStatus = exports.Payment_PaymentStatus = exports.Invoice_InvoiceState = exports.ChannelEventUpdate_UpdateType = exports.PendingChannelsResponse_ForceClosedChannel_AnchorState = exports.PeerEvent_EventType = exports.Peer_SyncType = exports.ChannelCloseSummary_ClosureType = void 0; -exports.WalletAccountBalance = exports.ChannelEventUpdate = exports.ChannelEventSubscription = exports.PendingChannelsResponse_ForceClosedChannel = exports.PendingChannelsResponse_ClosedChannel = exports.PendingChannelsResponse_Commitments = exports.PendingChannelsResponse_WaitingCloseChannel = exports.PendingChannelsResponse_PendingOpenChannel = exports.PendingChannelsResponse_PendingChannel = exports.PendingChannelsResponse = exports.PendingChannelsRequest = exports.PendingHTLC = exports.FundingStateStepResp = exports.FundingTransitionMsg = exports.FundingPsbtFinalize = exports.FundingPsbtVerify = exports.FundingShimCancel = exports.FundingShim = exports.PsbtShim = exports.ChanPointShim = exports.KeyDescriptor = exports.KeyLocator = exports.OpenStatusUpdate = exports.OpenChannelRequest = exports.ReadyForPsbtFunding = exports.PendingUpdate = exports.CloseStatusUpdate = exports.CloseChannelRequest = exports.ChannelCloseUpdate = exports.ChannelOpenUpdate = exports.ConfirmationUpdate = exports.Chain = exports.GetRecoveryInfoResponse = exports.GetRecoveryInfoRequest = exports.GetInfoResponse = exports.GetInfoRequest = exports.PeerEvent = exports.PeerEventSubscription = exports.ListPeersResponse = exports.ListPeersRequest = exports.TimestampedError = exports.Peer = exports.ClosedChannelsResponse = exports.ClosedChannelsRequest = exports.Resolution = exports.ChannelCloseSummary = exports.ListChannelsResponse = exports.ListChannelsRequest = exports.Channel = exports.ChannelConstraints = void 0; -exports.DeleteAllPaymentsResponse = exports.DeleteAllPaymentsRequest = exports.ListPaymentsResponse = exports.ListPaymentsRequest = exports.HTLCAttempt = exports.Payment = exports.InvoiceSubscription = exports.ListInvoiceResponse = exports.ListInvoiceRequest = exports.PaymentHash = exports.AddInvoiceResponse = exports.AMP = exports.InvoiceHTLC = exports.Invoice = exports.RouteHint = exports.HopHint = exports.ClosedChannelUpdate = exports.ChannelEdgeUpdate = exports.NodeUpdate = exports.GraphTopologyUpdate = exports.GraphTopologySubscription = exports.StopResponse = exports.StopRequest = exports.NetworkInfo = exports.NetworkInfoRequest = exports.ChanInfoRequest = exports.FloatMetric = exports.NodeMetricsResponse = exports.NodeMetricsRequest = exports.ChannelGraph = exports.ChannelGraphRequest = exports.ChannelEdge = exports.RoutingPolicy = exports.NodeAddress = exports.LightningNode = exports.NodeInfo = exports.NodeInfoRequest = exports.Route = exports.AMPRecord = exports.MPPRecord = exports.Hop = exports.QueryRoutesResponse = exports.EdgeLocator = exports.NodePair = exports.QueryRoutesRequest = exports.ChannelBalanceResponse = exports.ChannelBalanceRequest = exports.Amount = exports.WalletBalanceResponse = exports.WalletBalanceRequest = void 0; -exports.Lightning = exports.Op = exports.MacaroonId = exports.ChannelUpdate = exports.Failure = exports.ListPermissionsResponse = exports.ListPermissionsRequest = exports.MacaroonPermissionList = exports.DeleteMacaroonIDResponse = exports.DeleteMacaroonIDRequest = exports.ListMacaroonIDsResponse = exports.ListMacaroonIDsRequest = exports.BakeMacaroonResponse = exports.BakeMacaroonRequest = exports.MacaroonPermission = exports.VerifyChanBackupResponse = exports.ChannelBackupSubscription = exports.RestoreBackupResponse = exports.RestoreChanBackupRequest = exports.ChannelBackups = exports.ChanBackupSnapshot = exports.ChanBackupExportRequest = exports.MultiChanBackup = exports.ChannelBackup = exports.ExportChannelBackupRequest = exports.ForwardingHistoryResponse = exports.ForwardingEvent = exports.ForwardingHistoryRequest = exports.PolicyUpdateResponse = exports.PolicyUpdateRequest = exports.FeeReportResponse = exports.ChannelFeeReport = exports.FeeReportRequest = exports.Feature = exports.PayReq = exports.PayReqString = exports.DebugLevelResponse = exports.DebugLevelRequest = exports.AbandonChannelResponse = exports.AbandonChannelRequest = void 0; -// @generated by protobuf-ts 2.5.0 with parameter long_type_string -// @generated from protobuf file "rpc.proto" (package "lnrpc", syntax proto3) -// tslint:disable -const runtime_rpc_1 = require("@protobuf-ts/runtime-rpc"); -const runtime_1 = require("@protobuf-ts/runtime"); -const runtime_2 = require("@protobuf-ts/runtime"); -const runtime_3 = require("@protobuf-ts/runtime"); -const runtime_4 = require("@protobuf-ts/runtime"); -const runtime_5 = require("@protobuf-ts/runtime"); -/** - * @generated from protobuf enum lnrpc.ChannelCloseSummary.ClosureType - */ -var ChannelCloseSummary_ClosureType; -(function (ChannelCloseSummary_ClosureType) { - /** - * @generated from protobuf enum value: COOPERATIVE_CLOSE = 0; - */ - ChannelCloseSummary_ClosureType[ChannelCloseSummary_ClosureType["COOPERATIVE_CLOSE"] = 0] = "COOPERATIVE_CLOSE"; - /** - * @generated from protobuf enum value: LOCAL_FORCE_CLOSE = 1; - */ - ChannelCloseSummary_ClosureType[ChannelCloseSummary_ClosureType["LOCAL_FORCE_CLOSE"] = 1] = "LOCAL_FORCE_CLOSE"; - /** - * @generated from protobuf enum value: REMOTE_FORCE_CLOSE = 2; - */ - ChannelCloseSummary_ClosureType[ChannelCloseSummary_ClosureType["REMOTE_FORCE_CLOSE"] = 2] = "REMOTE_FORCE_CLOSE"; - /** - * @generated from protobuf enum value: BREACH_CLOSE = 3; - */ - ChannelCloseSummary_ClosureType[ChannelCloseSummary_ClosureType["BREACH_CLOSE"] = 3] = "BREACH_CLOSE"; - /** - * @generated from protobuf enum value: FUNDING_CANCELED = 4; - */ - ChannelCloseSummary_ClosureType[ChannelCloseSummary_ClosureType["FUNDING_CANCELED"] = 4] = "FUNDING_CANCELED"; - /** - * @generated from protobuf enum value: ABANDONED = 5; - */ - ChannelCloseSummary_ClosureType[ChannelCloseSummary_ClosureType["ABANDONED"] = 5] = "ABANDONED"; -})(ChannelCloseSummary_ClosureType = exports.ChannelCloseSummary_ClosureType || (exports.ChannelCloseSummary_ClosureType = {})); -/** - * @generated from protobuf enum lnrpc.Peer.SyncType - */ -var Peer_SyncType; -(function (Peer_SyncType) { - /** - * - * Denotes that we cannot determine the peer's current sync type. - * - * @generated from protobuf enum value: UNKNOWN_SYNC = 0; - */ - Peer_SyncType[Peer_SyncType["UNKNOWN_SYNC"] = 0] = "UNKNOWN_SYNC"; - /** - * - * Denotes that we are actively receiving new graph updates from the peer. - * - * @generated from protobuf enum value: ACTIVE_SYNC = 1; - */ - Peer_SyncType[Peer_SyncType["ACTIVE_SYNC"] = 1] = "ACTIVE_SYNC"; - /** - * - * Denotes that we are not receiving new graph updates from the peer. - * - * @generated from protobuf enum value: PASSIVE_SYNC = 2; - */ - Peer_SyncType[Peer_SyncType["PASSIVE_SYNC"] = 2] = "PASSIVE_SYNC"; - /** - * - * Denotes that this peer is pinned into an active sync. - * - * @generated from protobuf enum value: PINNED_SYNC = 3; - */ - Peer_SyncType[Peer_SyncType["PINNED_SYNC"] = 3] = "PINNED_SYNC"; -})(Peer_SyncType = exports.Peer_SyncType || (exports.Peer_SyncType = {})); -/** - * @generated from protobuf enum lnrpc.PeerEvent.EventType - */ -var PeerEvent_EventType; -(function (PeerEvent_EventType) { - /** - * @generated from protobuf enum value: PEER_ONLINE = 0; - */ - PeerEvent_EventType[PeerEvent_EventType["PEER_ONLINE"] = 0] = "PEER_ONLINE"; - /** - * @generated from protobuf enum value: PEER_OFFLINE = 1; - */ - PeerEvent_EventType[PeerEvent_EventType["PEER_OFFLINE"] = 1] = "PEER_OFFLINE"; -})(PeerEvent_EventType = exports.PeerEvent_EventType || (exports.PeerEvent_EventType = {})); -/** - * @generated from protobuf enum lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState - */ -var PendingChannelsResponse_ForceClosedChannel_AnchorState; -(function (PendingChannelsResponse_ForceClosedChannel_AnchorState) { - /** - * @generated from protobuf enum value: LIMBO = 0; - */ - PendingChannelsResponse_ForceClosedChannel_AnchorState[PendingChannelsResponse_ForceClosedChannel_AnchorState["LIMBO"] = 0] = "LIMBO"; - /** - * @generated from protobuf enum value: RECOVERED = 1; - */ - PendingChannelsResponse_ForceClosedChannel_AnchorState[PendingChannelsResponse_ForceClosedChannel_AnchorState["RECOVERED"] = 1] = "RECOVERED"; - /** - * @generated from protobuf enum value: LOST = 2; - */ - PendingChannelsResponse_ForceClosedChannel_AnchorState[PendingChannelsResponse_ForceClosedChannel_AnchorState["LOST"] = 2] = "LOST"; -})(PendingChannelsResponse_ForceClosedChannel_AnchorState = exports.PendingChannelsResponse_ForceClosedChannel_AnchorState || (exports.PendingChannelsResponse_ForceClosedChannel_AnchorState = {})); -/** - * @generated from protobuf enum lnrpc.ChannelEventUpdate.UpdateType - */ -var ChannelEventUpdate_UpdateType; -(function (ChannelEventUpdate_UpdateType) { - /** - * @generated from protobuf enum value: OPEN_CHANNEL = 0; - */ - ChannelEventUpdate_UpdateType[ChannelEventUpdate_UpdateType["OPEN_CHANNEL"] = 0] = "OPEN_CHANNEL"; - /** - * @generated from protobuf enum value: CLOSED_CHANNEL = 1; - */ - ChannelEventUpdate_UpdateType[ChannelEventUpdate_UpdateType["CLOSED_CHANNEL"] = 1] = "CLOSED_CHANNEL"; - /** - * @generated from protobuf enum value: ACTIVE_CHANNEL = 2; - */ - ChannelEventUpdate_UpdateType[ChannelEventUpdate_UpdateType["ACTIVE_CHANNEL"] = 2] = "ACTIVE_CHANNEL"; - /** - * @generated from protobuf enum value: INACTIVE_CHANNEL = 3; - */ - ChannelEventUpdate_UpdateType[ChannelEventUpdate_UpdateType["INACTIVE_CHANNEL"] = 3] = "INACTIVE_CHANNEL"; - /** - * @generated from protobuf enum value: PENDING_OPEN_CHANNEL = 4; - */ - ChannelEventUpdate_UpdateType[ChannelEventUpdate_UpdateType["PENDING_OPEN_CHANNEL"] = 4] = "PENDING_OPEN_CHANNEL"; -})(ChannelEventUpdate_UpdateType = exports.ChannelEventUpdate_UpdateType || (exports.ChannelEventUpdate_UpdateType = {})); -/** - * @generated from protobuf enum lnrpc.Invoice.InvoiceState - */ -var Invoice_InvoiceState; -(function (Invoice_InvoiceState) { - /** - * @generated from protobuf enum value: OPEN = 0; - */ - Invoice_InvoiceState[Invoice_InvoiceState["OPEN"] = 0] = "OPEN"; - /** - * @generated from protobuf enum value: SETTLED = 1; - */ - Invoice_InvoiceState[Invoice_InvoiceState["SETTLED"] = 1] = "SETTLED"; - /** - * @generated from protobuf enum value: CANCELED = 2; - */ - Invoice_InvoiceState[Invoice_InvoiceState["CANCELED"] = 2] = "CANCELED"; - /** - * @generated from protobuf enum value: ACCEPTED = 3; - */ - Invoice_InvoiceState[Invoice_InvoiceState["ACCEPTED"] = 3] = "ACCEPTED"; -})(Invoice_InvoiceState = exports.Invoice_InvoiceState || (exports.Invoice_InvoiceState = {})); -/** - * @generated from protobuf enum lnrpc.Payment.PaymentStatus - */ -var Payment_PaymentStatus; -(function (Payment_PaymentStatus) { - /** - * @generated from protobuf enum value: UNKNOWN = 0; - */ - Payment_PaymentStatus[Payment_PaymentStatus["UNKNOWN"] = 0] = "UNKNOWN"; - /** - * @generated from protobuf enum value: IN_FLIGHT = 1; - */ - Payment_PaymentStatus[Payment_PaymentStatus["IN_FLIGHT"] = 1] = "IN_FLIGHT"; - /** - * @generated from protobuf enum value: SUCCEEDED = 2; - */ - Payment_PaymentStatus[Payment_PaymentStatus["SUCCEEDED"] = 2] = "SUCCEEDED"; - /** - * @generated from protobuf enum value: FAILED = 3; - */ - Payment_PaymentStatus[Payment_PaymentStatus["FAILED"] = 3] = "FAILED"; -})(Payment_PaymentStatus = exports.Payment_PaymentStatus || (exports.Payment_PaymentStatus = {})); -/** - * @generated from protobuf enum lnrpc.HTLCAttempt.HTLCStatus - */ -var HTLCAttempt_HTLCStatus; -(function (HTLCAttempt_HTLCStatus) { - /** - * @generated from protobuf enum value: IN_FLIGHT = 0; - */ - HTLCAttempt_HTLCStatus[HTLCAttempt_HTLCStatus["IN_FLIGHT"] = 0] = "IN_FLIGHT"; - /** - * @generated from protobuf enum value: SUCCEEDED = 1; - */ - HTLCAttempt_HTLCStatus[HTLCAttempt_HTLCStatus["SUCCEEDED"] = 1] = "SUCCEEDED"; - /** - * @generated from protobuf enum value: FAILED = 2; - */ - HTLCAttempt_HTLCStatus[HTLCAttempt_HTLCStatus["FAILED"] = 2] = "FAILED"; -})(HTLCAttempt_HTLCStatus = exports.HTLCAttempt_HTLCStatus || (exports.HTLCAttempt_HTLCStatus = {})); -/** - * @generated from protobuf enum lnrpc.Failure.FailureCode - */ -var Failure_FailureCode; -(function (Failure_FailureCode) { - /** - * - * The numbers assigned in this enumeration match the failure codes as - * defined in BOLT #4. Because protobuf 3 requires enums to start with 0, - * a RESERVED value is added. - * - * @generated from protobuf enum value: RESERVED = 0; - */ - Failure_FailureCode[Failure_FailureCode["RESERVED"] = 0] = "RESERVED"; - /** - * @generated from protobuf enum value: INCORRECT_OR_UNKNOWN_PAYMENT_DETAILS = 1; - */ - Failure_FailureCode[Failure_FailureCode["INCORRECT_OR_UNKNOWN_PAYMENT_DETAILS"] = 1] = "INCORRECT_OR_UNKNOWN_PAYMENT_DETAILS"; - /** - * @generated from protobuf enum value: INCORRECT_PAYMENT_AMOUNT = 2; - */ - Failure_FailureCode[Failure_FailureCode["INCORRECT_PAYMENT_AMOUNT"] = 2] = "INCORRECT_PAYMENT_AMOUNT"; - /** - * @generated from protobuf enum value: FINAL_INCORRECT_CLTV_EXPIRY = 3; - */ - Failure_FailureCode[Failure_FailureCode["FINAL_INCORRECT_CLTV_EXPIRY"] = 3] = "FINAL_INCORRECT_CLTV_EXPIRY"; - /** - * @generated from protobuf enum value: FINAL_INCORRECT_HTLC_AMOUNT = 4; - */ - Failure_FailureCode[Failure_FailureCode["FINAL_INCORRECT_HTLC_AMOUNT"] = 4] = "FINAL_INCORRECT_HTLC_AMOUNT"; - /** - * @generated from protobuf enum value: FINAL_EXPIRY_TOO_SOON = 5; - */ - Failure_FailureCode[Failure_FailureCode["FINAL_EXPIRY_TOO_SOON"] = 5] = "FINAL_EXPIRY_TOO_SOON"; - /** - * @generated from protobuf enum value: INVALID_REALM = 6; - */ - Failure_FailureCode[Failure_FailureCode["INVALID_REALM"] = 6] = "INVALID_REALM"; - /** - * @generated from protobuf enum value: EXPIRY_TOO_SOON = 7; - */ - Failure_FailureCode[Failure_FailureCode["EXPIRY_TOO_SOON"] = 7] = "EXPIRY_TOO_SOON"; - /** - * @generated from protobuf enum value: INVALID_ONION_VERSION = 8; - */ - Failure_FailureCode[Failure_FailureCode["INVALID_ONION_VERSION"] = 8] = "INVALID_ONION_VERSION"; - /** - * @generated from protobuf enum value: INVALID_ONION_HMAC = 9; - */ - Failure_FailureCode[Failure_FailureCode["INVALID_ONION_HMAC"] = 9] = "INVALID_ONION_HMAC"; - /** - * @generated from protobuf enum value: INVALID_ONION_KEY = 10; - */ - Failure_FailureCode[Failure_FailureCode["INVALID_ONION_KEY"] = 10] = "INVALID_ONION_KEY"; - /** - * @generated from protobuf enum value: AMOUNT_BELOW_MINIMUM = 11; - */ - Failure_FailureCode[Failure_FailureCode["AMOUNT_BELOW_MINIMUM"] = 11] = "AMOUNT_BELOW_MINIMUM"; - /** - * @generated from protobuf enum value: FEE_INSUFFICIENT = 12; - */ - Failure_FailureCode[Failure_FailureCode["FEE_INSUFFICIENT"] = 12] = "FEE_INSUFFICIENT"; - /** - * @generated from protobuf enum value: INCORRECT_CLTV_EXPIRY = 13; - */ - Failure_FailureCode[Failure_FailureCode["INCORRECT_CLTV_EXPIRY"] = 13] = "INCORRECT_CLTV_EXPIRY"; - /** - * @generated from protobuf enum value: CHANNEL_DISABLED = 14; - */ - Failure_FailureCode[Failure_FailureCode["CHANNEL_DISABLED"] = 14] = "CHANNEL_DISABLED"; - /** - * @generated from protobuf enum value: TEMPORARY_CHANNEL_FAILURE = 15; - */ - Failure_FailureCode[Failure_FailureCode["TEMPORARY_CHANNEL_FAILURE"] = 15] = "TEMPORARY_CHANNEL_FAILURE"; - /** - * @generated from protobuf enum value: REQUIRED_NODE_FEATURE_MISSING = 16; - */ - Failure_FailureCode[Failure_FailureCode["REQUIRED_NODE_FEATURE_MISSING"] = 16] = "REQUIRED_NODE_FEATURE_MISSING"; - /** - * @generated from protobuf enum value: REQUIRED_CHANNEL_FEATURE_MISSING = 17; - */ - Failure_FailureCode[Failure_FailureCode["REQUIRED_CHANNEL_FEATURE_MISSING"] = 17] = "REQUIRED_CHANNEL_FEATURE_MISSING"; - /** - * @generated from protobuf enum value: UNKNOWN_NEXT_PEER = 18; - */ - Failure_FailureCode[Failure_FailureCode["UNKNOWN_NEXT_PEER"] = 18] = "UNKNOWN_NEXT_PEER"; - /** - * @generated from protobuf enum value: TEMPORARY_NODE_FAILURE = 19; - */ - Failure_FailureCode[Failure_FailureCode["TEMPORARY_NODE_FAILURE"] = 19] = "TEMPORARY_NODE_FAILURE"; - /** - * @generated from protobuf enum value: PERMANENT_NODE_FAILURE = 20; - */ - Failure_FailureCode[Failure_FailureCode["PERMANENT_NODE_FAILURE"] = 20] = "PERMANENT_NODE_FAILURE"; - /** - * @generated from protobuf enum value: PERMANENT_CHANNEL_FAILURE = 21; - */ - Failure_FailureCode[Failure_FailureCode["PERMANENT_CHANNEL_FAILURE"] = 21] = "PERMANENT_CHANNEL_FAILURE"; - /** - * @generated from protobuf enum value: EXPIRY_TOO_FAR = 22; - */ - Failure_FailureCode[Failure_FailureCode["EXPIRY_TOO_FAR"] = 22] = "EXPIRY_TOO_FAR"; - /** - * @generated from protobuf enum value: MPP_TIMEOUT = 23; - */ - Failure_FailureCode[Failure_FailureCode["MPP_TIMEOUT"] = 23] = "MPP_TIMEOUT"; - /** - * @generated from protobuf enum value: INVALID_ONION_PAYLOAD = 24; - */ - Failure_FailureCode[Failure_FailureCode["INVALID_ONION_PAYLOAD"] = 24] = "INVALID_ONION_PAYLOAD"; - /** - * - * An internal error occurred. - * - * @generated from protobuf enum value: INTERNAL_FAILURE = 997; - */ - Failure_FailureCode[Failure_FailureCode["INTERNAL_FAILURE"] = 997] = "INTERNAL_FAILURE"; - /** - * - * The error source is known, but the failure itself couldn't be decoded. - * - * @generated from protobuf enum value: UNKNOWN_FAILURE = 998; - */ - Failure_FailureCode[Failure_FailureCode["UNKNOWN_FAILURE"] = 998] = "UNKNOWN_FAILURE"; - /** - * - * An unreadable failure result is returned if the received failure message - * cannot be decrypted. In that case the error source is unknown. - * - * @generated from protobuf enum value: UNREADABLE_FAILURE = 999; - */ - Failure_FailureCode[Failure_FailureCode["UNREADABLE_FAILURE"] = 999] = "UNREADABLE_FAILURE"; -})(Failure_FailureCode = exports.Failure_FailureCode || (exports.Failure_FailureCode = {})); -/** - * - * `AddressType` has to be one of: - * - * - `p2wkh`: Pay to witness key hash (`WITNESS_PUBKEY_HASH` = 0) - * - `np2wkh`: Pay to nested witness key hash (`NESTED_PUBKEY_HASH` = 1) - * - * @generated from protobuf enum lnrpc.AddressType - */ -var AddressType; -(function (AddressType) { - /** - * @generated from protobuf enum value: WITNESS_PUBKEY_HASH = 0; - */ - AddressType[AddressType["WITNESS_PUBKEY_HASH"] = 0] = "WITNESS_PUBKEY_HASH"; - /** - * @generated from protobuf enum value: NESTED_PUBKEY_HASH = 1; - */ - AddressType[AddressType["NESTED_PUBKEY_HASH"] = 1] = "NESTED_PUBKEY_HASH"; - /** - * @generated from protobuf enum value: UNUSED_WITNESS_PUBKEY_HASH = 2; - */ - AddressType[AddressType["UNUSED_WITNESS_PUBKEY_HASH"] = 2] = "UNUSED_WITNESS_PUBKEY_HASH"; - /** - * @generated from protobuf enum value: UNUSED_NESTED_PUBKEY_HASH = 3; - */ - AddressType[AddressType["UNUSED_NESTED_PUBKEY_HASH"] = 3] = "UNUSED_NESTED_PUBKEY_HASH"; -})(AddressType = exports.AddressType || (exports.AddressType = {})); -/** - * @generated from protobuf enum lnrpc.CommitmentType - */ -var CommitmentType; -(function (CommitmentType) { - /** - * - * A channel using the legacy commitment format having tweaked to_remote - * keys. - * - * @generated from protobuf enum value: LEGACY = 0; - */ - CommitmentType[CommitmentType["LEGACY"] = 0] = "LEGACY"; - /** - * - * A channel that uses the modern commitment format where the key in the - * output of the remote party does not change each state. This makes back - * up and recovery easier as when the channel is closed, the funds go - * directly to that key. - * - * @generated from protobuf enum value: STATIC_REMOTE_KEY = 1; - */ - CommitmentType[CommitmentType["STATIC_REMOTE_KEY"] = 1] = "STATIC_REMOTE_KEY"; - /** - * - * A channel that uses a commitment format that has anchor outputs on the - * commitments, allowing fee bumping after a force close transaction has - * been broadcast. - * - * @generated from protobuf enum value: ANCHORS = 2; - */ - CommitmentType[CommitmentType["ANCHORS"] = 2] = "ANCHORS"; - /** - * - * Returned when the commitment type isn't known or unavailable. - * - * @generated from protobuf enum value: UNKNOWN_COMMITMENT_TYPE = 999; - */ - CommitmentType[CommitmentType["UNKNOWN_COMMITMENT_TYPE"] = 999] = "UNKNOWN_COMMITMENT_TYPE"; -})(CommitmentType = exports.CommitmentType || (exports.CommitmentType = {})); -/** - * @generated from protobuf enum lnrpc.Initiator - */ -var Initiator; -(function (Initiator) { - /** - * @generated from protobuf enum value: INITIATOR_UNKNOWN = 0; - */ - Initiator[Initiator["UNKNOWN"] = 0] = "UNKNOWN"; - /** - * @generated from protobuf enum value: INITIATOR_LOCAL = 1; - */ - Initiator[Initiator["LOCAL"] = 1] = "LOCAL"; - /** - * @generated from protobuf enum value: INITIATOR_REMOTE = 2; - */ - Initiator[Initiator["REMOTE"] = 2] = "REMOTE"; - /** - * @generated from protobuf enum value: INITIATOR_BOTH = 3; - */ - Initiator[Initiator["BOTH"] = 3] = "BOTH"; -})(Initiator = exports.Initiator || (exports.Initiator = {})); -/** - * @generated from protobuf enum lnrpc.ResolutionType - */ -var ResolutionType; -(function (ResolutionType) { - /** - * @generated from protobuf enum value: TYPE_UNKNOWN = 0; - */ - ResolutionType[ResolutionType["TYPE_UNKNOWN"] = 0] = "TYPE_UNKNOWN"; - /** - * We resolved an anchor output. - * - * @generated from protobuf enum value: ANCHOR = 1; - */ - ResolutionType[ResolutionType["ANCHOR"] = 1] = "ANCHOR"; - /** - * - * We are resolving an incoming htlc on chain. This if this htlc is - * claimed, we swept the incoming htlc with the preimage. If it is timed - * out, our peer swept the timeout path. - * - * @generated from protobuf enum value: INCOMING_HTLC = 2; - */ - ResolutionType[ResolutionType["INCOMING_HTLC"] = 2] = "INCOMING_HTLC"; - /** - * - * We are resolving an outgoing htlc on chain. If this htlc is claimed, - * the remote party swept the htlc with the preimage. If it is timed out, - * we swept it with the timeout path. - * - * @generated from protobuf enum value: OUTGOING_HTLC = 3; - */ - ResolutionType[ResolutionType["OUTGOING_HTLC"] = 3] = "OUTGOING_HTLC"; - /** - * We force closed and need to sweep our time locked commitment output. - * - * @generated from protobuf enum value: COMMIT = 4; - */ - ResolutionType[ResolutionType["COMMIT"] = 4] = "COMMIT"; -})(ResolutionType = exports.ResolutionType || (exports.ResolutionType = {})); -/** - * @generated from protobuf enum lnrpc.ResolutionOutcome - */ -var ResolutionOutcome; -(function (ResolutionOutcome) { - /** - * Outcome unknown. - * - * @generated from protobuf enum value: OUTCOME_UNKNOWN = 0; - */ - ResolutionOutcome[ResolutionOutcome["OUTCOME_UNKNOWN"] = 0] = "OUTCOME_UNKNOWN"; - /** - * An output was claimed on chain. - * - * @generated from protobuf enum value: CLAIMED = 1; - */ - ResolutionOutcome[ResolutionOutcome["CLAIMED"] = 1] = "CLAIMED"; - /** - * An output was left unclaimed on chain. - * - * @generated from protobuf enum value: UNCLAIMED = 2; - */ - ResolutionOutcome[ResolutionOutcome["UNCLAIMED"] = 2] = "UNCLAIMED"; - /** - * - * ResolverOutcomeAbandoned indicates that an output that we did not - * claim on chain, for example an anchor that we did not sweep and a - * third party claimed on chain, or a htlc that we could not decode - * so left unclaimed. - * - * @generated from protobuf enum value: ABANDONED = 3; - */ - ResolutionOutcome[ResolutionOutcome["ABANDONED"] = 3] = "ABANDONED"; - /** - * - * If we force closed our channel, our htlcs need to be claimed in two - * stages. This outcome represents the broadcast of a timeout or success - * transaction for this two stage htlc claim. - * - * @generated from protobuf enum value: FIRST_STAGE = 4; - */ - ResolutionOutcome[ResolutionOutcome["FIRST_STAGE"] = 4] = "FIRST_STAGE"; - /** - * A htlc was timed out on chain. - * - * @generated from protobuf enum value: TIMEOUT = 5; - */ - ResolutionOutcome[ResolutionOutcome["TIMEOUT"] = 5] = "TIMEOUT"; -})(ResolutionOutcome = exports.ResolutionOutcome || (exports.ResolutionOutcome = {})); -/** - * @generated from protobuf enum lnrpc.NodeMetricType - */ -var NodeMetricType; -(function (NodeMetricType) { - /** - * @generated from protobuf enum value: UNKNOWN = 0; - */ - NodeMetricType[NodeMetricType["UNKNOWN"] = 0] = "UNKNOWN"; - /** - * @generated from protobuf enum value: BETWEENNESS_CENTRALITY = 1; - */ - NodeMetricType[NodeMetricType["BETWEENNESS_CENTRALITY"] = 1] = "BETWEENNESS_CENTRALITY"; -})(NodeMetricType = exports.NodeMetricType || (exports.NodeMetricType = {})); -/** - * @generated from protobuf enum lnrpc.InvoiceHTLCState - */ -var InvoiceHTLCState; -(function (InvoiceHTLCState) { - /** - * @generated from protobuf enum value: ACCEPTED = 0; - */ - InvoiceHTLCState[InvoiceHTLCState["ACCEPTED"] = 0] = "ACCEPTED"; - /** - * @generated from protobuf enum value: SETTLED = 1; - */ - InvoiceHTLCState[InvoiceHTLCState["SETTLED"] = 1] = "SETTLED"; - /** - * @generated from protobuf enum value: CANCELED = 2; - */ - InvoiceHTLCState[InvoiceHTLCState["CANCELED"] = 2] = "CANCELED"; -})(InvoiceHTLCState = exports.InvoiceHTLCState || (exports.InvoiceHTLCState = {})); -/** - * @generated from protobuf enum lnrpc.PaymentFailureReason - */ -var PaymentFailureReason; -(function (PaymentFailureReason) { - /** - * - * Payment isn't failed (yet). - * - * @generated from protobuf enum value: FAILURE_REASON_NONE = 0; - */ - PaymentFailureReason[PaymentFailureReason["FAILURE_REASON_NONE"] = 0] = "FAILURE_REASON_NONE"; - /** - * - * There are more routes to try, but the payment timeout was exceeded. - * - * @generated from protobuf enum value: FAILURE_REASON_TIMEOUT = 1; - */ - PaymentFailureReason[PaymentFailureReason["FAILURE_REASON_TIMEOUT"] = 1] = "FAILURE_REASON_TIMEOUT"; - /** - * - * All possible routes were tried and failed permanently. Or were no - * routes to the destination at all. - * - * @generated from protobuf enum value: FAILURE_REASON_NO_ROUTE = 2; - */ - PaymentFailureReason[PaymentFailureReason["FAILURE_REASON_NO_ROUTE"] = 2] = "FAILURE_REASON_NO_ROUTE"; - /** - * - * A non-recoverable error has occured. - * - * @generated from protobuf enum value: FAILURE_REASON_ERROR = 3; - */ - PaymentFailureReason[PaymentFailureReason["FAILURE_REASON_ERROR"] = 3] = "FAILURE_REASON_ERROR"; - /** - * - * Payment details incorrect (unknown hash, invalid amt or - * invalid final cltv delta) - * - * @generated from protobuf enum value: FAILURE_REASON_INCORRECT_PAYMENT_DETAILS = 4; - */ - PaymentFailureReason[PaymentFailureReason["FAILURE_REASON_INCORRECT_PAYMENT_DETAILS"] = 4] = "FAILURE_REASON_INCORRECT_PAYMENT_DETAILS"; - /** - * - * Insufficient local balance. - * - * @generated from protobuf enum value: FAILURE_REASON_INSUFFICIENT_BALANCE = 5; - */ - PaymentFailureReason[PaymentFailureReason["FAILURE_REASON_INSUFFICIENT_BALANCE"] = 5] = "FAILURE_REASON_INSUFFICIENT_BALANCE"; -})(PaymentFailureReason = exports.PaymentFailureReason || (exports.PaymentFailureReason = {})); -/** - * @generated from protobuf enum lnrpc.FeatureBit - */ -var FeatureBit; -(function (FeatureBit) { - /** - * @generated from protobuf enum value: DATALOSS_PROTECT_REQ = 0; - */ - FeatureBit[FeatureBit["DATALOSS_PROTECT_REQ"] = 0] = "DATALOSS_PROTECT_REQ"; - /** - * @generated from protobuf enum value: DATALOSS_PROTECT_OPT = 1; - */ - FeatureBit[FeatureBit["DATALOSS_PROTECT_OPT"] = 1] = "DATALOSS_PROTECT_OPT"; - /** - * @generated from protobuf enum value: INITIAL_ROUING_SYNC = 3; - */ - FeatureBit[FeatureBit["INITIAL_ROUING_SYNC"] = 3] = "INITIAL_ROUING_SYNC"; - /** - * @generated from protobuf enum value: UPFRONT_SHUTDOWN_SCRIPT_REQ = 4; - */ - FeatureBit[FeatureBit["UPFRONT_SHUTDOWN_SCRIPT_REQ"] = 4] = "UPFRONT_SHUTDOWN_SCRIPT_REQ"; - /** - * @generated from protobuf enum value: UPFRONT_SHUTDOWN_SCRIPT_OPT = 5; - */ - FeatureBit[FeatureBit["UPFRONT_SHUTDOWN_SCRIPT_OPT"] = 5] = "UPFRONT_SHUTDOWN_SCRIPT_OPT"; - /** - * @generated from protobuf enum value: GOSSIP_QUERIES_REQ = 6; - */ - FeatureBit[FeatureBit["GOSSIP_QUERIES_REQ"] = 6] = "GOSSIP_QUERIES_REQ"; - /** - * @generated from protobuf enum value: GOSSIP_QUERIES_OPT = 7; - */ - FeatureBit[FeatureBit["GOSSIP_QUERIES_OPT"] = 7] = "GOSSIP_QUERIES_OPT"; - /** - * @generated from protobuf enum value: TLV_ONION_REQ = 8; - */ - FeatureBit[FeatureBit["TLV_ONION_REQ"] = 8] = "TLV_ONION_REQ"; - /** - * @generated from protobuf enum value: TLV_ONION_OPT = 9; - */ - FeatureBit[FeatureBit["TLV_ONION_OPT"] = 9] = "TLV_ONION_OPT"; - /** - * @generated from protobuf enum value: EXT_GOSSIP_QUERIES_REQ = 10; - */ - FeatureBit[FeatureBit["EXT_GOSSIP_QUERIES_REQ"] = 10] = "EXT_GOSSIP_QUERIES_REQ"; - /** - * @generated from protobuf enum value: EXT_GOSSIP_QUERIES_OPT = 11; - */ - FeatureBit[FeatureBit["EXT_GOSSIP_QUERIES_OPT"] = 11] = "EXT_GOSSIP_QUERIES_OPT"; - /** - * @generated from protobuf enum value: STATIC_REMOTE_KEY_REQ = 12; - */ - FeatureBit[FeatureBit["STATIC_REMOTE_KEY_REQ"] = 12] = "STATIC_REMOTE_KEY_REQ"; - /** - * @generated from protobuf enum value: STATIC_REMOTE_KEY_OPT = 13; - */ - FeatureBit[FeatureBit["STATIC_REMOTE_KEY_OPT"] = 13] = "STATIC_REMOTE_KEY_OPT"; - /** - * @generated from protobuf enum value: PAYMENT_ADDR_REQ = 14; - */ - FeatureBit[FeatureBit["PAYMENT_ADDR_REQ"] = 14] = "PAYMENT_ADDR_REQ"; - /** - * @generated from protobuf enum value: PAYMENT_ADDR_OPT = 15; - */ - FeatureBit[FeatureBit["PAYMENT_ADDR_OPT"] = 15] = "PAYMENT_ADDR_OPT"; - /** - * @generated from protobuf enum value: MPP_REQ = 16; - */ - FeatureBit[FeatureBit["MPP_REQ"] = 16] = "MPP_REQ"; - /** - * @generated from protobuf enum value: MPP_OPT = 17; - */ - FeatureBit[FeatureBit["MPP_OPT"] = 17] = "MPP_OPT"; - /** - * @generated from protobuf enum value: WUMBO_CHANNELS_REQ = 18; - */ - FeatureBit[FeatureBit["WUMBO_CHANNELS_REQ"] = 18] = "WUMBO_CHANNELS_REQ"; - /** - * @generated from protobuf enum value: WUMBO_CHANNELS_OPT = 19; - */ - FeatureBit[FeatureBit["WUMBO_CHANNELS_OPT"] = 19] = "WUMBO_CHANNELS_OPT"; - /** - * @generated from protobuf enum value: ANCHORS_REQ = 20; - */ - FeatureBit[FeatureBit["ANCHORS_REQ"] = 20] = "ANCHORS_REQ"; - /** - * @generated from protobuf enum value: ANCHORS_OPT = 21; - */ - FeatureBit[FeatureBit["ANCHORS_OPT"] = 21] = "ANCHORS_OPT"; - /** - * @generated from protobuf enum value: ANCHORS_ZERO_FEE_HTLC_REQ = 22; - */ - FeatureBit[FeatureBit["ANCHORS_ZERO_FEE_HTLC_REQ"] = 22] = "ANCHORS_ZERO_FEE_HTLC_REQ"; - /** - * @generated from protobuf enum value: ANCHORS_ZERO_FEE_HTLC_OPT = 23; - */ - FeatureBit[FeatureBit["ANCHORS_ZERO_FEE_HTLC_OPT"] = 23] = "ANCHORS_ZERO_FEE_HTLC_OPT"; - /** - * @generated from protobuf enum value: AMP_REQ = 30; - */ - FeatureBit[FeatureBit["AMP_REQ"] = 30] = "AMP_REQ"; - /** - * @generated from protobuf enum value: AMP_OPT = 31; - */ - FeatureBit[FeatureBit["AMP_OPT"] = 31] = "AMP_OPT"; -})(FeatureBit = exports.FeatureBit || (exports.FeatureBit = {})); -// @generated message type with reflection information, may provide speed optimized methods -class Utxo$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.Utxo", [ - { no: 1, name: "address_type", kind: "enum", T: () => ["lnrpc.AddressType", AddressType] }, - { no: 2, name: "address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "amount_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 4, name: "pk_script", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 5, name: "outpoint", kind: "message", T: () => exports.OutPoint }, - { no: 6, name: "confirmations", kind: "scalar", T: 3 /*ScalarType.INT64*/ } - ]); - } - create(value) { - const message = { addressType: 0, address: "", amountSat: "0", pkScript: "", confirmations: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.AddressType address_type */ 1: - message.addressType = reader.int32(); - break; - case /* string address */ 2: - message.address = reader.string(); - break; - case /* int64 amount_sat */ 3: - message.amountSat = reader.int64().toString(); - break; - case /* string pk_script */ 4: - message.pkScript = reader.string(); - break; - case /* lnrpc.OutPoint outpoint */ 5: - message.outpoint = exports.OutPoint.internalBinaryRead(reader, reader.uint32(), options, message.outpoint); - break; - case /* int64 confirmations */ 6: - message.confirmations = reader.int64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.AddressType address_type = 1; */ - if (message.addressType !== 0) - writer.tag(1, runtime_1.WireType.Varint).int32(message.addressType); - /* string address = 2; */ - if (message.address !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.address); - /* int64 amount_sat = 3; */ - if (message.amountSat !== "0") - writer.tag(3, runtime_1.WireType.Varint).int64(message.amountSat); - /* string pk_script = 4; */ - if (message.pkScript !== "") - writer.tag(4, runtime_1.WireType.LengthDelimited).string(message.pkScript); - /* lnrpc.OutPoint outpoint = 5; */ - if (message.outpoint) - exports.OutPoint.internalBinaryWrite(message.outpoint, writer.tag(5, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* int64 confirmations = 6; */ - if (message.confirmations !== "0") - writer.tag(6, runtime_1.WireType.Varint).int64(message.confirmations); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Utxo - */ -exports.Utxo = new Utxo$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Transaction$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.Transaction", [ - { no: 1, name: "tx_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "amount", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 3, name: "num_confirmations", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 4, name: "block_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 5, name: "block_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 6, name: "time_stamp", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 7, name: "total_fees", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 8, name: "dest_addresses", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ }, - { no: 9, name: "raw_tx_hex", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 10, name: "label", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { txHash: "", amount: "0", numConfirmations: 0, blockHash: "", blockHeight: 0, timeStamp: "0", totalFees: "0", destAddresses: [], rawTxHex: "", label: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string tx_hash */ 1: - message.txHash = reader.string(); - break; - case /* int64 amount */ 2: - message.amount = reader.int64().toString(); - break; - case /* int32 num_confirmations */ 3: - message.numConfirmations = reader.int32(); - break; - case /* string block_hash */ 4: - message.blockHash = reader.string(); - break; - case /* int32 block_height */ 5: - message.blockHeight = reader.int32(); - break; - case /* int64 time_stamp */ 6: - message.timeStamp = reader.int64().toString(); - break; - case /* int64 total_fees */ 7: - message.totalFees = reader.int64().toString(); - break; - case /* repeated string dest_addresses */ 8: - message.destAddresses.push(reader.string()); - break; - case /* string raw_tx_hex */ 9: - message.rawTxHex = reader.string(); - break; - case /* string label */ 10: - message.label = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string tx_hash = 1; */ - if (message.txHash !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.txHash); - /* int64 amount = 2; */ - if (message.amount !== "0") - writer.tag(2, runtime_1.WireType.Varint).int64(message.amount); - /* int32 num_confirmations = 3; */ - if (message.numConfirmations !== 0) - writer.tag(3, runtime_1.WireType.Varint).int32(message.numConfirmations); - /* string block_hash = 4; */ - if (message.blockHash !== "") - writer.tag(4, runtime_1.WireType.LengthDelimited).string(message.blockHash); - /* int32 block_height = 5; */ - if (message.blockHeight !== 0) - writer.tag(5, runtime_1.WireType.Varint).int32(message.blockHeight); - /* int64 time_stamp = 6; */ - if (message.timeStamp !== "0") - writer.tag(6, runtime_1.WireType.Varint).int64(message.timeStamp); - /* int64 total_fees = 7; */ - if (message.totalFees !== "0") - writer.tag(7, runtime_1.WireType.Varint).int64(message.totalFees); - /* repeated string dest_addresses = 8; */ - for (let i = 0; i < message.destAddresses.length; i++) - writer.tag(8, runtime_1.WireType.LengthDelimited).string(message.destAddresses[i]); - /* string raw_tx_hex = 9; */ - if (message.rawTxHex !== "") - writer.tag(9, runtime_1.WireType.LengthDelimited).string(message.rawTxHex); - /* string label = 10; */ - if (message.label !== "") - writer.tag(10, runtime_1.WireType.LengthDelimited).string(message.label); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Transaction - */ -exports.Transaction = new Transaction$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class GetTransactionsRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.GetTransactionsRequest", [ - { no: 1, name: "start_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 2, name: "end_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 3, name: "account", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { startHeight: 0, endHeight: 0, account: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int32 start_height */ 1: - message.startHeight = reader.int32(); - break; - case /* int32 end_height */ 2: - message.endHeight = reader.int32(); - break; - case /* string account */ 3: - message.account = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* int32 start_height = 1; */ - if (message.startHeight !== 0) - writer.tag(1, runtime_1.WireType.Varint).int32(message.startHeight); - /* int32 end_height = 2; */ - if (message.endHeight !== 0) - writer.tag(2, runtime_1.WireType.Varint).int32(message.endHeight); - /* string account = 3; */ - if (message.account !== "") - writer.tag(3, runtime_1.WireType.LengthDelimited).string(message.account); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.GetTransactionsRequest - */ -exports.GetTransactionsRequest = new GetTransactionsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class TransactionDetails$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.TransactionDetails", [ - { no: 1, name: "transactions", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.Transaction } - ]); - } - create(value) { - const message = { transactions: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.Transaction transactions */ 1: - message.transactions.push(exports.Transaction.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated lnrpc.Transaction transactions = 1; */ - for (let i = 0; i < message.transactions.length; i++) - exports.Transaction.internalBinaryWrite(message.transactions[i], writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.TransactionDetails - */ -exports.TransactionDetails = new TransactionDetails$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FeeLimit$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.FeeLimit", [ - { no: 1, name: "fixed", kind: "scalar", oneof: "limit", T: 3 /*ScalarType.INT64*/ }, - { no: 3, name: "fixed_msat", kind: "scalar", oneof: "limit", T: 3 /*ScalarType.INT64*/ }, - { no: 2, name: "percent", kind: "scalar", oneof: "limit", T: 3 /*ScalarType.INT64*/ } - ]); - } - create(value) { - const message = { limit: { oneofKind: undefined } }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 fixed */ 1: - message.limit = { - oneofKind: "fixed", - fixed: reader.int64().toString() - }; - break; - case /* int64 fixed_msat */ 3: - message.limit = { - oneofKind: "fixedMsat", - fixedMsat: reader.int64().toString() - }; - break; - case /* int64 percent */ 2: - message.limit = { - oneofKind: "percent", - percent: reader.int64().toString() - }; - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* int64 fixed = 1; */ - if (message.limit.oneofKind === "fixed") - writer.tag(1, runtime_1.WireType.Varint).int64(message.limit.fixed); - /* int64 fixed_msat = 3; */ - if (message.limit.oneofKind === "fixedMsat") - writer.tag(3, runtime_1.WireType.Varint).int64(message.limit.fixedMsat); - /* int64 percent = 2; */ - if (message.limit.oneofKind === "percent") - writer.tag(2, runtime_1.WireType.Varint).int64(message.limit.percent); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FeeLimit - */ -exports.FeeLimit = new FeeLimit$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.SendRequest", [ - { no: 1, name: "dest", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "dest_string", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "amt", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 12, name: "amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 4, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 5, name: "payment_hash_string", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 6, name: "payment_request", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 7, name: "final_cltv_delta", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 8, name: "fee_limit", kind: "message", T: () => exports.FeeLimit }, - { no: 9, name: "outgoing_chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 13, name: "last_hop_pubkey", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 10, name: "cltv_limit", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 11, name: "dest_custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } }, - { no: 14, name: "allow_self_payment", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 15, name: "dest_features", kind: "enum", repeat: 1 /*RepeatType.PACKED*/, T: () => ["lnrpc.FeatureBit", FeatureBit] }, - { no: 16, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { dest: new Uint8Array(0), destString: "", amt: "0", amtMsat: "0", paymentHash: new Uint8Array(0), paymentHashString: "", paymentRequest: "", finalCltvDelta: 0, outgoingChanId: "0", lastHopPubkey: new Uint8Array(0), cltvLimit: 0, destCustomRecords: {}, allowSelfPayment: false, destFeatures: [], paymentAddr: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes dest */ 1: - message.dest = reader.bytes(); - break; - case /* string dest_string = 2 [deprecated = true];*/ 2: - message.destString = reader.string(); - break; - case /* int64 amt */ 3: - message.amt = reader.int64().toString(); - break; - case /* int64 amt_msat */ 12: - message.amtMsat = reader.int64().toString(); - break; - case /* bytes payment_hash */ 4: - message.paymentHash = reader.bytes(); - break; - case /* string payment_hash_string = 5 [deprecated = true];*/ 5: - message.paymentHashString = reader.string(); - break; - case /* string payment_request */ 6: - message.paymentRequest = reader.string(); - break; - case /* int32 final_cltv_delta */ 7: - message.finalCltvDelta = reader.int32(); - break; - case /* lnrpc.FeeLimit fee_limit */ 8: - message.feeLimit = exports.FeeLimit.internalBinaryRead(reader, reader.uint32(), options, message.feeLimit); - break; - case /* uint64 outgoing_chan_id = 9 [jstype = JS_STRING];*/ 9: - message.outgoingChanId = reader.uint64().toString(); - break; - case /* bytes last_hop_pubkey */ 13: - message.lastHopPubkey = reader.bytes(); - break; - case /* uint32 cltv_limit */ 10: - message.cltvLimit = reader.uint32(); - break; - case /* map dest_custom_records */ 11: - this.binaryReadMap11(message.destCustomRecords, reader, options); - break; - case /* bool allow_self_payment */ 14: - message.allowSelfPayment = reader.bool(); - break; - case /* repeated lnrpc.FeatureBit dest_features */ 15: - if (wireType === runtime_1.WireType.LengthDelimited) - for (let e = reader.int32() + reader.pos; reader.pos < e;) - message.destFeatures.push(reader.int32()); - else - message.destFeatures.push(reader.int32()); - break; - case /* bytes payment_addr */ 16: - message.paymentAddr = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - binaryReadMap11(map, reader, options) { - let len = reader.uint32(), end = reader.pos + len, key, val; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint64().toString(); - break; - case 2: - val = reader.bytes(); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.SendRequest.dest_custom_records"); - } - } - map[key !== null && key !== void 0 ? key : "0"] = val !== null && val !== void 0 ? val : new Uint8Array(0); - } - internalBinaryWrite(message, writer, options) { - /* bytes dest = 1; */ - if (message.dest.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.dest); - /* string dest_string = 2 [deprecated = true]; */ - if (message.destString !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.destString); - /* int64 amt = 3; */ - if (message.amt !== "0") - writer.tag(3, runtime_1.WireType.Varint).int64(message.amt); - /* int64 amt_msat = 12; */ - if (message.amtMsat !== "0") - writer.tag(12, runtime_1.WireType.Varint).int64(message.amtMsat); - /* bytes payment_hash = 4; */ - if (message.paymentHash.length) - writer.tag(4, runtime_1.WireType.LengthDelimited).bytes(message.paymentHash); - /* string payment_hash_string = 5 [deprecated = true]; */ - if (message.paymentHashString !== "") - writer.tag(5, runtime_1.WireType.LengthDelimited).string(message.paymentHashString); - /* string payment_request = 6; */ - if (message.paymentRequest !== "") - writer.tag(6, runtime_1.WireType.LengthDelimited).string(message.paymentRequest); - /* int32 final_cltv_delta = 7; */ - if (message.finalCltvDelta !== 0) - writer.tag(7, runtime_1.WireType.Varint).int32(message.finalCltvDelta); - /* lnrpc.FeeLimit fee_limit = 8; */ - if (message.feeLimit) - exports.FeeLimit.internalBinaryWrite(message.feeLimit, writer.tag(8, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* uint64 outgoing_chan_id = 9 [jstype = JS_STRING]; */ - if (message.outgoingChanId !== "0") - writer.tag(9, runtime_1.WireType.Varint).uint64(message.outgoingChanId); - /* bytes last_hop_pubkey = 13; */ - if (message.lastHopPubkey.length) - writer.tag(13, runtime_1.WireType.LengthDelimited).bytes(message.lastHopPubkey); - /* uint32 cltv_limit = 10; */ - if (message.cltvLimit !== 0) - writer.tag(10, runtime_1.WireType.Varint).uint32(message.cltvLimit); - /* map dest_custom_records = 11; */ - for (let k of Object.keys(message.destCustomRecords)) - writer.tag(11, runtime_1.WireType.LengthDelimited).fork().tag(1, runtime_1.WireType.Varint).uint64(k).tag(2, runtime_1.WireType.LengthDelimited).bytes(message.destCustomRecords[k]).join(); - /* bool allow_self_payment = 14; */ - if (message.allowSelfPayment !== false) - writer.tag(14, runtime_1.WireType.Varint).bool(message.allowSelfPayment); - /* repeated lnrpc.FeatureBit dest_features = 15; */ - if (message.destFeatures.length) { - writer.tag(15, runtime_1.WireType.LengthDelimited).fork(); - for (let i = 0; i < message.destFeatures.length; i++) - writer.int32(message.destFeatures[i]); - writer.join(); - } - /* bytes payment_addr = 16; */ - if (message.paymentAddr.length) - writer.tag(16, runtime_1.WireType.LengthDelimited).bytes(message.paymentAddr); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SendRequest - */ -exports.SendRequest = new SendRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.SendResponse", [ - { no: 1, name: "payment_error", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "payment_preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "payment_route", kind: "message", T: () => exports.Route }, - { no: 4, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { paymentError: "", paymentPreimage: new Uint8Array(0), paymentHash: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string payment_error */ 1: - message.paymentError = reader.string(); - break; - case /* bytes payment_preimage */ 2: - message.paymentPreimage = reader.bytes(); - break; - case /* lnrpc.Route payment_route */ 3: - message.paymentRoute = exports.Route.internalBinaryRead(reader, reader.uint32(), options, message.paymentRoute); - break; - case /* bytes payment_hash */ 4: - message.paymentHash = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string payment_error = 1; */ - if (message.paymentError !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.paymentError); - /* bytes payment_preimage = 2; */ - if (message.paymentPreimage.length) - writer.tag(2, runtime_1.WireType.LengthDelimited).bytes(message.paymentPreimage); - /* lnrpc.Route payment_route = 3; */ - if (message.paymentRoute) - exports.Route.internalBinaryWrite(message.paymentRoute, writer.tag(3, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* bytes payment_hash = 4; */ - if (message.paymentHash.length) - writer.tag(4, runtime_1.WireType.LengthDelimited).bytes(message.paymentHash); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SendResponse - */ -exports.SendResponse = new SendResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendToRouteRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.SendToRouteRequest", [ - { no: 1, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "payment_hash_string", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "route", kind: "message", T: () => exports.Route } - ]); - } - create(value) { - const message = { paymentHash: new Uint8Array(0), paymentHashString: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes payment_hash */ 1: - message.paymentHash = reader.bytes(); - break; - case /* string payment_hash_string = 2 [deprecated = true];*/ 2: - message.paymentHashString = reader.string(); - break; - case /* lnrpc.Route route */ 4: - message.route = exports.Route.internalBinaryRead(reader, reader.uint32(), options, message.route); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes payment_hash = 1; */ - if (message.paymentHash.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.paymentHash); - /* string payment_hash_string = 2 [deprecated = true]; */ - if (message.paymentHashString !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.paymentHashString); - /* lnrpc.Route route = 4; */ - if (message.route) - exports.Route.internalBinaryWrite(message.route, writer.tag(4, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SendToRouteRequest - */ -exports.SendToRouteRequest = new SendToRouteRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelAcceptRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelAcceptRequest", [ - { no: 1, name: "node_pubkey", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "chain_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 4, name: "funding_amt", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 5, name: "push_amt", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 6, name: "dust_limit", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 7, name: "max_value_in_flight", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 8, name: "channel_reserve", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 9, name: "min_htlc", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 10, name: "fee_per_kw", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 11, name: "csv_delay", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 12, name: "max_accepted_htlcs", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 13, name: "channel_flags", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value) { - const message = { nodePubkey: new Uint8Array(0), chainHash: new Uint8Array(0), pendingChanId: new Uint8Array(0), fundingAmt: "0", pushAmt: "0", dustLimit: "0", maxValueInFlight: "0", channelReserve: "0", minHtlc: "0", feePerKw: "0", csvDelay: 0, maxAcceptedHtlcs: 0, channelFlags: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes node_pubkey */ 1: - message.nodePubkey = reader.bytes(); - break; - case /* bytes chain_hash */ 2: - message.chainHash = reader.bytes(); - break; - case /* bytes pending_chan_id */ 3: - message.pendingChanId = reader.bytes(); - break; - case /* uint64 funding_amt */ 4: - message.fundingAmt = reader.uint64().toString(); - break; - case /* uint64 push_amt */ 5: - message.pushAmt = reader.uint64().toString(); - break; - case /* uint64 dust_limit */ 6: - message.dustLimit = reader.uint64().toString(); - break; - case /* uint64 max_value_in_flight */ 7: - message.maxValueInFlight = reader.uint64().toString(); - break; - case /* uint64 channel_reserve */ 8: - message.channelReserve = reader.uint64().toString(); - break; - case /* uint64 min_htlc */ 9: - message.minHtlc = reader.uint64().toString(); - break; - case /* uint64 fee_per_kw */ 10: - message.feePerKw = reader.uint64().toString(); - break; - case /* uint32 csv_delay */ 11: - message.csvDelay = reader.uint32(); - break; - case /* uint32 max_accepted_htlcs */ 12: - message.maxAcceptedHtlcs = reader.uint32(); - break; - case /* uint32 channel_flags */ 13: - message.channelFlags = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes node_pubkey = 1; */ - if (message.nodePubkey.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.nodePubkey); - /* bytes chain_hash = 2; */ - if (message.chainHash.length) - writer.tag(2, runtime_1.WireType.LengthDelimited).bytes(message.chainHash); - /* bytes pending_chan_id = 3; */ - if (message.pendingChanId.length) - writer.tag(3, runtime_1.WireType.LengthDelimited).bytes(message.pendingChanId); - /* uint64 funding_amt = 4; */ - if (message.fundingAmt !== "0") - writer.tag(4, runtime_1.WireType.Varint).uint64(message.fundingAmt); - /* uint64 push_amt = 5; */ - if (message.pushAmt !== "0") - writer.tag(5, runtime_1.WireType.Varint).uint64(message.pushAmt); - /* uint64 dust_limit = 6; */ - if (message.dustLimit !== "0") - writer.tag(6, runtime_1.WireType.Varint).uint64(message.dustLimit); - /* uint64 max_value_in_flight = 7; */ - if (message.maxValueInFlight !== "0") - writer.tag(7, runtime_1.WireType.Varint).uint64(message.maxValueInFlight); - /* uint64 channel_reserve = 8; */ - if (message.channelReserve !== "0") - writer.tag(8, runtime_1.WireType.Varint).uint64(message.channelReserve); - /* uint64 min_htlc = 9; */ - if (message.minHtlc !== "0") - writer.tag(9, runtime_1.WireType.Varint).uint64(message.minHtlc); - /* uint64 fee_per_kw = 10; */ - if (message.feePerKw !== "0") - writer.tag(10, runtime_1.WireType.Varint).uint64(message.feePerKw); - /* uint32 csv_delay = 11; */ - if (message.csvDelay !== 0) - writer.tag(11, runtime_1.WireType.Varint).uint32(message.csvDelay); - /* uint32 max_accepted_htlcs = 12; */ - if (message.maxAcceptedHtlcs !== 0) - writer.tag(12, runtime_1.WireType.Varint).uint32(message.maxAcceptedHtlcs); - /* uint32 channel_flags = 13; */ - if (message.channelFlags !== 0) - writer.tag(13, runtime_1.WireType.Varint).uint32(message.channelFlags); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelAcceptRequest - */ -exports.ChannelAcceptRequest = new ChannelAcceptRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelAcceptResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelAcceptResponse", [ - { no: 1, name: "accept", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "error", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "upfront_shutdown", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 5, name: "csv_delay", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 6, name: "reserve_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 7, name: "in_flight_max_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 8, name: "max_htlc_count", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 9, name: "min_htlc_in", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 10, name: "min_accept_depth", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value) { - const message = { accept: false, pendingChanId: new Uint8Array(0), error: "", upfrontShutdown: "", csvDelay: 0, reserveSat: "0", inFlightMaxMsat: "0", maxHtlcCount: 0, minHtlcIn: "0", minAcceptDepth: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool accept */ 1: - message.accept = reader.bool(); - break; - case /* bytes pending_chan_id */ 2: - message.pendingChanId = reader.bytes(); - break; - case /* string error */ 3: - message.error = reader.string(); - break; - case /* string upfront_shutdown */ 4: - message.upfrontShutdown = reader.string(); - break; - case /* uint32 csv_delay */ 5: - message.csvDelay = reader.uint32(); - break; - case /* uint64 reserve_sat */ 6: - message.reserveSat = reader.uint64().toString(); - break; - case /* uint64 in_flight_max_msat */ 7: - message.inFlightMaxMsat = reader.uint64().toString(); - break; - case /* uint32 max_htlc_count */ 8: - message.maxHtlcCount = reader.uint32(); - break; - case /* uint64 min_htlc_in */ 9: - message.minHtlcIn = reader.uint64().toString(); - break; - case /* uint32 min_accept_depth */ 10: - message.minAcceptDepth = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bool accept = 1; */ - if (message.accept !== false) - writer.tag(1, runtime_1.WireType.Varint).bool(message.accept); - /* bytes pending_chan_id = 2; */ - if (message.pendingChanId.length) - writer.tag(2, runtime_1.WireType.LengthDelimited).bytes(message.pendingChanId); - /* string error = 3; */ - if (message.error !== "") - writer.tag(3, runtime_1.WireType.LengthDelimited).string(message.error); - /* string upfront_shutdown = 4; */ - if (message.upfrontShutdown !== "") - writer.tag(4, runtime_1.WireType.LengthDelimited).string(message.upfrontShutdown); - /* uint32 csv_delay = 5; */ - if (message.csvDelay !== 0) - writer.tag(5, runtime_1.WireType.Varint).uint32(message.csvDelay); - /* uint64 reserve_sat = 6; */ - if (message.reserveSat !== "0") - writer.tag(6, runtime_1.WireType.Varint).uint64(message.reserveSat); - /* uint64 in_flight_max_msat = 7; */ - if (message.inFlightMaxMsat !== "0") - writer.tag(7, runtime_1.WireType.Varint).uint64(message.inFlightMaxMsat); - /* uint32 max_htlc_count = 8; */ - if (message.maxHtlcCount !== 0) - writer.tag(8, runtime_1.WireType.Varint).uint32(message.maxHtlcCount); - /* uint64 min_htlc_in = 9; */ - if (message.minHtlcIn !== "0") - writer.tag(9, runtime_1.WireType.Varint).uint64(message.minHtlcIn); - /* uint32 min_accept_depth = 10; */ - if (message.minAcceptDepth !== 0) - writer.tag(10, runtime_1.WireType.Varint).uint32(message.minAcceptDepth); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelAcceptResponse - */ -exports.ChannelAcceptResponse = new ChannelAcceptResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelPoint$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelPoint", [ - { no: 1, name: "funding_txid_bytes", kind: "scalar", oneof: "fundingTxid", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "funding_txid_str", kind: "scalar", oneof: "fundingTxid", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "output_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value) { - const message = { fundingTxid: { oneofKind: undefined }, outputIndex: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes funding_txid_bytes */ 1: - message.fundingTxid = { - oneofKind: "fundingTxidBytes", - fundingTxidBytes: reader.bytes() - }; - break; - case /* string funding_txid_str */ 2: - message.fundingTxid = { - oneofKind: "fundingTxidStr", - fundingTxidStr: reader.string() - }; - break; - case /* uint32 output_index */ 3: - message.outputIndex = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes funding_txid_bytes = 1; */ - if (message.fundingTxid.oneofKind === "fundingTxidBytes") - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.fundingTxid.fundingTxidBytes); - /* string funding_txid_str = 2; */ - if (message.fundingTxid.oneofKind === "fundingTxidStr") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.fundingTxid.fundingTxidStr); - /* uint32 output_index = 3; */ - if (message.outputIndex !== 0) - writer.tag(3, runtime_1.WireType.Varint).uint32(message.outputIndex); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelPoint - */ -exports.ChannelPoint = new ChannelPoint$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class OutPoint$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.OutPoint", [ - { no: 1, name: "txid_bytes", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "txid_str", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "output_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value) { - const message = { txidBytes: new Uint8Array(0), txidStr: "", outputIndex: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes txid_bytes */ 1: - message.txidBytes = reader.bytes(); - break; - case /* string txid_str */ 2: - message.txidStr = reader.string(); - break; - case /* uint32 output_index */ 3: - message.outputIndex = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes txid_bytes = 1; */ - if (message.txidBytes.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.txidBytes); - /* string txid_str = 2; */ - if (message.txidStr !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.txidStr); - /* uint32 output_index = 3; */ - if (message.outputIndex !== 0) - writer.tag(3, runtime_1.WireType.Varint).uint32(message.outputIndex); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.OutPoint - */ -exports.OutPoint = new OutPoint$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class LightningAddress$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.LightningAddress", [ - { no: 1, name: "pubkey", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "host", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { pubkey: "", host: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string pubkey */ 1: - message.pubkey = reader.string(); - break; - case /* string host */ 2: - message.host = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string pubkey = 1; */ - if (message.pubkey !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.pubkey); - /* string host = 2; */ - if (message.host !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.host); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.LightningAddress - */ -exports.LightningAddress = new LightningAddress$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class EstimateFeeRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.EstimateFeeRequest", [ - { no: 1, name: "AddrToAmount", kind: "map", jsonName: "AddrToAmount", K: 9 /*ScalarType.STRING*/, V: { kind: "scalar", T: 3 /*ScalarType.INT64*/ } }, - { no: 2, name: "target_conf", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 3, name: "min_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 4, name: "spend_unconfirmed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { addrToAmount: {}, targetConf: 0, minConfs: 0, spendUnconfirmed: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* map AddrToAmount = 1 [json_name = "AddrToAmount"];*/ 1: - this.binaryReadMap1(message.addrToAmount, reader, options); - break; - case /* int32 target_conf */ 2: - message.targetConf = reader.int32(); - break; - case /* int32 min_confs */ 3: - message.minConfs = reader.int32(); - break; - case /* bool spend_unconfirmed */ 4: - message.spendUnconfirmed = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - binaryReadMap1(map, reader, options) { - let len = reader.uint32(), end = reader.pos + len, key, val; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.string(); - break; - case 2: - val = reader.int64().toString(); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.EstimateFeeRequest.AddrToAmount"); - } - } - map[key !== null && key !== void 0 ? key : ""] = val !== null && val !== void 0 ? val : "0"; - } - internalBinaryWrite(message, writer, options) { - /* map AddrToAmount = 1 [json_name = "AddrToAmount"]; */ - for (let k of Object.keys(message.addrToAmount)) - writer.tag(1, runtime_1.WireType.LengthDelimited).fork().tag(1, runtime_1.WireType.LengthDelimited).string(k).tag(2, runtime_1.WireType.Varint).int64(message.addrToAmount[k]).join(); - /* int32 target_conf = 2; */ - if (message.targetConf !== 0) - writer.tag(2, runtime_1.WireType.Varint).int32(message.targetConf); - /* int32 min_confs = 3; */ - if (message.minConfs !== 0) - writer.tag(3, runtime_1.WireType.Varint).int32(message.minConfs); - /* bool spend_unconfirmed = 4; */ - if (message.spendUnconfirmed !== false) - writer.tag(4, runtime_1.WireType.Varint).bool(message.spendUnconfirmed); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.EstimateFeeRequest - */ -exports.EstimateFeeRequest = new EstimateFeeRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class EstimateFeeResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.EstimateFeeResponse", [ - { no: 1, name: "fee_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 2, name: "feerate_sat_per_byte", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 3, name: "sat_per_vbyte", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { feeSat: "0", feerateSatPerByte: "0", satPerVbyte: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 fee_sat */ 1: - message.feeSat = reader.int64().toString(); - break; - case /* int64 feerate_sat_per_byte = 2 [deprecated = true];*/ 2: - message.feerateSatPerByte = reader.int64().toString(); - break; - case /* uint64 sat_per_vbyte */ 3: - message.satPerVbyte = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* int64 fee_sat = 1; */ - if (message.feeSat !== "0") - writer.tag(1, runtime_1.WireType.Varint).int64(message.feeSat); - /* int64 feerate_sat_per_byte = 2 [deprecated = true]; */ - if (message.feerateSatPerByte !== "0") - writer.tag(2, runtime_1.WireType.Varint).int64(message.feerateSatPerByte); - /* uint64 sat_per_vbyte = 3; */ - if (message.satPerVbyte !== "0") - writer.tag(3, runtime_1.WireType.Varint).uint64(message.satPerVbyte); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.EstimateFeeResponse - */ -exports.EstimateFeeResponse = new EstimateFeeResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendManyRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.SendManyRequest", [ - { no: 1, name: "AddrToAmount", kind: "map", jsonName: "AddrToAmount", K: 9 /*ScalarType.STRING*/, V: { kind: "scalar", T: 3 /*ScalarType.INT64*/ } }, - { no: 3, name: "target_conf", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 4, name: "sat_per_vbyte", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 5, name: "sat_per_byte", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 6, name: "label", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 7, name: "min_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 8, name: "spend_unconfirmed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { addrToAmount: {}, targetConf: 0, satPerVbyte: "0", satPerByte: "0", label: "", minConfs: 0, spendUnconfirmed: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* map AddrToAmount = 1 [json_name = "AddrToAmount"];*/ 1: - this.binaryReadMap1(message.addrToAmount, reader, options); - break; - case /* int32 target_conf */ 3: - message.targetConf = reader.int32(); - break; - case /* uint64 sat_per_vbyte */ 4: - message.satPerVbyte = reader.uint64().toString(); - break; - case /* int64 sat_per_byte = 5 [deprecated = true];*/ 5: - message.satPerByte = reader.int64().toString(); - break; - case /* string label */ 6: - message.label = reader.string(); - break; - case /* int32 min_confs */ 7: - message.minConfs = reader.int32(); - break; - case /* bool spend_unconfirmed */ 8: - message.spendUnconfirmed = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - binaryReadMap1(map, reader, options) { - let len = reader.uint32(), end = reader.pos + len, key, val; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.string(); - break; - case 2: - val = reader.int64().toString(); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.SendManyRequest.AddrToAmount"); - } - } - map[key !== null && key !== void 0 ? key : ""] = val !== null && val !== void 0 ? val : "0"; - } - internalBinaryWrite(message, writer, options) { - /* map AddrToAmount = 1 [json_name = "AddrToAmount"]; */ - for (let k of Object.keys(message.addrToAmount)) - writer.tag(1, runtime_1.WireType.LengthDelimited).fork().tag(1, runtime_1.WireType.LengthDelimited).string(k).tag(2, runtime_1.WireType.Varint).int64(message.addrToAmount[k]).join(); - /* int32 target_conf = 3; */ - if (message.targetConf !== 0) - writer.tag(3, runtime_1.WireType.Varint).int32(message.targetConf); - /* uint64 sat_per_vbyte = 4; */ - if (message.satPerVbyte !== "0") - writer.tag(4, runtime_1.WireType.Varint).uint64(message.satPerVbyte); - /* int64 sat_per_byte = 5 [deprecated = true]; */ - if (message.satPerByte !== "0") - writer.tag(5, runtime_1.WireType.Varint).int64(message.satPerByte); - /* string label = 6; */ - if (message.label !== "") - writer.tag(6, runtime_1.WireType.LengthDelimited).string(message.label); - /* int32 min_confs = 7; */ - if (message.minConfs !== 0) - writer.tag(7, runtime_1.WireType.Varint).int32(message.minConfs); - /* bool spend_unconfirmed = 8; */ - if (message.spendUnconfirmed !== false) - writer.tag(8, runtime_1.WireType.Varint).bool(message.spendUnconfirmed); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SendManyRequest - */ -exports.SendManyRequest = new SendManyRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendManyResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.SendManyResponse", [ - { no: 1, name: "txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { txid: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string txid */ 1: - message.txid = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string txid = 1; */ - if (message.txid !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.txid); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SendManyResponse - */ -exports.SendManyResponse = new SendManyResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendCoinsRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.SendCoinsRequest", [ - { no: 1, name: "addr", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "amount", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 3, name: "target_conf", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 4, name: "sat_per_vbyte", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 5, name: "sat_per_byte", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 6, name: "send_all", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 7, name: "label", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 8, name: "min_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 9, name: "spend_unconfirmed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { addr: "", amount: "0", targetConf: 0, satPerVbyte: "0", satPerByte: "0", sendAll: false, label: "", minConfs: 0, spendUnconfirmed: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string addr */ 1: - message.addr = reader.string(); - break; - case /* int64 amount */ 2: - message.amount = reader.int64().toString(); - break; - case /* int32 target_conf */ 3: - message.targetConf = reader.int32(); - break; - case /* uint64 sat_per_vbyte */ 4: - message.satPerVbyte = reader.uint64().toString(); - break; - case /* int64 sat_per_byte = 5 [deprecated = true];*/ 5: - message.satPerByte = reader.int64().toString(); - break; - case /* bool send_all */ 6: - message.sendAll = reader.bool(); - break; - case /* string label */ 7: - message.label = reader.string(); - break; - case /* int32 min_confs */ 8: - message.minConfs = reader.int32(); - break; - case /* bool spend_unconfirmed */ 9: - message.spendUnconfirmed = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string addr = 1; */ - if (message.addr !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.addr); - /* int64 amount = 2; */ - if (message.amount !== "0") - writer.tag(2, runtime_1.WireType.Varint).int64(message.amount); - /* int32 target_conf = 3; */ - if (message.targetConf !== 0) - writer.tag(3, runtime_1.WireType.Varint).int32(message.targetConf); - /* uint64 sat_per_vbyte = 4; */ - if (message.satPerVbyte !== "0") - writer.tag(4, runtime_1.WireType.Varint).uint64(message.satPerVbyte); - /* int64 sat_per_byte = 5 [deprecated = true]; */ - if (message.satPerByte !== "0") - writer.tag(5, runtime_1.WireType.Varint).int64(message.satPerByte); - /* bool send_all = 6; */ - if (message.sendAll !== false) - writer.tag(6, runtime_1.WireType.Varint).bool(message.sendAll); - /* string label = 7; */ - if (message.label !== "") - writer.tag(7, runtime_1.WireType.LengthDelimited).string(message.label); - /* int32 min_confs = 8; */ - if (message.minConfs !== 0) - writer.tag(8, runtime_1.WireType.Varint).int32(message.minConfs); - /* bool spend_unconfirmed = 9; */ - if (message.spendUnconfirmed !== false) - writer.tag(9, runtime_1.WireType.Varint).bool(message.spendUnconfirmed); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SendCoinsRequest - */ -exports.SendCoinsRequest = new SendCoinsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendCoinsResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.SendCoinsResponse", [ - { no: 1, name: "txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { txid: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string txid */ 1: - message.txid = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string txid = 1; */ - if (message.txid !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.txid); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SendCoinsResponse - */ -exports.SendCoinsResponse = new SendCoinsResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListUnspentRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ListUnspentRequest", [ - { no: 1, name: "min_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 2, name: "max_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 3, name: "account", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { minConfs: 0, maxConfs: 0, account: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int32 min_confs */ 1: - message.minConfs = reader.int32(); - break; - case /* int32 max_confs */ 2: - message.maxConfs = reader.int32(); - break; - case /* string account */ 3: - message.account = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* int32 min_confs = 1; */ - if (message.minConfs !== 0) - writer.tag(1, runtime_1.WireType.Varint).int32(message.minConfs); - /* int32 max_confs = 2; */ - if (message.maxConfs !== 0) - writer.tag(2, runtime_1.WireType.Varint).int32(message.maxConfs); - /* string account = 3; */ - if (message.account !== "") - writer.tag(3, runtime_1.WireType.LengthDelimited).string(message.account); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListUnspentRequest - */ -exports.ListUnspentRequest = new ListUnspentRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListUnspentResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ListUnspentResponse", [ - { no: 1, name: "utxos", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.Utxo } - ]); - } - create(value) { - const message = { utxos: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.Utxo utxos */ 1: - message.utxos.push(exports.Utxo.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated lnrpc.Utxo utxos = 1; */ - for (let i = 0; i < message.utxos.length; i++) - exports.Utxo.internalBinaryWrite(message.utxos[i], writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListUnspentResponse - */ -exports.ListUnspentResponse = new ListUnspentResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NewAddressRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.NewAddressRequest", [ - { no: 1, name: "type", kind: "enum", T: () => ["lnrpc.AddressType", AddressType] }, - { no: 2, name: "account", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { type: 0, account: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.AddressType type */ 1: - message.type = reader.int32(); - break; - case /* string account */ 2: - message.account = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.AddressType type = 1; */ - if (message.type !== 0) - writer.tag(1, runtime_1.WireType.Varint).int32(message.type); - /* string account = 2; */ - if (message.account !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.account); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NewAddressRequest - */ -exports.NewAddressRequest = new NewAddressRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NewAddressResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.NewAddressResponse", [ - { no: 1, name: "address", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { address: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string address */ 1: - message.address = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string address = 1; */ - if (message.address !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.address); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NewAddressResponse - */ -exports.NewAddressResponse = new NewAddressResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SignMessageRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.SignMessageRequest", [ - { no: 1, name: "msg", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { msg: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes msg */ 1: - message.msg = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes msg = 1; */ - if (message.msg.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.msg); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SignMessageRequest - */ -exports.SignMessageRequest = new SignMessageRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SignMessageResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.SignMessageResponse", [ - { no: 1, name: "signature", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { signature: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string signature */ 1: - message.signature = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string signature = 1; */ - if (message.signature !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.signature); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SignMessageResponse - */ -exports.SignMessageResponse = new SignMessageResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class VerifyMessageRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.VerifyMessageRequest", [ - { no: 1, name: "msg", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "signature", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { msg: new Uint8Array(0), signature: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes msg */ 1: - message.msg = reader.bytes(); - break; - case /* string signature */ 2: - message.signature = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes msg = 1; */ - if (message.msg.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.msg); - /* string signature = 2; */ - if (message.signature !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.signature); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.VerifyMessageRequest - */ -exports.VerifyMessageRequest = new VerifyMessageRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class VerifyMessageResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.VerifyMessageResponse", [ - { no: 1, name: "valid", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "pubkey", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { valid: false, pubkey: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool valid */ 1: - message.valid = reader.bool(); - break; - case /* string pubkey */ 2: - message.pubkey = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bool valid = 1; */ - if (message.valid !== false) - writer.tag(1, runtime_1.WireType.Varint).bool(message.valid); - /* string pubkey = 2; */ - if (message.pubkey !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.pubkey); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.VerifyMessageResponse - */ -exports.VerifyMessageResponse = new VerifyMessageResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ConnectPeerRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ConnectPeerRequest", [ - { no: 1, name: "addr", kind: "message", T: () => exports.LightningAddress }, - { no: 2, name: "perm", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 3, name: "timeout", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { perm: false, timeout: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.LightningAddress addr */ 1: - message.addr = exports.LightningAddress.internalBinaryRead(reader, reader.uint32(), options, message.addr); - break; - case /* bool perm */ 2: - message.perm = reader.bool(); - break; - case /* uint64 timeout */ 3: - message.timeout = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.LightningAddress addr = 1; */ - if (message.addr) - exports.LightningAddress.internalBinaryWrite(message.addr, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* bool perm = 2; */ - if (message.perm !== false) - writer.tag(2, runtime_1.WireType.Varint).bool(message.perm); - /* uint64 timeout = 3; */ - if (message.timeout !== "0") - writer.tag(3, runtime_1.WireType.Varint).uint64(message.timeout); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ConnectPeerRequest - */ -exports.ConnectPeerRequest = new ConnectPeerRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ConnectPeerResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ConnectPeerResponse", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ConnectPeerResponse - */ -exports.ConnectPeerResponse = new ConnectPeerResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class DisconnectPeerRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.DisconnectPeerRequest", [ - { no: 1, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { pubKey: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string pub_key */ 1: - message.pubKey = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string pub_key = 1; */ - if (message.pubKey !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.pubKey); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.DisconnectPeerRequest - */ -exports.DisconnectPeerRequest = new DisconnectPeerRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class DisconnectPeerResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.DisconnectPeerResponse", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.DisconnectPeerResponse - */ -exports.DisconnectPeerResponse = new DisconnectPeerResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class HTLC$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.HTLC", [ - { no: 1, name: "incoming", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "amount", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 3, name: "hash_lock", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 4, name: "expiration_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "htlc_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 6, name: "forwarding_channel", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 7, name: "forwarding_htlc_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { incoming: false, amount: "0", hashLock: new Uint8Array(0), expirationHeight: 0, htlcIndex: "0", forwardingChannel: "0", forwardingHtlcIndex: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool incoming */ 1: - message.incoming = reader.bool(); - break; - case /* int64 amount */ 2: - message.amount = reader.int64().toString(); - break; - case /* bytes hash_lock */ 3: - message.hashLock = reader.bytes(); - break; - case /* uint32 expiration_height */ 4: - message.expirationHeight = reader.uint32(); - break; - case /* uint64 htlc_index */ 5: - message.htlcIndex = reader.uint64().toString(); - break; - case /* uint64 forwarding_channel */ 6: - message.forwardingChannel = reader.uint64().toString(); - break; - case /* uint64 forwarding_htlc_index */ 7: - message.forwardingHtlcIndex = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bool incoming = 1; */ - if (message.incoming !== false) - writer.tag(1, runtime_1.WireType.Varint).bool(message.incoming); - /* int64 amount = 2; */ - if (message.amount !== "0") - writer.tag(2, runtime_1.WireType.Varint).int64(message.amount); - /* bytes hash_lock = 3; */ - if (message.hashLock.length) - writer.tag(3, runtime_1.WireType.LengthDelimited).bytes(message.hashLock); - /* uint32 expiration_height = 4; */ - if (message.expirationHeight !== 0) - writer.tag(4, runtime_1.WireType.Varint).uint32(message.expirationHeight); - /* uint64 htlc_index = 5; */ - if (message.htlcIndex !== "0") - writer.tag(5, runtime_1.WireType.Varint).uint64(message.htlcIndex); - /* uint64 forwarding_channel = 6; */ - if (message.forwardingChannel !== "0") - writer.tag(6, runtime_1.WireType.Varint).uint64(message.forwardingChannel); - /* uint64 forwarding_htlc_index = 7; */ - if (message.forwardingHtlcIndex !== "0") - writer.tag(7, runtime_1.WireType.Varint).uint64(message.forwardingHtlcIndex); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.HTLC - */ -exports.HTLC = new HTLC$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelConstraints$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelConstraints", [ - { no: 1, name: "csv_delay", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 2, name: "chan_reserve_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 3, name: "dust_limit_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 4, name: "max_pending_amt_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 5, name: "min_htlc_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 6, name: "max_accepted_htlcs", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value) { - const message = { csvDelay: 0, chanReserveSat: "0", dustLimitSat: "0", maxPendingAmtMsat: "0", minHtlcMsat: "0", maxAcceptedHtlcs: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint32 csv_delay */ 1: - message.csvDelay = reader.uint32(); - break; - case /* uint64 chan_reserve_sat */ 2: - message.chanReserveSat = reader.uint64().toString(); - break; - case /* uint64 dust_limit_sat */ 3: - message.dustLimitSat = reader.uint64().toString(); - break; - case /* uint64 max_pending_amt_msat */ 4: - message.maxPendingAmtMsat = reader.uint64().toString(); - break; - case /* uint64 min_htlc_msat */ 5: - message.minHtlcMsat = reader.uint64().toString(); - break; - case /* uint32 max_accepted_htlcs */ 6: - message.maxAcceptedHtlcs = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint32 csv_delay = 1; */ - if (message.csvDelay !== 0) - writer.tag(1, runtime_1.WireType.Varint).uint32(message.csvDelay); - /* uint64 chan_reserve_sat = 2; */ - if (message.chanReserveSat !== "0") - writer.tag(2, runtime_1.WireType.Varint).uint64(message.chanReserveSat); - /* uint64 dust_limit_sat = 3; */ - if (message.dustLimitSat !== "0") - writer.tag(3, runtime_1.WireType.Varint).uint64(message.dustLimitSat); - /* uint64 max_pending_amt_msat = 4; */ - if (message.maxPendingAmtMsat !== "0") - writer.tag(4, runtime_1.WireType.Varint).uint64(message.maxPendingAmtMsat); - /* uint64 min_htlc_msat = 5; */ - if (message.minHtlcMsat !== "0") - writer.tag(5, runtime_1.WireType.Varint).uint64(message.minHtlcMsat); - /* uint32 max_accepted_htlcs = 6; */ - if (message.maxAcceptedHtlcs !== 0) - writer.tag(6, runtime_1.WireType.Varint).uint32(message.maxAcceptedHtlcs); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelConstraints - */ -exports.ChannelConstraints = new ChannelConstraints$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Channel$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.Channel", [ - { no: 1, name: "active", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "remote_pubkey", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "channel_point", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 5, name: "capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 6, name: "local_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 7, name: "remote_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 8, name: "commit_fee", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 9, name: "commit_weight", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 10, name: "fee_per_kw", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 11, name: "unsettled_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 12, name: "total_satoshis_sent", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 13, name: "total_satoshis_received", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 14, name: "num_updates", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 15, name: "pending_htlcs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.HTLC }, - { no: 16, name: "csv_delay", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 17, name: "private", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 18, name: "initiator", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 19, name: "chan_status_flags", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 20, name: "local_chan_reserve_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 21, name: "remote_chan_reserve_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 22, name: "static_remote_key", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 26, name: "commitment_type", kind: "enum", T: () => ["lnrpc.CommitmentType", CommitmentType] }, - { no: 23, name: "lifetime", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 24, name: "uptime", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 25, name: "close_address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 27, name: "push_amount_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 28, name: "thaw_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 29, name: "local_constraints", kind: "message", T: () => exports.ChannelConstraints }, - { no: 30, name: "remote_constraints", kind: "message", T: () => exports.ChannelConstraints } - ]); - } - create(value) { - const message = { active: false, remotePubkey: "", channelPoint: "", chanId: "0", capacity: "0", localBalance: "0", remoteBalance: "0", commitFee: "0", commitWeight: "0", feePerKw: "0", unsettledBalance: "0", totalSatoshisSent: "0", totalSatoshisReceived: "0", numUpdates: "0", pendingHtlcs: [], csvDelay: 0, private: false, initiator: false, chanStatusFlags: "", localChanReserveSat: "0", remoteChanReserveSat: "0", staticRemoteKey: false, commitmentType: 0, lifetime: "0", uptime: "0", closeAddress: "", pushAmountSat: "0", thawHeight: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool active */ 1: - message.active = reader.bool(); - break; - case /* string remote_pubkey */ 2: - message.remotePubkey = reader.string(); - break; - case /* string channel_point */ 3: - message.channelPoint = reader.string(); - break; - case /* uint64 chan_id = 4 [jstype = JS_STRING];*/ 4: - message.chanId = reader.uint64().toString(); - break; - case /* int64 capacity */ 5: - message.capacity = reader.int64().toString(); - break; - case /* int64 local_balance */ 6: - message.localBalance = reader.int64().toString(); - break; - case /* int64 remote_balance */ 7: - message.remoteBalance = reader.int64().toString(); - break; - case /* int64 commit_fee */ 8: - message.commitFee = reader.int64().toString(); - break; - case /* int64 commit_weight */ 9: - message.commitWeight = reader.int64().toString(); - break; - case /* int64 fee_per_kw */ 10: - message.feePerKw = reader.int64().toString(); - break; - case /* int64 unsettled_balance */ 11: - message.unsettledBalance = reader.int64().toString(); - break; - case /* int64 total_satoshis_sent */ 12: - message.totalSatoshisSent = reader.int64().toString(); - break; - case /* int64 total_satoshis_received */ 13: - message.totalSatoshisReceived = reader.int64().toString(); - break; - case /* uint64 num_updates */ 14: - message.numUpdates = reader.uint64().toString(); - break; - case /* repeated lnrpc.HTLC pending_htlcs */ 15: - message.pendingHtlcs.push(exports.HTLC.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* uint32 csv_delay = 16 [deprecated = true];*/ 16: - message.csvDelay = reader.uint32(); - break; - case /* bool private */ 17: - message.private = reader.bool(); - break; - case /* bool initiator */ 18: - message.initiator = reader.bool(); - break; - case /* string chan_status_flags */ 19: - message.chanStatusFlags = reader.string(); - break; - case /* int64 local_chan_reserve_sat = 20 [deprecated = true];*/ 20: - message.localChanReserveSat = reader.int64().toString(); - break; - case /* int64 remote_chan_reserve_sat = 21 [deprecated = true];*/ 21: - message.remoteChanReserveSat = reader.int64().toString(); - break; - case /* bool static_remote_key = 22 [deprecated = true];*/ 22: - message.staticRemoteKey = reader.bool(); - break; - case /* lnrpc.CommitmentType commitment_type */ 26: - message.commitmentType = reader.int32(); - break; - case /* int64 lifetime */ 23: - message.lifetime = reader.int64().toString(); - break; - case /* int64 uptime */ 24: - message.uptime = reader.int64().toString(); - break; - case /* string close_address */ 25: - message.closeAddress = reader.string(); - break; - case /* uint64 push_amount_sat */ 27: - message.pushAmountSat = reader.uint64().toString(); - break; - case /* uint32 thaw_height */ 28: - message.thawHeight = reader.uint32(); - break; - case /* lnrpc.ChannelConstraints local_constraints */ 29: - message.localConstraints = exports.ChannelConstraints.internalBinaryRead(reader, reader.uint32(), options, message.localConstraints); - break; - case /* lnrpc.ChannelConstraints remote_constraints */ 30: - message.remoteConstraints = exports.ChannelConstraints.internalBinaryRead(reader, reader.uint32(), options, message.remoteConstraints); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bool active = 1; */ - if (message.active !== false) - writer.tag(1, runtime_1.WireType.Varint).bool(message.active); - /* string remote_pubkey = 2; */ - if (message.remotePubkey !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.remotePubkey); - /* string channel_point = 3; */ - if (message.channelPoint !== "") - writer.tag(3, runtime_1.WireType.LengthDelimited).string(message.channelPoint); - /* uint64 chan_id = 4 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(4, runtime_1.WireType.Varint).uint64(message.chanId); - /* int64 capacity = 5; */ - if (message.capacity !== "0") - writer.tag(5, runtime_1.WireType.Varint).int64(message.capacity); - /* int64 local_balance = 6; */ - if (message.localBalance !== "0") - writer.tag(6, runtime_1.WireType.Varint).int64(message.localBalance); - /* int64 remote_balance = 7; */ - if (message.remoteBalance !== "0") - writer.tag(7, runtime_1.WireType.Varint).int64(message.remoteBalance); - /* int64 commit_fee = 8; */ - if (message.commitFee !== "0") - writer.tag(8, runtime_1.WireType.Varint).int64(message.commitFee); - /* int64 commit_weight = 9; */ - if (message.commitWeight !== "0") - writer.tag(9, runtime_1.WireType.Varint).int64(message.commitWeight); - /* int64 fee_per_kw = 10; */ - if (message.feePerKw !== "0") - writer.tag(10, runtime_1.WireType.Varint).int64(message.feePerKw); - /* int64 unsettled_balance = 11; */ - if (message.unsettledBalance !== "0") - writer.tag(11, runtime_1.WireType.Varint).int64(message.unsettledBalance); - /* int64 total_satoshis_sent = 12; */ - if (message.totalSatoshisSent !== "0") - writer.tag(12, runtime_1.WireType.Varint).int64(message.totalSatoshisSent); - /* int64 total_satoshis_received = 13; */ - if (message.totalSatoshisReceived !== "0") - writer.tag(13, runtime_1.WireType.Varint).int64(message.totalSatoshisReceived); - /* uint64 num_updates = 14; */ - if (message.numUpdates !== "0") - writer.tag(14, runtime_1.WireType.Varint).uint64(message.numUpdates); - /* repeated lnrpc.HTLC pending_htlcs = 15; */ - for (let i = 0; i < message.pendingHtlcs.length; i++) - exports.HTLC.internalBinaryWrite(message.pendingHtlcs[i], writer.tag(15, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* uint32 csv_delay = 16 [deprecated = true]; */ - if (message.csvDelay !== 0) - writer.tag(16, runtime_1.WireType.Varint).uint32(message.csvDelay); - /* bool private = 17; */ - if (message.private !== false) - writer.tag(17, runtime_1.WireType.Varint).bool(message.private); - /* bool initiator = 18; */ - if (message.initiator !== false) - writer.tag(18, runtime_1.WireType.Varint).bool(message.initiator); - /* string chan_status_flags = 19; */ - if (message.chanStatusFlags !== "") - writer.tag(19, runtime_1.WireType.LengthDelimited).string(message.chanStatusFlags); - /* int64 local_chan_reserve_sat = 20 [deprecated = true]; */ - if (message.localChanReserveSat !== "0") - writer.tag(20, runtime_1.WireType.Varint).int64(message.localChanReserveSat); - /* int64 remote_chan_reserve_sat = 21 [deprecated = true]; */ - if (message.remoteChanReserveSat !== "0") - writer.tag(21, runtime_1.WireType.Varint).int64(message.remoteChanReserveSat); - /* bool static_remote_key = 22 [deprecated = true]; */ - if (message.staticRemoteKey !== false) - writer.tag(22, runtime_1.WireType.Varint).bool(message.staticRemoteKey); - /* lnrpc.CommitmentType commitment_type = 26; */ - if (message.commitmentType !== 0) - writer.tag(26, runtime_1.WireType.Varint).int32(message.commitmentType); - /* int64 lifetime = 23; */ - if (message.lifetime !== "0") - writer.tag(23, runtime_1.WireType.Varint).int64(message.lifetime); - /* int64 uptime = 24; */ - if (message.uptime !== "0") - writer.tag(24, runtime_1.WireType.Varint).int64(message.uptime); - /* string close_address = 25; */ - if (message.closeAddress !== "") - writer.tag(25, runtime_1.WireType.LengthDelimited).string(message.closeAddress); - /* uint64 push_amount_sat = 27; */ - if (message.pushAmountSat !== "0") - writer.tag(27, runtime_1.WireType.Varint).uint64(message.pushAmountSat); - /* uint32 thaw_height = 28; */ - if (message.thawHeight !== 0) - writer.tag(28, runtime_1.WireType.Varint).uint32(message.thawHeight); - /* lnrpc.ChannelConstraints local_constraints = 29; */ - if (message.localConstraints) - exports.ChannelConstraints.internalBinaryWrite(message.localConstraints, writer.tag(29, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.ChannelConstraints remote_constraints = 30; */ - if (message.remoteConstraints) - exports.ChannelConstraints.internalBinaryWrite(message.remoteConstraints, writer.tag(30, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Channel - */ -exports.Channel = new Channel$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListChannelsRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ListChannelsRequest", [ - { no: 1, name: "active_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "inactive_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 3, name: "public_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 4, name: "private_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 5, name: "peer", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { activeOnly: false, inactiveOnly: false, publicOnly: false, privateOnly: false, peer: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool active_only */ 1: - message.activeOnly = reader.bool(); - break; - case /* bool inactive_only */ 2: - message.inactiveOnly = reader.bool(); - break; - case /* bool public_only */ 3: - message.publicOnly = reader.bool(); - break; - case /* bool private_only */ 4: - message.privateOnly = reader.bool(); - break; - case /* bytes peer */ 5: - message.peer = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bool active_only = 1; */ - if (message.activeOnly !== false) - writer.tag(1, runtime_1.WireType.Varint).bool(message.activeOnly); - /* bool inactive_only = 2; */ - if (message.inactiveOnly !== false) - writer.tag(2, runtime_1.WireType.Varint).bool(message.inactiveOnly); - /* bool public_only = 3; */ - if (message.publicOnly !== false) - writer.tag(3, runtime_1.WireType.Varint).bool(message.publicOnly); - /* bool private_only = 4; */ - if (message.privateOnly !== false) - writer.tag(4, runtime_1.WireType.Varint).bool(message.privateOnly); - /* bytes peer = 5; */ - if (message.peer.length) - writer.tag(5, runtime_1.WireType.LengthDelimited).bytes(message.peer); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListChannelsRequest - */ -exports.ListChannelsRequest = new ListChannelsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListChannelsResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ListChannelsResponse", [ - { no: 11, name: "channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.Channel } - ]); - } - create(value) { - const message = { channels: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.Channel channels */ 11: - message.channels.push(exports.Channel.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated lnrpc.Channel channels = 11; */ - for (let i = 0; i < message.channels.length; i++) - exports.Channel.internalBinaryWrite(message.channels[i], writer.tag(11, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListChannelsResponse - */ -exports.ListChannelsResponse = new ListChannelsResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelCloseSummary$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelCloseSummary", [ - { no: 1, name: "channel_point", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 3, name: "chain_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "closing_tx_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 5, name: "remote_pubkey", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 6, name: "capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 7, name: "close_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 8, name: "settled_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 9, name: "time_locked_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 10, name: "close_type", kind: "enum", T: () => ["lnrpc.ChannelCloseSummary.ClosureType", ChannelCloseSummary_ClosureType] }, - { no: 11, name: "open_initiator", kind: "enum", T: () => ["lnrpc.Initiator", Initiator, "INITIATOR_"] }, - { no: 12, name: "close_initiator", kind: "enum", T: () => ["lnrpc.Initiator", Initiator, "INITIATOR_"] }, - { no: 13, name: "resolutions", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.Resolution } - ]); - } - create(value) { - const message = { channelPoint: "", chanId: "0", chainHash: "", closingTxHash: "", remotePubkey: "", capacity: "0", closeHeight: 0, settledBalance: "0", timeLockedBalance: "0", closeType: 0, openInitiator: 0, closeInitiator: 0, resolutions: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string channel_point */ 1: - message.channelPoint = reader.string(); - break; - case /* uint64 chan_id = 2 [jstype = JS_STRING];*/ 2: - message.chanId = reader.uint64().toString(); - break; - case /* string chain_hash */ 3: - message.chainHash = reader.string(); - break; - case /* string closing_tx_hash */ 4: - message.closingTxHash = reader.string(); - break; - case /* string remote_pubkey */ 5: - message.remotePubkey = reader.string(); - break; - case /* int64 capacity */ 6: - message.capacity = reader.int64().toString(); - break; - case /* uint32 close_height */ 7: - message.closeHeight = reader.uint32(); - break; - case /* int64 settled_balance */ 8: - message.settledBalance = reader.int64().toString(); - break; - case /* int64 time_locked_balance */ 9: - message.timeLockedBalance = reader.int64().toString(); - break; - case /* lnrpc.ChannelCloseSummary.ClosureType close_type */ 10: - message.closeType = reader.int32(); - break; - case /* lnrpc.Initiator open_initiator */ 11: - message.openInitiator = reader.int32(); - break; - case /* lnrpc.Initiator close_initiator */ 12: - message.closeInitiator = reader.int32(); - break; - case /* repeated lnrpc.Resolution resolutions */ 13: - message.resolutions.push(exports.Resolution.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string channel_point = 1; */ - if (message.channelPoint !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.channelPoint); - /* uint64 chan_id = 2 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(2, runtime_1.WireType.Varint).uint64(message.chanId); - /* string chain_hash = 3; */ - if (message.chainHash !== "") - writer.tag(3, runtime_1.WireType.LengthDelimited).string(message.chainHash); - /* string closing_tx_hash = 4; */ - if (message.closingTxHash !== "") - writer.tag(4, runtime_1.WireType.LengthDelimited).string(message.closingTxHash); - /* string remote_pubkey = 5; */ - if (message.remotePubkey !== "") - writer.tag(5, runtime_1.WireType.LengthDelimited).string(message.remotePubkey); - /* int64 capacity = 6; */ - if (message.capacity !== "0") - writer.tag(6, runtime_1.WireType.Varint).int64(message.capacity); - /* uint32 close_height = 7; */ - if (message.closeHeight !== 0) - writer.tag(7, runtime_1.WireType.Varint).uint32(message.closeHeight); - /* int64 settled_balance = 8; */ - if (message.settledBalance !== "0") - writer.tag(8, runtime_1.WireType.Varint).int64(message.settledBalance); - /* int64 time_locked_balance = 9; */ - if (message.timeLockedBalance !== "0") - writer.tag(9, runtime_1.WireType.Varint).int64(message.timeLockedBalance); - /* lnrpc.ChannelCloseSummary.ClosureType close_type = 10; */ - if (message.closeType !== 0) - writer.tag(10, runtime_1.WireType.Varint).int32(message.closeType); - /* lnrpc.Initiator open_initiator = 11; */ - if (message.openInitiator !== 0) - writer.tag(11, runtime_1.WireType.Varint).int32(message.openInitiator); - /* lnrpc.Initiator close_initiator = 12; */ - if (message.closeInitiator !== 0) - writer.tag(12, runtime_1.WireType.Varint).int32(message.closeInitiator); - /* repeated lnrpc.Resolution resolutions = 13; */ - for (let i = 0; i < message.resolutions.length; i++) - exports.Resolution.internalBinaryWrite(message.resolutions[i], writer.tag(13, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelCloseSummary - */ -exports.ChannelCloseSummary = new ChannelCloseSummary$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Resolution$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.Resolution", [ - { no: 1, name: "resolution_type", kind: "enum", T: () => ["lnrpc.ResolutionType", ResolutionType] }, - { no: 2, name: "outcome", kind: "enum", T: () => ["lnrpc.ResolutionOutcome", ResolutionOutcome] }, - { no: 3, name: "outpoint", kind: "message", T: () => exports.OutPoint }, - { no: 4, name: "amount_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 5, name: "sweep_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { resolutionType: 0, outcome: 0, amountSat: "0", sweepTxid: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ResolutionType resolution_type */ 1: - message.resolutionType = reader.int32(); - break; - case /* lnrpc.ResolutionOutcome outcome */ 2: - message.outcome = reader.int32(); - break; - case /* lnrpc.OutPoint outpoint */ 3: - message.outpoint = exports.OutPoint.internalBinaryRead(reader, reader.uint32(), options, message.outpoint); - break; - case /* uint64 amount_sat */ 4: - message.amountSat = reader.uint64().toString(); - break; - case /* string sweep_txid */ 5: - message.sweepTxid = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.ResolutionType resolution_type = 1; */ - if (message.resolutionType !== 0) - writer.tag(1, runtime_1.WireType.Varint).int32(message.resolutionType); - /* lnrpc.ResolutionOutcome outcome = 2; */ - if (message.outcome !== 0) - writer.tag(2, runtime_1.WireType.Varint).int32(message.outcome); - /* lnrpc.OutPoint outpoint = 3; */ - if (message.outpoint) - exports.OutPoint.internalBinaryWrite(message.outpoint, writer.tag(3, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* uint64 amount_sat = 4; */ - if (message.amountSat !== "0") - writer.tag(4, runtime_1.WireType.Varint).uint64(message.amountSat); - /* string sweep_txid = 5; */ - if (message.sweepTxid !== "") - writer.tag(5, runtime_1.WireType.LengthDelimited).string(message.sweepTxid); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Resolution - */ -exports.Resolution = new Resolution$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ClosedChannelsRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ClosedChannelsRequest", [ - { no: 1, name: "cooperative", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "local_force", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 3, name: "remote_force", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 4, name: "breach", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 5, name: "funding_canceled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 6, name: "abandoned", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { cooperative: false, localForce: false, remoteForce: false, breach: false, fundingCanceled: false, abandoned: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool cooperative */ 1: - message.cooperative = reader.bool(); - break; - case /* bool local_force */ 2: - message.localForce = reader.bool(); - break; - case /* bool remote_force */ 3: - message.remoteForce = reader.bool(); - break; - case /* bool breach */ 4: - message.breach = reader.bool(); - break; - case /* bool funding_canceled */ 5: - message.fundingCanceled = reader.bool(); - break; - case /* bool abandoned */ 6: - message.abandoned = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bool cooperative = 1; */ - if (message.cooperative !== false) - writer.tag(1, runtime_1.WireType.Varint).bool(message.cooperative); - /* bool local_force = 2; */ - if (message.localForce !== false) - writer.tag(2, runtime_1.WireType.Varint).bool(message.localForce); - /* bool remote_force = 3; */ - if (message.remoteForce !== false) - writer.tag(3, runtime_1.WireType.Varint).bool(message.remoteForce); - /* bool breach = 4; */ - if (message.breach !== false) - writer.tag(4, runtime_1.WireType.Varint).bool(message.breach); - /* bool funding_canceled = 5; */ - if (message.fundingCanceled !== false) - writer.tag(5, runtime_1.WireType.Varint).bool(message.fundingCanceled); - /* bool abandoned = 6; */ - if (message.abandoned !== false) - writer.tag(6, runtime_1.WireType.Varint).bool(message.abandoned); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ClosedChannelsRequest - */ -exports.ClosedChannelsRequest = new ClosedChannelsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ClosedChannelsResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ClosedChannelsResponse", [ - { no: 1, name: "channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.ChannelCloseSummary } - ]); - } - create(value) { - const message = { channels: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.ChannelCloseSummary channels */ 1: - message.channels.push(exports.ChannelCloseSummary.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated lnrpc.ChannelCloseSummary channels = 1; */ - for (let i = 0; i < message.channels.length; i++) - exports.ChannelCloseSummary.internalBinaryWrite(message.channels[i], writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ClosedChannelsResponse - */ -exports.ClosedChannelsResponse = new ClosedChannelsResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Peer$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.Peer", [ - { no: 1, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "bytes_sent", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 5, name: "bytes_recv", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 6, name: "sat_sent", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 7, name: "sat_recv", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 8, name: "inbound", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 9, name: "ping_time", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 10, name: "sync_type", kind: "enum", T: () => ["lnrpc.Peer.SyncType", Peer_SyncType] }, - { no: 11, name: "features", kind: "map", K: 13 /*ScalarType.UINT32*/, V: { kind: "message", T: () => exports.Feature } }, - { no: 12, name: "errors", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.TimestampedError }, - { no: 13, name: "flap_count", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 14, name: "last_flap_ns", kind: "scalar", T: 3 /*ScalarType.INT64*/ } - ]); - } - create(value) { - const message = { pubKey: "", address: "", bytesSent: "0", bytesRecv: "0", satSent: "0", satRecv: "0", inbound: false, pingTime: "0", syncType: 0, features: {}, errors: [], flapCount: 0, lastFlapNs: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string pub_key */ 1: - message.pubKey = reader.string(); - break; - case /* string address */ 3: - message.address = reader.string(); - break; - case /* uint64 bytes_sent */ 4: - message.bytesSent = reader.uint64().toString(); - break; - case /* uint64 bytes_recv */ 5: - message.bytesRecv = reader.uint64().toString(); - break; - case /* int64 sat_sent */ 6: - message.satSent = reader.int64().toString(); - break; - case /* int64 sat_recv */ 7: - message.satRecv = reader.int64().toString(); - break; - case /* bool inbound */ 8: - message.inbound = reader.bool(); - break; - case /* int64 ping_time */ 9: - message.pingTime = reader.int64().toString(); - break; - case /* lnrpc.Peer.SyncType sync_type */ 10: - message.syncType = reader.int32(); - break; - case /* map features */ 11: - this.binaryReadMap11(message.features, reader, options); - break; - case /* repeated lnrpc.TimestampedError errors */ 12: - message.errors.push(exports.TimestampedError.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* int32 flap_count */ 13: - message.flapCount = reader.int32(); - break; - case /* int64 last_flap_ns */ 14: - message.lastFlapNs = reader.int64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - binaryReadMap11(map, reader, options) { - let len = reader.uint32(), end = reader.pos + len, key, val; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint32(); - break; - case 2: - val = exports.Feature.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.Peer.features"); - } - } - map[key !== null && key !== void 0 ? key : 0] = val !== null && val !== void 0 ? val : exports.Feature.create(); - } - internalBinaryWrite(message, writer, options) { - /* string pub_key = 1; */ - if (message.pubKey !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.pubKey); - /* string address = 3; */ - if (message.address !== "") - writer.tag(3, runtime_1.WireType.LengthDelimited).string(message.address); - /* uint64 bytes_sent = 4; */ - if (message.bytesSent !== "0") - writer.tag(4, runtime_1.WireType.Varint).uint64(message.bytesSent); - /* uint64 bytes_recv = 5; */ - if (message.bytesRecv !== "0") - writer.tag(5, runtime_1.WireType.Varint).uint64(message.bytesRecv); - /* int64 sat_sent = 6; */ - if (message.satSent !== "0") - writer.tag(6, runtime_1.WireType.Varint).int64(message.satSent); - /* int64 sat_recv = 7; */ - if (message.satRecv !== "0") - writer.tag(7, runtime_1.WireType.Varint).int64(message.satRecv); - /* bool inbound = 8; */ - if (message.inbound !== false) - writer.tag(8, runtime_1.WireType.Varint).bool(message.inbound); - /* int64 ping_time = 9; */ - if (message.pingTime !== "0") - writer.tag(9, runtime_1.WireType.Varint).int64(message.pingTime); - /* lnrpc.Peer.SyncType sync_type = 10; */ - if (message.syncType !== 0) - writer.tag(10, runtime_1.WireType.Varint).int32(message.syncType); - /* map features = 11; */ - for (let k of Object.keys(message.features)) { - writer.tag(11, runtime_1.WireType.LengthDelimited).fork().tag(1, runtime_1.WireType.Varint).uint32(parseInt(k)); - writer.tag(2, runtime_1.WireType.LengthDelimited).fork(); - exports.Feature.internalBinaryWrite(message.features[k], writer, options); - writer.join().join(); - } - /* repeated lnrpc.TimestampedError errors = 12; */ - for (let i = 0; i < message.errors.length; i++) - exports.TimestampedError.internalBinaryWrite(message.errors[i], writer.tag(12, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* int32 flap_count = 13; */ - if (message.flapCount !== 0) - writer.tag(13, runtime_1.WireType.Varint).int32(message.flapCount); - /* int64 last_flap_ns = 14; */ - if (message.lastFlapNs !== "0") - writer.tag(14, runtime_1.WireType.Varint).int64(message.lastFlapNs); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Peer - */ -exports.Peer = new Peer$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class TimestampedError$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.TimestampedError", [ - { no: 1, name: "timestamp", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "error", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { timestamp: "0", error: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 timestamp */ 1: - message.timestamp = reader.uint64().toString(); - break; - case /* string error */ 2: - message.error = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint64 timestamp = 1; */ - if (message.timestamp !== "0") - writer.tag(1, runtime_1.WireType.Varint).uint64(message.timestamp); - /* string error = 2; */ - if (message.error !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.error); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.TimestampedError - */ -exports.TimestampedError = new TimestampedError$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListPeersRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ListPeersRequest", [ - { no: 1, name: "latest_error", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { latestError: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool latest_error */ 1: - message.latestError = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bool latest_error = 1; */ - if (message.latestError !== false) - writer.tag(1, runtime_1.WireType.Varint).bool(message.latestError); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListPeersRequest - */ -exports.ListPeersRequest = new ListPeersRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListPeersResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ListPeersResponse", [ - { no: 1, name: "peers", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.Peer } - ]); - } - create(value) { - const message = { peers: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.Peer peers */ 1: - message.peers.push(exports.Peer.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated lnrpc.Peer peers = 1; */ - for (let i = 0; i < message.peers.length; i++) - exports.Peer.internalBinaryWrite(message.peers[i], writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListPeersResponse - */ -exports.ListPeersResponse = new ListPeersResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PeerEventSubscription$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.PeerEventSubscription", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PeerEventSubscription - */ -exports.PeerEventSubscription = new PeerEventSubscription$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PeerEvent$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.PeerEvent", [ - { no: 1, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "type", kind: "enum", T: () => ["lnrpc.PeerEvent.EventType", PeerEvent_EventType] } - ]); - } - create(value) { - const message = { pubKey: "", type: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string pub_key */ 1: - message.pubKey = reader.string(); - break; - case /* lnrpc.PeerEvent.EventType type */ 2: - message.type = reader.int32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string pub_key = 1; */ - if (message.pubKey !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.pubKey); - /* lnrpc.PeerEvent.EventType type = 2; */ - if (message.type !== 0) - writer.tag(2, runtime_1.WireType.Varint).int32(message.type); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PeerEvent - */ -exports.PeerEvent = new PeerEvent$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class GetInfoRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.GetInfoRequest", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.GetInfoRequest - */ -exports.GetInfoRequest = new GetInfoRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class GetInfoResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.GetInfoResponse", [ - { no: 14, name: "version", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 20, name: "commit_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 1, name: "identity_pubkey", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "alias", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 17, name: "color", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "num_pending_channels", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 4, name: "num_active_channels", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 15, name: "num_inactive_channels", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "num_peers", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 6, name: "block_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 8, name: "block_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 13, name: "best_header_timestamp", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 9, name: "synced_to_chain", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 18, name: "synced_to_graph", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 10, name: "testnet", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 16, name: "chains", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.Chain }, - { no: 12, name: "uris", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ }, - { no: 19, name: "features", kind: "map", K: 13 /*ScalarType.UINT32*/, V: { kind: "message", T: () => exports.Feature } } - ]); - } - create(value) { - const message = { version: "", commitHash: "", identityPubkey: "", alias: "", color: "", numPendingChannels: 0, numActiveChannels: 0, numInactiveChannels: 0, numPeers: 0, blockHeight: 0, blockHash: "", bestHeaderTimestamp: "0", syncedToChain: false, syncedToGraph: false, testnet: false, chains: [], uris: [], features: {} }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string version */ 14: - message.version = reader.string(); - break; - case /* string commit_hash */ 20: - message.commitHash = reader.string(); - break; - case /* string identity_pubkey */ 1: - message.identityPubkey = reader.string(); - break; - case /* string alias */ 2: - message.alias = reader.string(); - break; - case /* string color */ 17: - message.color = reader.string(); - break; - case /* uint32 num_pending_channels */ 3: - message.numPendingChannels = reader.uint32(); - break; - case /* uint32 num_active_channels */ 4: - message.numActiveChannels = reader.uint32(); - break; - case /* uint32 num_inactive_channels */ 15: - message.numInactiveChannels = reader.uint32(); - break; - case /* uint32 num_peers */ 5: - message.numPeers = reader.uint32(); - break; - case /* uint32 block_height */ 6: - message.blockHeight = reader.uint32(); - break; - case /* string block_hash */ 8: - message.blockHash = reader.string(); - break; - case /* int64 best_header_timestamp */ 13: - message.bestHeaderTimestamp = reader.int64().toString(); - break; - case /* bool synced_to_chain */ 9: - message.syncedToChain = reader.bool(); - break; - case /* bool synced_to_graph */ 18: - message.syncedToGraph = reader.bool(); - break; - case /* bool testnet = 10 [deprecated = true];*/ 10: - message.testnet = reader.bool(); - break; - case /* repeated lnrpc.Chain chains */ 16: - message.chains.push(exports.Chain.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* repeated string uris */ 12: - message.uris.push(reader.string()); - break; - case /* map features */ 19: - this.binaryReadMap19(message.features, reader, options); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - binaryReadMap19(map, reader, options) { - let len = reader.uint32(), end = reader.pos + len, key, val; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint32(); - break; - case 2: - val = exports.Feature.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.GetInfoResponse.features"); - } - } - map[key !== null && key !== void 0 ? key : 0] = val !== null && val !== void 0 ? val : exports.Feature.create(); - } - internalBinaryWrite(message, writer, options) { - /* string version = 14; */ - if (message.version !== "") - writer.tag(14, runtime_1.WireType.LengthDelimited).string(message.version); - /* string commit_hash = 20; */ - if (message.commitHash !== "") - writer.tag(20, runtime_1.WireType.LengthDelimited).string(message.commitHash); - /* string identity_pubkey = 1; */ - if (message.identityPubkey !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.identityPubkey); - /* string alias = 2; */ - if (message.alias !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.alias); - /* string color = 17; */ - if (message.color !== "") - writer.tag(17, runtime_1.WireType.LengthDelimited).string(message.color); - /* uint32 num_pending_channels = 3; */ - if (message.numPendingChannels !== 0) - writer.tag(3, runtime_1.WireType.Varint).uint32(message.numPendingChannels); - /* uint32 num_active_channels = 4; */ - if (message.numActiveChannels !== 0) - writer.tag(4, runtime_1.WireType.Varint).uint32(message.numActiveChannels); - /* uint32 num_inactive_channels = 15; */ - if (message.numInactiveChannels !== 0) - writer.tag(15, runtime_1.WireType.Varint).uint32(message.numInactiveChannels); - /* uint32 num_peers = 5; */ - if (message.numPeers !== 0) - writer.tag(5, runtime_1.WireType.Varint).uint32(message.numPeers); - /* uint32 block_height = 6; */ - if (message.blockHeight !== 0) - writer.tag(6, runtime_1.WireType.Varint).uint32(message.blockHeight); - /* string block_hash = 8; */ - if (message.blockHash !== "") - writer.tag(8, runtime_1.WireType.LengthDelimited).string(message.blockHash); - /* int64 best_header_timestamp = 13; */ - if (message.bestHeaderTimestamp !== "0") - writer.tag(13, runtime_1.WireType.Varint).int64(message.bestHeaderTimestamp); - /* bool synced_to_chain = 9; */ - if (message.syncedToChain !== false) - writer.tag(9, runtime_1.WireType.Varint).bool(message.syncedToChain); - /* bool synced_to_graph = 18; */ - if (message.syncedToGraph !== false) - writer.tag(18, runtime_1.WireType.Varint).bool(message.syncedToGraph); - /* bool testnet = 10 [deprecated = true]; */ - if (message.testnet !== false) - writer.tag(10, runtime_1.WireType.Varint).bool(message.testnet); - /* repeated lnrpc.Chain chains = 16; */ - for (let i = 0; i < message.chains.length; i++) - exports.Chain.internalBinaryWrite(message.chains[i], writer.tag(16, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* repeated string uris = 12; */ - for (let i = 0; i < message.uris.length; i++) - writer.tag(12, runtime_1.WireType.LengthDelimited).string(message.uris[i]); - /* map features = 19; */ - for (let k of Object.keys(message.features)) { - writer.tag(19, runtime_1.WireType.LengthDelimited).fork().tag(1, runtime_1.WireType.Varint).uint32(parseInt(k)); - writer.tag(2, runtime_1.WireType.LengthDelimited).fork(); - exports.Feature.internalBinaryWrite(message.features[k], writer, options); - writer.join().join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.GetInfoResponse - */ -exports.GetInfoResponse = new GetInfoResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class GetRecoveryInfoRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.GetRecoveryInfoRequest", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.GetRecoveryInfoRequest - */ -exports.GetRecoveryInfoRequest = new GetRecoveryInfoRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class GetRecoveryInfoResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.GetRecoveryInfoResponse", [ - { no: 1, name: "recovery_mode", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "recovery_finished", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 3, name: "progress", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ } - ]); - } - create(value) { - const message = { recoveryMode: false, recoveryFinished: false, progress: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool recovery_mode */ 1: - message.recoveryMode = reader.bool(); - break; - case /* bool recovery_finished */ 2: - message.recoveryFinished = reader.bool(); - break; - case /* double progress */ 3: - message.progress = reader.double(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bool recovery_mode = 1; */ - if (message.recoveryMode !== false) - writer.tag(1, runtime_1.WireType.Varint).bool(message.recoveryMode); - /* bool recovery_finished = 2; */ - if (message.recoveryFinished !== false) - writer.tag(2, runtime_1.WireType.Varint).bool(message.recoveryFinished); - /* double progress = 3; */ - if (message.progress !== 0) - writer.tag(3, runtime_1.WireType.Bit64).double(message.progress); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.GetRecoveryInfoResponse - */ -exports.GetRecoveryInfoResponse = new GetRecoveryInfoResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Chain$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.Chain", [ - { no: 1, name: "chain", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "network", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { chain: "", network: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string chain */ 1: - message.chain = reader.string(); - break; - case /* string network */ 2: - message.network = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string chain = 1; */ - if (message.chain !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.chain); - /* string network = 2; */ - if (message.network !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.network); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Chain - */ -exports.Chain = new Chain$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ConfirmationUpdate$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ConfirmationUpdate", [ - { no: 1, name: "block_sha", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "block_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 3, name: "num_confs_left", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value) { - const message = { blockSha: new Uint8Array(0), blockHeight: 0, numConfsLeft: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes block_sha */ 1: - message.blockSha = reader.bytes(); - break; - case /* int32 block_height */ 2: - message.blockHeight = reader.int32(); - break; - case /* uint32 num_confs_left */ 3: - message.numConfsLeft = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes block_sha = 1; */ - if (message.blockSha.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.blockSha); - /* int32 block_height = 2; */ - if (message.blockHeight !== 0) - writer.tag(2, runtime_1.WireType.Varint).int32(message.blockHeight); - /* uint32 num_confs_left = 3; */ - if (message.numConfsLeft !== 0) - writer.tag(3, runtime_1.WireType.Varint).uint32(message.numConfsLeft); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ConfirmationUpdate - */ -exports.ConfirmationUpdate = new ConfirmationUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelOpenUpdate$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelOpenUpdate", [ - { no: 1, name: "channel_point", kind: "message", T: () => exports.ChannelPoint } - ]); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ChannelPoint channel_point */ 1: - message.channelPoint = exports.ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.channelPoint); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.ChannelPoint channel_point = 1; */ - if (message.channelPoint) - exports.ChannelPoint.internalBinaryWrite(message.channelPoint, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelOpenUpdate - */ -exports.ChannelOpenUpdate = new ChannelOpenUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelCloseUpdate$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelCloseUpdate", [ - { no: 1, name: "closing_txid", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "success", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { closingTxid: new Uint8Array(0), success: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes closing_txid */ 1: - message.closingTxid = reader.bytes(); - break; - case /* bool success */ 2: - message.success = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes closing_txid = 1; */ - if (message.closingTxid.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.closingTxid); - /* bool success = 2; */ - if (message.success !== false) - writer.tag(2, runtime_1.WireType.Varint).bool(message.success); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelCloseUpdate - */ -exports.ChannelCloseUpdate = new ChannelCloseUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class CloseChannelRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.CloseChannelRequest", [ - { no: 1, name: "channel_point", kind: "message", T: () => exports.ChannelPoint }, - { no: 2, name: "force", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 3, name: "target_conf", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 4, name: "sat_per_byte", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 5, name: "delivery_address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 6, name: "sat_per_vbyte", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { force: false, targetConf: 0, satPerByte: "0", deliveryAddress: "", satPerVbyte: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ChannelPoint channel_point */ 1: - message.channelPoint = exports.ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.channelPoint); - break; - case /* bool force */ 2: - message.force = reader.bool(); - break; - case /* int32 target_conf */ 3: - message.targetConf = reader.int32(); - break; - case /* int64 sat_per_byte = 4 [deprecated = true];*/ 4: - message.satPerByte = reader.int64().toString(); - break; - case /* string delivery_address */ 5: - message.deliveryAddress = reader.string(); - break; - case /* uint64 sat_per_vbyte */ 6: - message.satPerVbyte = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.ChannelPoint channel_point = 1; */ - if (message.channelPoint) - exports.ChannelPoint.internalBinaryWrite(message.channelPoint, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* bool force = 2; */ - if (message.force !== false) - writer.tag(2, runtime_1.WireType.Varint).bool(message.force); - /* int32 target_conf = 3; */ - if (message.targetConf !== 0) - writer.tag(3, runtime_1.WireType.Varint).int32(message.targetConf); - /* int64 sat_per_byte = 4 [deprecated = true]; */ - if (message.satPerByte !== "0") - writer.tag(4, runtime_1.WireType.Varint).int64(message.satPerByte); - /* string delivery_address = 5; */ - if (message.deliveryAddress !== "") - writer.tag(5, runtime_1.WireType.LengthDelimited).string(message.deliveryAddress); - /* uint64 sat_per_vbyte = 6; */ - if (message.satPerVbyte !== "0") - writer.tag(6, runtime_1.WireType.Varint).uint64(message.satPerVbyte); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.CloseChannelRequest - */ -exports.CloseChannelRequest = new CloseChannelRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class CloseStatusUpdate$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.CloseStatusUpdate", [ - { no: 1, name: "close_pending", kind: "message", oneof: "update", T: () => exports.PendingUpdate }, - { no: 3, name: "chan_close", kind: "message", oneof: "update", T: () => exports.ChannelCloseUpdate } - ]); - } - create(value) { - const message = { update: { oneofKind: undefined } }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.PendingUpdate close_pending */ 1: - message.update = { - oneofKind: "closePending", - closePending: exports.PendingUpdate.internalBinaryRead(reader, reader.uint32(), options, message.update.closePending) - }; - break; - case /* lnrpc.ChannelCloseUpdate chan_close */ 3: - message.update = { - oneofKind: "chanClose", - chanClose: exports.ChannelCloseUpdate.internalBinaryRead(reader, reader.uint32(), options, message.update.chanClose) - }; - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.PendingUpdate close_pending = 1; */ - if (message.update.oneofKind === "closePending") - exports.PendingUpdate.internalBinaryWrite(message.update.closePending, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.ChannelCloseUpdate chan_close = 3; */ - if (message.update.oneofKind === "chanClose") - exports.ChannelCloseUpdate.internalBinaryWrite(message.update.chanClose, writer.tag(3, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.CloseStatusUpdate - */ -exports.CloseStatusUpdate = new CloseStatusUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingUpdate$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.PendingUpdate", [ - { no: 1, name: "txid", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "output_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value) { - const message = { txid: new Uint8Array(0), outputIndex: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes txid */ 1: - message.txid = reader.bytes(); - break; - case /* uint32 output_index */ 2: - message.outputIndex = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes txid = 1; */ - if (message.txid.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.txid); - /* uint32 output_index = 2; */ - if (message.outputIndex !== 0) - writer.tag(2, runtime_1.WireType.Varint).uint32(message.outputIndex); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingUpdate - */ -exports.PendingUpdate = new PendingUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ReadyForPsbtFunding$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ReadyForPsbtFunding", [ - { no: 1, name: "funding_address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "funding_amount", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 3, name: "psbt", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { fundingAddress: "", fundingAmount: "0", psbt: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string funding_address */ 1: - message.fundingAddress = reader.string(); - break; - case /* int64 funding_amount */ 2: - message.fundingAmount = reader.int64().toString(); - break; - case /* bytes psbt */ 3: - message.psbt = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string funding_address = 1; */ - if (message.fundingAddress !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.fundingAddress); - /* int64 funding_amount = 2; */ - if (message.fundingAmount !== "0") - writer.tag(2, runtime_1.WireType.Varint).int64(message.fundingAmount); - /* bytes psbt = 3; */ - if (message.psbt.length) - writer.tag(3, runtime_1.WireType.LengthDelimited).bytes(message.psbt); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ReadyForPsbtFunding - */ -exports.ReadyForPsbtFunding = new ReadyForPsbtFunding$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class OpenChannelRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.OpenChannelRequest", [ - { no: 1, name: "sat_per_vbyte", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "node_pubkey", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "node_pubkey_string", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "local_funding_amount", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 5, name: "push_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 6, name: "target_conf", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 7, name: "sat_per_byte", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 8, name: "private", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 9, name: "min_htlc_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 10, name: "remote_csv_delay", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 11, name: "min_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 12, name: "spend_unconfirmed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 13, name: "close_address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 14, name: "funding_shim", kind: "message", T: () => exports.FundingShim }, - { no: 15, name: "remote_max_value_in_flight_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 16, name: "remote_max_htlcs", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 17, name: "max_local_csv", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value) { - const message = { satPerVbyte: "0", nodePubkey: new Uint8Array(0), nodePubkeyString: "", localFundingAmount: "0", pushSat: "0", targetConf: 0, satPerByte: "0", private: false, minHtlcMsat: "0", remoteCsvDelay: 0, minConfs: 0, spendUnconfirmed: false, closeAddress: "", remoteMaxValueInFlightMsat: "0", remoteMaxHtlcs: 0, maxLocalCsv: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 sat_per_vbyte */ 1: - message.satPerVbyte = reader.uint64().toString(); - break; - case /* bytes node_pubkey */ 2: - message.nodePubkey = reader.bytes(); - break; - case /* string node_pubkey_string = 3 [deprecated = true];*/ 3: - message.nodePubkeyString = reader.string(); - break; - case /* int64 local_funding_amount */ 4: - message.localFundingAmount = reader.int64().toString(); - break; - case /* int64 push_sat */ 5: - message.pushSat = reader.int64().toString(); - break; - case /* int32 target_conf */ 6: - message.targetConf = reader.int32(); - break; - case /* int64 sat_per_byte = 7 [deprecated = true];*/ 7: - message.satPerByte = reader.int64().toString(); - break; - case /* bool private */ 8: - message.private = reader.bool(); - break; - case /* int64 min_htlc_msat */ 9: - message.minHtlcMsat = reader.int64().toString(); - break; - case /* uint32 remote_csv_delay */ 10: - message.remoteCsvDelay = reader.uint32(); - break; - case /* int32 min_confs */ 11: - message.minConfs = reader.int32(); - break; - case /* bool spend_unconfirmed */ 12: - message.spendUnconfirmed = reader.bool(); - break; - case /* string close_address */ 13: - message.closeAddress = reader.string(); - break; - case /* lnrpc.FundingShim funding_shim */ 14: - message.fundingShim = exports.FundingShim.internalBinaryRead(reader, reader.uint32(), options, message.fundingShim); - break; - case /* uint64 remote_max_value_in_flight_msat */ 15: - message.remoteMaxValueInFlightMsat = reader.uint64().toString(); - break; - case /* uint32 remote_max_htlcs */ 16: - message.remoteMaxHtlcs = reader.uint32(); - break; - case /* uint32 max_local_csv */ 17: - message.maxLocalCsv = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint64 sat_per_vbyte = 1; */ - if (message.satPerVbyte !== "0") - writer.tag(1, runtime_1.WireType.Varint).uint64(message.satPerVbyte); - /* bytes node_pubkey = 2; */ - if (message.nodePubkey.length) - writer.tag(2, runtime_1.WireType.LengthDelimited).bytes(message.nodePubkey); - /* string node_pubkey_string = 3 [deprecated = true]; */ - if (message.nodePubkeyString !== "") - writer.tag(3, runtime_1.WireType.LengthDelimited).string(message.nodePubkeyString); - /* int64 local_funding_amount = 4; */ - if (message.localFundingAmount !== "0") - writer.tag(4, runtime_1.WireType.Varint).int64(message.localFundingAmount); - /* int64 push_sat = 5; */ - if (message.pushSat !== "0") - writer.tag(5, runtime_1.WireType.Varint).int64(message.pushSat); - /* int32 target_conf = 6; */ - if (message.targetConf !== 0) - writer.tag(6, runtime_1.WireType.Varint).int32(message.targetConf); - /* int64 sat_per_byte = 7 [deprecated = true]; */ - if (message.satPerByte !== "0") - writer.tag(7, runtime_1.WireType.Varint).int64(message.satPerByte); - /* bool private = 8; */ - if (message.private !== false) - writer.tag(8, runtime_1.WireType.Varint).bool(message.private); - /* int64 min_htlc_msat = 9; */ - if (message.minHtlcMsat !== "0") - writer.tag(9, runtime_1.WireType.Varint).int64(message.minHtlcMsat); - /* uint32 remote_csv_delay = 10; */ - if (message.remoteCsvDelay !== 0) - writer.tag(10, runtime_1.WireType.Varint).uint32(message.remoteCsvDelay); - /* int32 min_confs = 11; */ - if (message.minConfs !== 0) - writer.tag(11, runtime_1.WireType.Varint).int32(message.minConfs); - /* bool spend_unconfirmed = 12; */ - if (message.spendUnconfirmed !== false) - writer.tag(12, runtime_1.WireType.Varint).bool(message.spendUnconfirmed); - /* string close_address = 13; */ - if (message.closeAddress !== "") - writer.tag(13, runtime_1.WireType.LengthDelimited).string(message.closeAddress); - /* lnrpc.FundingShim funding_shim = 14; */ - if (message.fundingShim) - exports.FundingShim.internalBinaryWrite(message.fundingShim, writer.tag(14, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* uint64 remote_max_value_in_flight_msat = 15; */ - if (message.remoteMaxValueInFlightMsat !== "0") - writer.tag(15, runtime_1.WireType.Varint).uint64(message.remoteMaxValueInFlightMsat); - /* uint32 remote_max_htlcs = 16; */ - if (message.remoteMaxHtlcs !== 0) - writer.tag(16, runtime_1.WireType.Varint).uint32(message.remoteMaxHtlcs); - /* uint32 max_local_csv = 17; */ - if (message.maxLocalCsv !== 0) - writer.tag(17, runtime_1.WireType.Varint).uint32(message.maxLocalCsv); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.OpenChannelRequest - */ -exports.OpenChannelRequest = new OpenChannelRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class OpenStatusUpdate$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.OpenStatusUpdate", [ - { no: 1, name: "chan_pending", kind: "message", oneof: "update", T: () => exports.PendingUpdate }, - { no: 3, name: "chan_open", kind: "message", oneof: "update", T: () => exports.ChannelOpenUpdate }, - { no: 5, name: "psbt_fund", kind: "message", oneof: "update", T: () => exports.ReadyForPsbtFunding }, - { no: 4, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { update: { oneofKind: undefined }, pendingChanId: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.PendingUpdate chan_pending */ 1: - message.update = { - oneofKind: "chanPending", - chanPending: exports.PendingUpdate.internalBinaryRead(reader, reader.uint32(), options, message.update.chanPending) - }; - break; - case /* lnrpc.ChannelOpenUpdate chan_open */ 3: - message.update = { - oneofKind: "chanOpen", - chanOpen: exports.ChannelOpenUpdate.internalBinaryRead(reader, reader.uint32(), options, message.update.chanOpen) - }; - break; - case /* lnrpc.ReadyForPsbtFunding psbt_fund */ 5: - message.update = { - oneofKind: "psbtFund", - psbtFund: exports.ReadyForPsbtFunding.internalBinaryRead(reader, reader.uint32(), options, message.update.psbtFund) - }; - break; - case /* bytes pending_chan_id */ 4: - message.pendingChanId = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.PendingUpdate chan_pending = 1; */ - if (message.update.oneofKind === "chanPending") - exports.PendingUpdate.internalBinaryWrite(message.update.chanPending, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.ChannelOpenUpdate chan_open = 3; */ - if (message.update.oneofKind === "chanOpen") - exports.ChannelOpenUpdate.internalBinaryWrite(message.update.chanOpen, writer.tag(3, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.ReadyForPsbtFunding psbt_fund = 5; */ - if (message.update.oneofKind === "psbtFund") - exports.ReadyForPsbtFunding.internalBinaryWrite(message.update.psbtFund, writer.tag(5, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* bytes pending_chan_id = 4; */ - if (message.pendingChanId.length) - writer.tag(4, runtime_1.WireType.LengthDelimited).bytes(message.pendingChanId); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.OpenStatusUpdate - */ -exports.OpenStatusUpdate = new OpenStatusUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class KeyLocator$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.KeyLocator", [ - { no: 1, name: "key_family", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 2, name: "key_index", kind: "scalar", T: 5 /*ScalarType.INT32*/ } - ]); - } - create(value) { - const message = { keyFamily: 0, keyIndex: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int32 key_family */ 1: - message.keyFamily = reader.int32(); - break; - case /* int32 key_index */ 2: - message.keyIndex = reader.int32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* int32 key_family = 1; */ - if (message.keyFamily !== 0) - writer.tag(1, runtime_1.WireType.Varint).int32(message.keyFamily); - /* int32 key_index = 2; */ - if (message.keyIndex !== 0) - writer.tag(2, runtime_1.WireType.Varint).int32(message.keyIndex); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.KeyLocator - */ -exports.KeyLocator = new KeyLocator$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class KeyDescriptor$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.KeyDescriptor", [ - { no: 1, name: "raw_key_bytes", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "key_loc", kind: "message", T: () => exports.KeyLocator } - ]); - } - create(value) { - const message = { rawKeyBytes: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes raw_key_bytes */ 1: - message.rawKeyBytes = reader.bytes(); - break; - case /* lnrpc.KeyLocator key_loc */ 2: - message.keyLoc = exports.KeyLocator.internalBinaryRead(reader, reader.uint32(), options, message.keyLoc); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes raw_key_bytes = 1; */ - if (message.rawKeyBytes.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.rawKeyBytes); - /* lnrpc.KeyLocator key_loc = 2; */ - if (message.keyLoc) - exports.KeyLocator.internalBinaryWrite(message.keyLoc, writer.tag(2, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.KeyDescriptor - */ -exports.KeyDescriptor = new KeyDescriptor$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChanPointShim$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChanPointShim", [ - { no: 1, name: "amt", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 2, name: "chan_point", kind: "message", T: () => exports.ChannelPoint }, - { no: 3, name: "local_key", kind: "message", T: () => exports.KeyDescriptor }, - { no: 4, name: "remote_key", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 5, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 6, name: "thaw_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value) { - const message = { amt: "0", remoteKey: new Uint8Array(0), pendingChanId: new Uint8Array(0), thawHeight: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 amt */ 1: - message.amt = reader.int64().toString(); - break; - case /* lnrpc.ChannelPoint chan_point */ 2: - message.chanPoint = exports.ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.chanPoint); - break; - case /* lnrpc.KeyDescriptor local_key */ 3: - message.localKey = exports.KeyDescriptor.internalBinaryRead(reader, reader.uint32(), options, message.localKey); - break; - case /* bytes remote_key */ 4: - message.remoteKey = reader.bytes(); - break; - case /* bytes pending_chan_id */ 5: - message.pendingChanId = reader.bytes(); - break; - case /* uint32 thaw_height */ 6: - message.thawHeight = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* int64 amt = 1; */ - if (message.amt !== "0") - writer.tag(1, runtime_1.WireType.Varint).int64(message.amt); - /* lnrpc.ChannelPoint chan_point = 2; */ - if (message.chanPoint) - exports.ChannelPoint.internalBinaryWrite(message.chanPoint, writer.tag(2, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.KeyDescriptor local_key = 3; */ - if (message.localKey) - exports.KeyDescriptor.internalBinaryWrite(message.localKey, writer.tag(3, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* bytes remote_key = 4; */ - if (message.remoteKey.length) - writer.tag(4, runtime_1.WireType.LengthDelimited).bytes(message.remoteKey); - /* bytes pending_chan_id = 5; */ - if (message.pendingChanId.length) - writer.tag(5, runtime_1.WireType.LengthDelimited).bytes(message.pendingChanId); - /* uint32 thaw_height = 6; */ - if (message.thawHeight !== 0) - writer.tag(6, runtime_1.WireType.Varint).uint32(message.thawHeight); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChanPointShim - */ -exports.ChanPointShim = new ChanPointShim$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PsbtShim$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.PsbtShim", [ - { no: 1, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "base_psbt", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "no_publish", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { pendingChanId: new Uint8Array(0), basePsbt: new Uint8Array(0), noPublish: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes pending_chan_id */ 1: - message.pendingChanId = reader.bytes(); - break; - case /* bytes base_psbt */ 2: - message.basePsbt = reader.bytes(); - break; - case /* bool no_publish */ 3: - message.noPublish = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes pending_chan_id = 1; */ - if (message.pendingChanId.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.pendingChanId); - /* bytes base_psbt = 2; */ - if (message.basePsbt.length) - writer.tag(2, runtime_1.WireType.LengthDelimited).bytes(message.basePsbt); - /* bool no_publish = 3; */ - if (message.noPublish !== false) - writer.tag(3, runtime_1.WireType.Varint).bool(message.noPublish); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PsbtShim - */ -exports.PsbtShim = new PsbtShim$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FundingShim$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.FundingShim", [ - { no: 1, name: "chan_point_shim", kind: "message", oneof: "shim", T: () => exports.ChanPointShim }, - { no: 2, name: "psbt_shim", kind: "message", oneof: "shim", T: () => exports.PsbtShim } - ]); - } - create(value) { - const message = { shim: { oneofKind: undefined } }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ChanPointShim chan_point_shim */ 1: - message.shim = { - oneofKind: "chanPointShim", - chanPointShim: exports.ChanPointShim.internalBinaryRead(reader, reader.uint32(), options, message.shim.chanPointShim) - }; - break; - case /* lnrpc.PsbtShim psbt_shim */ 2: - message.shim = { - oneofKind: "psbtShim", - psbtShim: exports.PsbtShim.internalBinaryRead(reader, reader.uint32(), options, message.shim.psbtShim) - }; - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.ChanPointShim chan_point_shim = 1; */ - if (message.shim.oneofKind === "chanPointShim") - exports.ChanPointShim.internalBinaryWrite(message.shim.chanPointShim, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.PsbtShim psbt_shim = 2; */ - if (message.shim.oneofKind === "psbtShim") - exports.PsbtShim.internalBinaryWrite(message.shim.psbtShim, writer.tag(2, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FundingShim - */ -exports.FundingShim = new FundingShim$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FundingShimCancel$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.FundingShimCancel", [ - { no: 1, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { pendingChanId: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes pending_chan_id */ 1: - message.pendingChanId = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes pending_chan_id = 1; */ - if (message.pendingChanId.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.pendingChanId); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FundingShimCancel - */ -exports.FundingShimCancel = new FundingShimCancel$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FundingPsbtVerify$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.FundingPsbtVerify", [ - { no: 1, name: "funded_psbt", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { fundedPsbt: new Uint8Array(0), pendingChanId: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes funded_psbt */ 1: - message.fundedPsbt = reader.bytes(); - break; - case /* bytes pending_chan_id */ 2: - message.pendingChanId = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes funded_psbt = 1; */ - if (message.fundedPsbt.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.fundedPsbt); - /* bytes pending_chan_id = 2; */ - if (message.pendingChanId.length) - writer.tag(2, runtime_1.WireType.LengthDelimited).bytes(message.pendingChanId); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FundingPsbtVerify - */ -exports.FundingPsbtVerify = new FundingPsbtVerify$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FundingPsbtFinalize$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.FundingPsbtFinalize", [ - { no: 1, name: "signed_psbt", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "final_raw_tx", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { signedPsbt: new Uint8Array(0), pendingChanId: new Uint8Array(0), finalRawTx: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes signed_psbt */ 1: - message.signedPsbt = reader.bytes(); - break; - case /* bytes pending_chan_id */ 2: - message.pendingChanId = reader.bytes(); - break; - case /* bytes final_raw_tx */ 3: - message.finalRawTx = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes signed_psbt = 1; */ - if (message.signedPsbt.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.signedPsbt); - /* bytes pending_chan_id = 2; */ - if (message.pendingChanId.length) - writer.tag(2, runtime_1.WireType.LengthDelimited).bytes(message.pendingChanId); - /* bytes final_raw_tx = 3; */ - if (message.finalRawTx.length) - writer.tag(3, runtime_1.WireType.LengthDelimited).bytes(message.finalRawTx); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FundingPsbtFinalize - */ -exports.FundingPsbtFinalize = new FundingPsbtFinalize$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FundingTransitionMsg$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.FundingTransitionMsg", [ - { no: 1, name: "shim_register", kind: "message", oneof: "trigger", T: () => exports.FundingShim }, - { no: 2, name: "shim_cancel", kind: "message", oneof: "trigger", T: () => exports.FundingShimCancel }, - { no: 3, name: "psbt_verify", kind: "message", oneof: "trigger", T: () => exports.FundingPsbtVerify }, - { no: 4, name: "psbt_finalize", kind: "message", oneof: "trigger", T: () => exports.FundingPsbtFinalize } - ]); - } - create(value) { - const message = { trigger: { oneofKind: undefined } }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.FundingShim shim_register */ 1: - message.trigger = { - oneofKind: "shimRegister", - shimRegister: exports.FundingShim.internalBinaryRead(reader, reader.uint32(), options, message.trigger.shimRegister) - }; - break; - case /* lnrpc.FundingShimCancel shim_cancel */ 2: - message.trigger = { - oneofKind: "shimCancel", - shimCancel: exports.FundingShimCancel.internalBinaryRead(reader, reader.uint32(), options, message.trigger.shimCancel) - }; - break; - case /* lnrpc.FundingPsbtVerify psbt_verify */ 3: - message.trigger = { - oneofKind: "psbtVerify", - psbtVerify: exports.FundingPsbtVerify.internalBinaryRead(reader, reader.uint32(), options, message.trigger.psbtVerify) - }; - break; - case /* lnrpc.FundingPsbtFinalize psbt_finalize */ 4: - message.trigger = { - oneofKind: "psbtFinalize", - psbtFinalize: exports.FundingPsbtFinalize.internalBinaryRead(reader, reader.uint32(), options, message.trigger.psbtFinalize) - }; - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.FundingShim shim_register = 1; */ - if (message.trigger.oneofKind === "shimRegister") - exports.FundingShim.internalBinaryWrite(message.trigger.shimRegister, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.FundingShimCancel shim_cancel = 2; */ - if (message.trigger.oneofKind === "shimCancel") - exports.FundingShimCancel.internalBinaryWrite(message.trigger.shimCancel, writer.tag(2, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.FundingPsbtVerify psbt_verify = 3; */ - if (message.trigger.oneofKind === "psbtVerify") - exports.FundingPsbtVerify.internalBinaryWrite(message.trigger.psbtVerify, writer.tag(3, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.FundingPsbtFinalize psbt_finalize = 4; */ - if (message.trigger.oneofKind === "psbtFinalize") - exports.FundingPsbtFinalize.internalBinaryWrite(message.trigger.psbtFinalize, writer.tag(4, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FundingTransitionMsg - */ -exports.FundingTransitionMsg = new FundingTransitionMsg$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FundingStateStepResp$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.FundingStateStepResp", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FundingStateStepResp - */ -exports.FundingStateStepResp = new FundingStateStepResp$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingHTLC$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.PendingHTLC", [ - { no: 1, name: "incoming", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "amount", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 3, name: "outpoint", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "maturity_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "blocks_til_maturity", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 6, name: "stage", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value) { - const message = { incoming: false, amount: "0", outpoint: "", maturityHeight: 0, blocksTilMaturity: 0, stage: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool incoming */ 1: - message.incoming = reader.bool(); - break; - case /* int64 amount */ 2: - message.amount = reader.int64().toString(); - break; - case /* string outpoint */ 3: - message.outpoint = reader.string(); - break; - case /* uint32 maturity_height */ 4: - message.maturityHeight = reader.uint32(); - break; - case /* int32 blocks_til_maturity */ 5: - message.blocksTilMaturity = reader.int32(); - break; - case /* uint32 stage */ 6: - message.stage = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bool incoming = 1; */ - if (message.incoming !== false) - writer.tag(1, runtime_1.WireType.Varint).bool(message.incoming); - /* int64 amount = 2; */ - if (message.amount !== "0") - writer.tag(2, runtime_1.WireType.Varint).int64(message.amount); - /* string outpoint = 3; */ - if (message.outpoint !== "") - writer.tag(3, runtime_1.WireType.LengthDelimited).string(message.outpoint); - /* uint32 maturity_height = 4; */ - if (message.maturityHeight !== 0) - writer.tag(4, runtime_1.WireType.Varint).uint32(message.maturityHeight); - /* int32 blocks_til_maturity = 5; */ - if (message.blocksTilMaturity !== 0) - writer.tag(5, runtime_1.WireType.Varint).int32(message.blocksTilMaturity); - /* uint32 stage = 6; */ - if (message.stage !== 0) - writer.tag(6, runtime_1.WireType.Varint).uint32(message.stage); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingHTLC - */ -exports.PendingHTLC = new PendingHTLC$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingChannelsRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.PendingChannelsRequest", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingChannelsRequest - */ -exports.PendingChannelsRequest = new PendingChannelsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingChannelsResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.PendingChannelsResponse", [ - { no: 1, name: "total_limbo_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 2, name: "pending_open_channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.PendingChannelsResponse_PendingOpenChannel }, - { no: 3, name: "pending_closing_channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.PendingChannelsResponse_ClosedChannel }, - { no: 4, name: "pending_force_closing_channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.PendingChannelsResponse_ForceClosedChannel }, - { no: 5, name: "waiting_close_channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.PendingChannelsResponse_WaitingCloseChannel } - ]); - } - create(value) { - const message = { totalLimboBalance: "0", pendingOpenChannels: [], pendingClosingChannels: [], pendingForceClosingChannels: [], waitingCloseChannels: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 total_limbo_balance */ 1: - message.totalLimboBalance = reader.int64().toString(); - break; - case /* repeated lnrpc.PendingChannelsResponse.PendingOpenChannel pending_open_channels */ 2: - message.pendingOpenChannels.push(exports.PendingChannelsResponse_PendingOpenChannel.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* repeated lnrpc.PendingChannelsResponse.ClosedChannel pending_closing_channels = 3 [deprecated = true];*/ 3: - message.pendingClosingChannels.push(exports.PendingChannelsResponse_ClosedChannel.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* repeated lnrpc.PendingChannelsResponse.ForceClosedChannel pending_force_closing_channels */ 4: - message.pendingForceClosingChannels.push(exports.PendingChannelsResponse_ForceClosedChannel.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* repeated lnrpc.PendingChannelsResponse.WaitingCloseChannel waiting_close_channels */ 5: - message.waitingCloseChannels.push(exports.PendingChannelsResponse_WaitingCloseChannel.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* int64 total_limbo_balance = 1; */ - if (message.totalLimboBalance !== "0") - writer.tag(1, runtime_1.WireType.Varint).int64(message.totalLimboBalance); - /* repeated lnrpc.PendingChannelsResponse.PendingOpenChannel pending_open_channels = 2; */ - for (let i = 0; i < message.pendingOpenChannels.length; i++) - exports.PendingChannelsResponse_PendingOpenChannel.internalBinaryWrite(message.pendingOpenChannels[i], writer.tag(2, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* repeated lnrpc.PendingChannelsResponse.ClosedChannel pending_closing_channels = 3 [deprecated = true]; */ - for (let i = 0; i < message.pendingClosingChannels.length; i++) - exports.PendingChannelsResponse_ClosedChannel.internalBinaryWrite(message.pendingClosingChannels[i], writer.tag(3, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* repeated lnrpc.PendingChannelsResponse.ForceClosedChannel pending_force_closing_channels = 4; */ - for (let i = 0; i < message.pendingForceClosingChannels.length; i++) - exports.PendingChannelsResponse_ForceClosedChannel.internalBinaryWrite(message.pendingForceClosingChannels[i], writer.tag(4, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* repeated lnrpc.PendingChannelsResponse.WaitingCloseChannel waiting_close_channels = 5; */ - for (let i = 0; i < message.waitingCloseChannels.length; i++) - exports.PendingChannelsResponse_WaitingCloseChannel.internalBinaryWrite(message.waitingCloseChannels[i], writer.tag(5, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse - */ -exports.PendingChannelsResponse = new PendingChannelsResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingChannelsResponse_PendingChannel$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.PendingChannelsResponse.PendingChannel", [ - { no: 1, name: "remote_node_pub", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "channel_point", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 4, name: "local_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 5, name: "remote_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 6, name: "local_chan_reserve_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 7, name: "remote_chan_reserve_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 8, name: "initiator", kind: "enum", T: () => ["lnrpc.Initiator", Initiator, "INITIATOR_"] }, - { no: 9, name: "commitment_type", kind: "enum", T: () => ["lnrpc.CommitmentType", CommitmentType] } - ]); - } - create(value) { - const message = { remoteNodePub: "", channelPoint: "", capacity: "0", localBalance: "0", remoteBalance: "0", localChanReserveSat: "0", remoteChanReserveSat: "0", initiator: 0, commitmentType: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string remote_node_pub */ 1: - message.remoteNodePub = reader.string(); - break; - case /* string channel_point */ 2: - message.channelPoint = reader.string(); - break; - case /* int64 capacity */ 3: - message.capacity = reader.int64().toString(); - break; - case /* int64 local_balance */ 4: - message.localBalance = reader.int64().toString(); - break; - case /* int64 remote_balance */ 5: - message.remoteBalance = reader.int64().toString(); - break; - case /* int64 local_chan_reserve_sat */ 6: - message.localChanReserveSat = reader.int64().toString(); - break; - case /* int64 remote_chan_reserve_sat */ 7: - message.remoteChanReserveSat = reader.int64().toString(); - break; - case /* lnrpc.Initiator initiator */ 8: - message.initiator = reader.int32(); - break; - case /* lnrpc.CommitmentType commitment_type */ 9: - message.commitmentType = reader.int32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string remote_node_pub = 1; */ - if (message.remoteNodePub !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.remoteNodePub); - /* string channel_point = 2; */ - if (message.channelPoint !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.channelPoint); - /* int64 capacity = 3; */ - if (message.capacity !== "0") - writer.tag(3, runtime_1.WireType.Varint).int64(message.capacity); - /* int64 local_balance = 4; */ - if (message.localBalance !== "0") - writer.tag(4, runtime_1.WireType.Varint).int64(message.localBalance); - /* int64 remote_balance = 5; */ - if (message.remoteBalance !== "0") - writer.tag(5, runtime_1.WireType.Varint).int64(message.remoteBalance); - /* int64 local_chan_reserve_sat = 6; */ - if (message.localChanReserveSat !== "0") - writer.tag(6, runtime_1.WireType.Varint).int64(message.localChanReserveSat); - /* int64 remote_chan_reserve_sat = 7; */ - if (message.remoteChanReserveSat !== "0") - writer.tag(7, runtime_1.WireType.Varint).int64(message.remoteChanReserveSat); - /* lnrpc.Initiator initiator = 8; */ - if (message.initiator !== 0) - writer.tag(8, runtime_1.WireType.Varint).int32(message.initiator); - /* lnrpc.CommitmentType commitment_type = 9; */ - if (message.commitmentType !== 0) - writer.tag(9, runtime_1.WireType.Varint).int32(message.commitmentType); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse.PendingChannel - */ -exports.PendingChannelsResponse_PendingChannel = new PendingChannelsResponse_PendingChannel$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingChannelsResponse_PendingOpenChannel$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.PendingChannelsResponse.PendingOpenChannel", [ - { no: 1, name: "channel", kind: "message", T: () => exports.PendingChannelsResponse_PendingChannel }, - { no: 2, name: "confirmation_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 4, name: "commit_fee", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 5, name: "commit_weight", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 6, name: "fee_per_kw", kind: "scalar", T: 3 /*ScalarType.INT64*/ } - ]); - } - create(value) { - const message = { confirmationHeight: 0, commitFee: "0", commitWeight: "0", feePerKw: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.PendingChannelsResponse.PendingChannel channel */ 1: - message.channel = exports.PendingChannelsResponse_PendingChannel.internalBinaryRead(reader, reader.uint32(), options, message.channel); - break; - case /* uint32 confirmation_height */ 2: - message.confirmationHeight = reader.uint32(); - break; - case /* int64 commit_fee */ 4: - message.commitFee = reader.int64().toString(); - break; - case /* int64 commit_weight */ 5: - message.commitWeight = reader.int64().toString(); - break; - case /* int64 fee_per_kw */ 6: - message.feePerKw = reader.int64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.PendingChannelsResponse.PendingChannel channel = 1; */ - if (message.channel) - exports.PendingChannelsResponse_PendingChannel.internalBinaryWrite(message.channel, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* uint32 confirmation_height = 2; */ - if (message.confirmationHeight !== 0) - writer.tag(2, runtime_1.WireType.Varint).uint32(message.confirmationHeight); - /* int64 commit_fee = 4; */ - if (message.commitFee !== "0") - writer.tag(4, runtime_1.WireType.Varint).int64(message.commitFee); - /* int64 commit_weight = 5; */ - if (message.commitWeight !== "0") - writer.tag(5, runtime_1.WireType.Varint).int64(message.commitWeight); - /* int64 fee_per_kw = 6; */ - if (message.feePerKw !== "0") - writer.tag(6, runtime_1.WireType.Varint).int64(message.feePerKw); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse.PendingOpenChannel - */ -exports.PendingChannelsResponse_PendingOpenChannel = new PendingChannelsResponse_PendingOpenChannel$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingChannelsResponse_WaitingCloseChannel$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.PendingChannelsResponse.WaitingCloseChannel", [ - { no: 1, name: "channel", kind: "message", T: () => exports.PendingChannelsResponse_PendingChannel }, - { no: 2, name: "limbo_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 3, name: "commitments", kind: "message", T: () => exports.PendingChannelsResponse_Commitments } - ]); - } - create(value) { - const message = { limboBalance: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.PendingChannelsResponse.PendingChannel channel */ 1: - message.channel = exports.PendingChannelsResponse_PendingChannel.internalBinaryRead(reader, reader.uint32(), options, message.channel); - break; - case /* int64 limbo_balance */ 2: - message.limboBalance = reader.int64().toString(); - break; - case /* lnrpc.PendingChannelsResponse.Commitments commitments */ 3: - message.commitments = exports.PendingChannelsResponse_Commitments.internalBinaryRead(reader, reader.uint32(), options, message.commitments); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.PendingChannelsResponse.PendingChannel channel = 1; */ - if (message.channel) - exports.PendingChannelsResponse_PendingChannel.internalBinaryWrite(message.channel, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* int64 limbo_balance = 2; */ - if (message.limboBalance !== "0") - writer.tag(2, runtime_1.WireType.Varint).int64(message.limboBalance); - /* lnrpc.PendingChannelsResponse.Commitments commitments = 3; */ - if (message.commitments) - exports.PendingChannelsResponse_Commitments.internalBinaryWrite(message.commitments, writer.tag(3, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse.WaitingCloseChannel - */ -exports.PendingChannelsResponse_WaitingCloseChannel = new PendingChannelsResponse_WaitingCloseChannel$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingChannelsResponse_Commitments$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.PendingChannelsResponse.Commitments", [ - { no: 1, name: "local_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "remote_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "remote_pending_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "local_commit_fee_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 5, name: "remote_commit_fee_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 6, name: "remote_pending_commit_fee_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { localTxid: "", remoteTxid: "", remotePendingTxid: "", localCommitFeeSat: "0", remoteCommitFeeSat: "0", remotePendingCommitFeeSat: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string local_txid */ 1: - message.localTxid = reader.string(); - break; - case /* string remote_txid */ 2: - message.remoteTxid = reader.string(); - break; - case /* string remote_pending_txid */ 3: - message.remotePendingTxid = reader.string(); - break; - case /* uint64 local_commit_fee_sat */ 4: - message.localCommitFeeSat = reader.uint64().toString(); - break; - case /* uint64 remote_commit_fee_sat */ 5: - message.remoteCommitFeeSat = reader.uint64().toString(); - break; - case /* uint64 remote_pending_commit_fee_sat */ 6: - message.remotePendingCommitFeeSat = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string local_txid = 1; */ - if (message.localTxid !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.localTxid); - /* string remote_txid = 2; */ - if (message.remoteTxid !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.remoteTxid); - /* string remote_pending_txid = 3; */ - if (message.remotePendingTxid !== "") - writer.tag(3, runtime_1.WireType.LengthDelimited).string(message.remotePendingTxid); - /* uint64 local_commit_fee_sat = 4; */ - if (message.localCommitFeeSat !== "0") - writer.tag(4, runtime_1.WireType.Varint).uint64(message.localCommitFeeSat); - /* uint64 remote_commit_fee_sat = 5; */ - if (message.remoteCommitFeeSat !== "0") - writer.tag(5, runtime_1.WireType.Varint).uint64(message.remoteCommitFeeSat); - /* uint64 remote_pending_commit_fee_sat = 6; */ - if (message.remotePendingCommitFeeSat !== "0") - writer.tag(6, runtime_1.WireType.Varint).uint64(message.remotePendingCommitFeeSat); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse.Commitments - */ -exports.PendingChannelsResponse_Commitments = new PendingChannelsResponse_Commitments$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingChannelsResponse_ClosedChannel$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.PendingChannelsResponse.ClosedChannel", [ - { no: 1, name: "channel", kind: "message", T: () => exports.PendingChannelsResponse_PendingChannel }, - { no: 2, name: "closing_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { closingTxid: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.PendingChannelsResponse.PendingChannel channel */ 1: - message.channel = exports.PendingChannelsResponse_PendingChannel.internalBinaryRead(reader, reader.uint32(), options, message.channel); - break; - case /* string closing_txid */ 2: - message.closingTxid = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.PendingChannelsResponse.PendingChannel channel = 1; */ - if (message.channel) - exports.PendingChannelsResponse_PendingChannel.internalBinaryWrite(message.channel, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* string closing_txid = 2; */ - if (message.closingTxid !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.closingTxid); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse.ClosedChannel - */ -exports.PendingChannelsResponse_ClosedChannel = new PendingChannelsResponse_ClosedChannel$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingChannelsResponse_ForceClosedChannel$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.PendingChannelsResponse.ForceClosedChannel", [ - { no: 1, name: "channel", kind: "message", T: () => exports.PendingChannelsResponse_PendingChannel }, - { no: 2, name: "closing_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "limbo_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 4, name: "maturity_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "blocks_til_maturity", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 6, name: "recovered_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 8, name: "pending_htlcs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.PendingHTLC }, - { no: 9, name: "anchor", kind: "enum", T: () => ["lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState", PendingChannelsResponse_ForceClosedChannel_AnchorState] } - ]); - } - create(value) { - const message = { closingTxid: "", limboBalance: "0", maturityHeight: 0, blocksTilMaturity: 0, recoveredBalance: "0", pendingHtlcs: [], anchor: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.PendingChannelsResponse.PendingChannel channel */ 1: - message.channel = exports.PendingChannelsResponse_PendingChannel.internalBinaryRead(reader, reader.uint32(), options, message.channel); - break; - case /* string closing_txid */ 2: - message.closingTxid = reader.string(); - break; - case /* int64 limbo_balance */ 3: - message.limboBalance = reader.int64().toString(); - break; - case /* uint32 maturity_height */ 4: - message.maturityHeight = reader.uint32(); - break; - case /* int32 blocks_til_maturity */ 5: - message.blocksTilMaturity = reader.int32(); - break; - case /* int64 recovered_balance */ 6: - message.recoveredBalance = reader.int64().toString(); - break; - case /* repeated lnrpc.PendingHTLC pending_htlcs */ 8: - message.pendingHtlcs.push(exports.PendingHTLC.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState anchor */ 9: - message.anchor = reader.int32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.PendingChannelsResponse.PendingChannel channel = 1; */ - if (message.channel) - exports.PendingChannelsResponse_PendingChannel.internalBinaryWrite(message.channel, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* string closing_txid = 2; */ - if (message.closingTxid !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.closingTxid); - /* int64 limbo_balance = 3; */ - if (message.limboBalance !== "0") - writer.tag(3, runtime_1.WireType.Varint).int64(message.limboBalance); - /* uint32 maturity_height = 4; */ - if (message.maturityHeight !== 0) - writer.tag(4, runtime_1.WireType.Varint).uint32(message.maturityHeight); - /* int32 blocks_til_maturity = 5; */ - if (message.blocksTilMaturity !== 0) - writer.tag(5, runtime_1.WireType.Varint).int32(message.blocksTilMaturity); - /* int64 recovered_balance = 6; */ - if (message.recoveredBalance !== "0") - writer.tag(6, runtime_1.WireType.Varint).int64(message.recoveredBalance); - /* repeated lnrpc.PendingHTLC pending_htlcs = 8; */ - for (let i = 0; i < message.pendingHtlcs.length; i++) - exports.PendingHTLC.internalBinaryWrite(message.pendingHtlcs[i], writer.tag(8, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState anchor = 9; */ - if (message.anchor !== 0) - writer.tag(9, runtime_1.WireType.Varint).int32(message.anchor); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse.ForceClosedChannel - */ -exports.PendingChannelsResponse_ForceClosedChannel = new PendingChannelsResponse_ForceClosedChannel$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelEventSubscription$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelEventSubscription", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelEventSubscription - */ -exports.ChannelEventSubscription = new ChannelEventSubscription$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelEventUpdate$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelEventUpdate", [ - { no: 1, name: "open_channel", kind: "message", oneof: "channel", T: () => exports.Channel }, - { no: 2, name: "closed_channel", kind: "message", oneof: "channel", T: () => exports.ChannelCloseSummary }, - { no: 3, name: "active_channel", kind: "message", oneof: "channel", T: () => exports.ChannelPoint }, - { no: 4, name: "inactive_channel", kind: "message", oneof: "channel", T: () => exports.ChannelPoint }, - { no: 6, name: "pending_open_channel", kind: "message", oneof: "channel", T: () => exports.PendingUpdate }, - { no: 5, name: "type", kind: "enum", T: () => ["lnrpc.ChannelEventUpdate.UpdateType", ChannelEventUpdate_UpdateType] } - ]); - } - create(value) { - const message = { channel: { oneofKind: undefined }, type: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.Channel open_channel */ 1: - message.channel = { - oneofKind: "openChannel", - openChannel: exports.Channel.internalBinaryRead(reader, reader.uint32(), options, message.channel.openChannel) - }; - break; - case /* lnrpc.ChannelCloseSummary closed_channel */ 2: - message.channel = { - oneofKind: "closedChannel", - closedChannel: exports.ChannelCloseSummary.internalBinaryRead(reader, reader.uint32(), options, message.channel.closedChannel) - }; - break; - case /* lnrpc.ChannelPoint active_channel */ 3: - message.channel = { - oneofKind: "activeChannel", - activeChannel: exports.ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.channel.activeChannel) - }; - break; - case /* lnrpc.ChannelPoint inactive_channel */ 4: - message.channel = { - oneofKind: "inactiveChannel", - inactiveChannel: exports.ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.channel.inactiveChannel) - }; - break; - case /* lnrpc.PendingUpdate pending_open_channel */ 6: - message.channel = { - oneofKind: "pendingOpenChannel", - pendingOpenChannel: exports.PendingUpdate.internalBinaryRead(reader, reader.uint32(), options, message.channel.pendingOpenChannel) - }; - break; - case /* lnrpc.ChannelEventUpdate.UpdateType type */ 5: - message.type = reader.int32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.Channel open_channel = 1; */ - if (message.channel.oneofKind === "openChannel") - exports.Channel.internalBinaryWrite(message.channel.openChannel, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.ChannelCloseSummary closed_channel = 2; */ - if (message.channel.oneofKind === "closedChannel") - exports.ChannelCloseSummary.internalBinaryWrite(message.channel.closedChannel, writer.tag(2, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.ChannelPoint active_channel = 3; */ - if (message.channel.oneofKind === "activeChannel") - exports.ChannelPoint.internalBinaryWrite(message.channel.activeChannel, writer.tag(3, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.ChannelPoint inactive_channel = 4; */ - if (message.channel.oneofKind === "inactiveChannel") - exports.ChannelPoint.internalBinaryWrite(message.channel.inactiveChannel, writer.tag(4, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.PendingUpdate pending_open_channel = 6; */ - if (message.channel.oneofKind === "pendingOpenChannel") - exports.PendingUpdate.internalBinaryWrite(message.channel.pendingOpenChannel, writer.tag(6, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.ChannelEventUpdate.UpdateType type = 5; */ - if (message.type !== 0) - writer.tag(5, runtime_1.WireType.Varint).int32(message.type); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelEventUpdate - */ -exports.ChannelEventUpdate = new ChannelEventUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class WalletAccountBalance$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.WalletAccountBalance", [ - { no: 1, name: "confirmed_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 2, name: "unconfirmed_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/ } - ]); - } - create(value) { - const message = { confirmedBalance: "0", unconfirmedBalance: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 confirmed_balance */ 1: - message.confirmedBalance = reader.int64().toString(); - break; - case /* int64 unconfirmed_balance */ 2: - message.unconfirmedBalance = reader.int64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* int64 confirmed_balance = 1; */ - if (message.confirmedBalance !== "0") - writer.tag(1, runtime_1.WireType.Varint).int64(message.confirmedBalance); - /* int64 unconfirmed_balance = 2; */ - if (message.unconfirmedBalance !== "0") - writer.tag(2, runtime_1.WireType.Varint).int64(message.unconfirmedBalance); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.WalletAccountBalance - */ -exports.WalletAccountBalance = new WalletAccountBalance$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class WalletBalanceRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.WalletBalanceRequest", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.WalletBalanceRequest - */ -exports.WalletBalanceRequest = new WalletBalanceRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class WalletBalanceResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.WalletBalanceResponse", [ - { no: 1, name: "total_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 2, name: "confirmed_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 3, name: "unconfirmed_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 4, name: "account_balance", kind: "map", K: 9 /*ScalarType.STRING*/, V: { kind: "message", T: () => exports.WalletAccountBalance } } - ]); - } - create(value) { - const message = { totalBalance: "0", confirmedBalance: "0", unconfirmedBalance: "0", accountBalance: {} }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 total_balance */ 1: - message.totalBalance = reader.int64().toString(); - break; - case /* int64 confirmed_balance */ 2: - message.confirmedBalance = reader.int64().toString(); - break; - case /* int64 unconfirmed_balance */ 3: - message.unconfirmedBalance = reader.int64().toString(); - break; - case /* map account_balance */ 4: - this.binaryReadMap4(message.accountBalance, reader, options); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - binaryReadMap4(map, reader, options) { - let len = reader.uint32(), end = reader.pos + len, key, val; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.string(); - break; - case 2: - val = exports.WalletAccountBalance.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.WalletBalanceResponse.account_balance"); - } - } - map[key !== null && key !== void 0 ? key : ""] = val !== null && val !== void 0 ? val : exports.WalletAccountBalance.create(); - } - internalBinaryWrite(message, writer, options) { - /* int64 total_balance = 1; */ - if (message.totalBalance !== "0") - writer.tag(1, runtime_1.WireType.Varint).int64(message.totalBalance); - /* int64 confirmed_balance = 2; */ - if (message.confirmedBalance !== "0") - writer.tag(2, runtime_1.WireType.Varint).int64(message.confirmedBalance); - /* int64 unconfirmed_balance = 3; */ - if (message.unconfirmedBalance !== "0") - writer.tag(3, runtime_1.WireType.Varint).int64(message.unconfirmedBalance); - /* map account_balance = 4; */ - for (let k of Object.keys(message.accountBalance)) { - writer.tag(4, runtime_1.WireType.LengthDelimited).fork().tag(1, runtime_1.WireType.LengthDelimited).string(k); - writer.tag(2, runtime_1.WireType.LengthDelimited).fork(); - exports.WalletAccountBalance.internalBinaryWrite(message.accountBalance[k], writer, options); - writer.join().join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.WalletBalanceResponse - */ -exports.WalletBalanceResponse = new WalletBalanceResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Amount$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.Amount", [ - { no: 1, name: "sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { sat: "0", msat: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 sat */ 1: - message.sat = reader.uint64().toString(); - break; - case /* uint64 msat */ 2: - message.msat = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint64 sat = 1; */ - if (message.sat !== "0") - writer.tag(1, runtime_1.WireType.Varint).uint64(message.sat); - /* uint64 msat = 2; */ - if (message.msat !== "0") - writer.tag(2, runtime_1.WireType.Varint).uint64(message.msat); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Amount - */ -exports.Amount = new Amount$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelBalanceRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelBalanceRequest", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelBalanceRequest - */ -exports.ChannelBalanceRequest = new ChannelBalanceRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelBalanceResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelBalanceResponse", [ - { no: 1, name: "balance", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 2, name: "pending_open_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 3, name: "local_balance", kind: "message", T: () => exports.Amount }, - { no: 4, name: "remote_balance", kind: "message", T: () => exports.Amount }, - { no: 5, name: "unsettled_local_balance", kind: "message", T: () => exports.Amount }, - { no: 6, name: "unsettled_remote_balance", kind: "message", T: () => exports.Amount }, - { no: 7, name: "pending_open_local_balance", kind: "message", T: () => exports.Amount }, - { no: 8, name: "pending_open_remote_balance", kind: "message", T: () => exports.Amount } - ]); - } - create(value) { - const message = { balance: "0", pendingOpenBalance: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 balance = 1 [deprecated = true];*/ 1: - message.balance = reader.int64().toString(); - break; - case /* int64 pending_open_balance = 2 [deprecated = true];*/ 2: - message.pendingOpenBalance = reader.int64().toString(); - break; - case /* lnrpc.Amount local_balance */ 3: - message.localBalance = exports.Amount.internalBinaryRead(reader, reader.uint32(), options, message.localBalance); - break; - case /* lnrpc.Amount remote_balance */ 4: - message.remoteBalance = exports.Amount.internalBinaryRead(reader, reader.uint32(), options, message.remoteBalance); - break; - case /* lnrpc.Amount unsettled_local_balance */ 5: - message.unsettledLocalBalance = exports.Amount.internalBinaryRead(reader, reader.uint32(), options, message.unsettledLocalBalance); - break; - case /* lnrpc.Amount unsettled_remote_balance */ 6: - message.unsettledRemoteBalance = exports.Amount.internalBinaryRead(reader, reader.uint32(), options, message.unsettledRemoteBalance); - break; - case /* lnrpc.Amount pending_open_local_balance */ 7: - message.pendingOpenLocalBalance = exports.Amount.internalBinaryRead(reader, reader.uint32(), options, message.pendingOpenLocalBalance); - break; - case /* lnrpc.Amount pending_open_remote_balance */ 8: - message.pendingOpenRemoteBalance = exports.Amount.internalBinaryRead(reader, reader.uint32(), options, message.pendingOpenRemoteBalance); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* int64 balance = 1 [deprecated = true]; */ - if (message.balance !== "0") - writer.tag(1, runtime_1.WireType.Varint).int64(message.balance); - /* int64 pending_open_balance = 2 [deprecated = true]; */ - if (message.pendingOpenBalance !== "0") - writer.tag(2, runtime_1.WireType.Varint).int64(message.pendingOpenBalance); - /* lnrpc.Amount local_balance = 3; */ - if (message.localBalance) - exports.Amount.internalBinaryWrite(message.localBalance, writer.tag(3, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.Amount remote_balance = 4; */ - if (message.remoteBalance) - exports.Amount.internalBinaryWrite(message.remoteBalance, writer.tag(4, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.Amount unsettled_local_balance = 5; */ - if (message.unsettledLocalBalance) - exports.Amount.internalBinaryWrite(message.unsettledLocalBalance, writer.tag(5, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.Amount unsettled_remote_balance = 6; */ - if (message.unsettledRemoteBalance) - exports.Amount.internalBinaryWrite(message.unsettledRemoteBalance, writer.tag(6, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.Amount pending_open_local_balance = 7; */ - if (message.pendingOpenLocalBalance) - exports.Amount.internalBinaryWrite(message.pendingOpenLocalBalance, writer.tag(7, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.Amount pending_open_remote_balance = 8; */ - if (message.pendingOpenRemoteBalance) - exports.Amount.internalBinaryWrite(message.pendingOpenRemoteBalance, writer.tag(8, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelBalanceResponse - */ -exports.ChannelBalanceResponse = new ChannelBalanceResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class QueryRoutesRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.QueryRoutesRequest", [ - { no: 1, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "amt", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 12, name: "amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 4, name: "final_cltv_delta", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 5, name: "fee_limit", kind: "message", T: () => exports.FeeLimit }, - { no: 6, name: "ignored_nodes", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 12 /*ScalarType.BYTES*/ }, - { no: 7, name: "ignored_edges", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.EdgeLocator }, - { no: 8, name: "source_pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 9, name: "use_mission_control", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 10, name: "ignored_pairs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.NodePair }, - { no: 11, name: "cltv_limit", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 13, name: "dest_custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } }, - { no: 14, name: "outgoing_chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 15, name: "last_hop_pubkey", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 16, name: "route_hints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.RouteHint }, - { no: 17, name: "dest_features", kind: "enum", repeat: 1 /*RepeatType.PACKED*/, T: () => ["lnrpc.FeatureBit", FeatureBit] } - ]); - } - create(value) { - const message = { pubKey: "", amt: "0", amtMsat: "0", finalCltvDelta: 0, ignoredNodes: [], ignoredEdges: [], sourcePubKey: "", useMissionControl: false, ignoredPairs: [], cltvLimit: 0, destCustomRecords: {}, outgoingChanId: "0", lastHopPubkey: new Uint8Array(0), routeHints: [], destFeatures: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string pub_key */ 1: - message.pubKey = reader.string(); - break; - case /* int64 amt */ 2: - message.amt = reader.int64().toString(); - break; - case /* int64 amt_msat */ 12: - message.amtMsat = reader.int64().toString(); - break; - case /* int32 final_cltv_delta */ 4: - message.finalCltvDelta = reader.int32(); - break; - case /* lnrpc.FeeLimit fee_limit */ 5: - message.feeLimit = exports.FeeLimit.internalBinaryRead(reader, reader.uint32(), options, message.feeLimit); - break; - case /* repeated bytes ignored_nodes */ 6: - message.ignoredNodes.push(reader.bytes()); - break; - case /* repeated lnrpc.EdgeLocator ignored_edges = 7 [deprecated = true];*/ 7: - message.ignoredEdges.push(exports.EdgeLocator.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* string source_pub_key */ 8: - message.sourcePubKey = reader.string(); - break; - case /* bool use_mission_control */ 9: - message.useMissionControl = reader.bool(); - break; - case /* repeated lnrpc.NodePair ignored_pairs */ 10: - message.ignoredPairs.push(exports.NodePair.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* uint32 cltv_limit */ 11: - message.cltvLimit = reader.uint32(); - break; - case /* map dest_custom_records */ 13: - this.binaryReadMap13(message.destCustomRecords, reader, options); - break; - case /* uint64 outgoing_chan_id = 14 [jstype = JS_STRING];*/ 14: - message.outgoingChanId = reader.uint64().toString(); - break; - case /* bytes last_hop_pubkey */ 15: - message.lastHopPubkey = reader.bytes(); - break; - case /* repeated lnrpc.RouteHint route_hints */ 16: - message.routeHints.push(exports.RouteHint.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* repeated lnrpc.FeatureBit dest_features */ 17: - if (wireType === runtime_1.WireType.LengthDelimited) - for (let e = reader.int32() + reader.pos; reader.pos < e;) - message.destFeatures.push(reader.int32()); - else - message.destFeatures.push(reader.int32()); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - binaryReadMap13(map, reader, options) { - let len = reader.uint32(), end = reader.pos + len, key, val; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint64().toString(); - break; - case 2: - val = reader.bytes(); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.QueryRoutesRequest.dest_custom_records"); - } - } - map[key !== null && key !== void 0 ? key : "0"] = val !== null && val !== void 0 ? val : new Uint8Array(0); - } - internalBinaryWrite(message, writer, options) { - /* string pub_key = 1; */ - if (message.pubKey !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.pubKey); - /* int64 amt = 2; */ - if (message.amt !== "0") - writer.tag(2, runtime_1.WireType.Varint).int64(message.amt); - /* int64 amt_msat = 12; */ - if (message.amtMsat !== "0") - writer.tag(12, runtime_1.WireType.Varint).int64(message.amtMsat); - /* int32 final_cltv_delta = 4; */ - if (message.finalCltvDelta !== 0) - writer.tag(4, runtime_1.WireType.Varint).int32(message.finalCltvDelta); - /* lnrpc.FeeLimit fee_limit = 5; */ - if (message.feeLimit) - exports.FeeLimit.internalBinaryWrite(message.feeLimit, writer.tag(5, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* repeated bytes ignored_nodes = 6; */ - for (let i = 0; i < message.ignoredNodes.length; i++) - writer.tag(6, runtime_1.WireType.LengthDelimited).bytes(message.ignoredNodes[i]); - /* repeated lnrpc.EdgeLocator ignored_edges = 7 [deprecated = true]; */ - for (let i = 0; i < message.ignoredEdges.length; i++) - exports.EdgeLocator.internalBinaryWrite(message.ignoredEdges[i], writer.tag(7, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* string source_pub_key = 8; */ - if (message.sourcePubKey !== "") - writer.tag(8, runtime_1.WireType.LengthDelimited).string(message.sourcePubKey); - /* bool use_mission_control = 9; */ - if (message.useMissionControl !== false) - writer.tag(9, runtime_1.WireType.Varint).bool(message.useMissionControl); - /* repeated lnrpc.NodePair ignored_pairs = 10; */ - for (let i = 0; i < message.ignoredPairs.length; i++) - exports.NodePair.internalBinaryWrite(message.ignoredPairs[i], writer.tag(10, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* uint32 cltv_limit = 11; */ - if (message.cltvLimit !== 0) - writer.tag(11, runtime_1.WireType.Varint).uint32(message.cltvLimit); - /* map dest_custom_records = 13; */ - for (let k of Object.keys(message.destCustomRecords)) - writer.tag(13, runtime_1.WireType.LengthDelimited).fork().tag(1, runtime_1.WireType.Varint).uint64(k).tag(2, runtime_1.WireType.LengthDelimited).bytes(message.destCustomRecords[k]).join(); - /* uint64 outgoing_chan_id = 14 [jstype = JS_STRING]; */ - if (message.outgoingChanId !== "0") - writer.tag(14, runtime_1.WireType.Varint).uint64(message.outgoingChanId); - /* bytes last_hop_pubkey = 15; */ - if (message.lastHopPubkey.length) - writer.tag(15, runtime_1.WireType.LengthDelimited).bytes(message.lastHopPubkey); - /* repeated lnrpc.RouteHint route_hints = 16; */ - for (let i = 0; i < message.routeHints.length; i++) - exports.RouteHint.internalBinaryWrite(message.routeHints[i], writer.tag(16, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* repeated lnrpc.FeatureBit dest_features = 17; */ - if (message.destFeatures.length) { - writer.tag(17, runtime_1.WireType.LengthDelimited).fork(); - for (let i = 0; i < message.destFeatures.length; i++) - writer.int32(message.destFeatures[i]); - writer.join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.QueryRoutesRequest - */ -exports.QueryRoutesRequest = new QueryRoutesRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NodePair$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.NodePair", [ - { no: 1, name: "from", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "to", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { from: new Uint8Array(0), to: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes from */ 1: - message.from = reader.bytes(); - break; - case /* bytes to */ 2: - message.to = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes from = 1; */ - if (message.from.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.from); - /* bytes to = 2; */ - if (message.to.length) - writer.tag(2, runtime_1.WireType.LengthDelimited).bytes(message.to); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NodePair - */ -exports.NodePair = new NodePair$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class EdgeLocator$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.EdgeLocator", [ - { no: 1, name: "channel_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "direction_reverse", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { channelId: "0", directionReverse: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 channel_id = 1 [jstype = JS_STRING];*/ 1: - message.channelId = reader.uint64().toString(); - break; - case /* bool direction_reverse */ 2: - message.directionReverse = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint64 channel_id = 1 [jstype = JS_STRING]; */ - if (message.channelId !== "0") - writer.tag(1, runtime_1.WireType.Varint).uint64(message.channelId); - /* bool direction_reverse = 2; */ - if (message.directionReverse !== false) - writer.tag(2, runtime_1.WireType.Varint).bool(message.directionReverse); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.EdgeLocator - */ -exports.EdgeLocator = new EdgeLocator$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class QueryRoutesResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.QueryRoutesResponse", [ - { no: 1, name: "routes", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.Route }, - { no: 2, name: "success_prob", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ } - ]); - } - create(value) { - const message = { routes: [], successProb: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.Route routes */ 1: - message.routes.push(exports.Route.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* double success_prob */ 2: - message.successProb = reader.double(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated lnrpc.Route routes = 1; */ - for (let i = 0; i < message.routes.length; i++) - exports.Route.internalBinaryWrite(message.routes[i], writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* double success_prob = 2; */ - if (message.successProb !== 0) - writer.tag(2, runtime_1.WireType.Bit64).double(message.successProb); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.QueryRoutesResponse - */ -exports.QueryRoutesResponse = new QueryRoutesResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Hop$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.Hop", [ - { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "chan_capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 3, name: "amt_to_forward", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 4, name: "fee", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 5, name: "expiry", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 6, name: "amt_to_forward_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 7, name: "fee_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 8, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 9, name: "tlv_payload", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 10, name: "mpp_record", kind: "message", T: () => exports.MPPRecord }, - { no: 12, name: "amp_record", kind: "message", T: () => exports.AMPRecord }, - { no: 11, name: "custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } } - ]); - } - create(value) { - const message = { chanId: "0", chanCapacity: "0", amtToForward: "0", fee: "0", expiry: 0, amtToForwardMsat: "0", feeMsat: "0", pubKey: "", tlvPayload: false, customRecords: {} }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 chan_id = 1 [jstype = JS_STRING];*/ 1: - message.chanId = reader.uint64().toString(); - break; - case /* int64 chan_capacity = 2 [deprecated = true];*/ 2: - message.chanCapacity = reader.int64().toString(); - break; - case /* int64 amt_to_forward = 3 [deprecated = true];*/ 3: - message.amtToForward = reader.int64().toString(); - break; - case /* int64 fee = 4 [deprecated = true];*/ 4: - message.fee = reader.int64().toString(); - break; - case /* uint32 expiry */ 5: - message.expiry = reader.uint32(); - break; - case /* int64 amt_to_forward_msat */ 6: - message.amtToForwardMsat = reader.int64().toString(); - break; - case /* int64 fee_msat */ 7: - message.feeMsat = reader.int64().toString(); - break; - case /* string pub_key */ 8: - message.pubKey = reader.string(); - break; - case /* bool tlv_payload */ 9: - message.tlvPayload = reader.bool(); - break; - case /* lnrpc.MPPRecord mpp_record */ 10: - message.mppRecord = exports.MPPRecord.internalBinaryRead(reader, reader.uint32(), options, message.mppRecord); - break; - case /* lnrpc.AMPRecord amp_record */ 12: - message.ampRecord = exports.AMPRecord.internalBinaryRead(reader, reader.uint32(), options, message.ampRecord); - break; - case /* map custom_records */ 11: - this.binaryReadMap11(message.customRecords, reader, options); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - binaryReadMap11(map, reader, options) { - let len = reader.uint32(), end = reader.pos + len, key, val; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint64().toString(); - break; - case 2: - val = reader.bytes(); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.Hop.custom_records"); - } - } - map[key !== null && key !== void 0 ? key : "0"] = val !== null && val !== void 0 ? val : new Uint8Array(0); - } - internalBinaryWrite(message, writer, options) { - /* uint64 chan_id = 1 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(1, runtime_1.WireType.Varint).uint64(message.chanId); - /* int64 chan_capacity = 2 [deprecated = true]; */ - if (message.chanCapacity !== "0") - writer.tag(2, runtime_1.WireType.Varint).int64(message.chanCapacity); - /* int64 amt_to_forward = 3 [deprecated = true]; */ - if (message.amtToForward !== "0") - writer.tag(3, runtime_1.WireType.Varint).int64(message.amtToForward); - /* int64 fee = 4 [deprecated = true]; */ - if (message.fee !== "0") - writer.tag(4, runtime_1.WireType.Varint).int64(message.fee); - /* uint32 expiry = 5; */ - if (message.expiry !== 0) - writer.tag(5, runtime_1.WireType.Varint).uint32(message.expiry); - /* int64 amt_to_forward_msat = 6; */ - if (message.amtToForwardMsat !== "0") - writer.tag(6, runtime_1.WireType.Varint).int64(message.amtToForwardMsat); - /* int64 fee_msat = 7; */ - if (message.feeMsat !== "0") - writer.tag(7, runtime_1.WireType.Varint).int64(message.feeMsat); - /* string pub_key = 8; */ - if (message.pubKey !== "") - writer.tag(8, runtime_1.WireType.LengthDelimited).string(message.pubKey); - /* bool tlv_payload = 9; */ - if (message.tlvPayload !== false) - writer.tag(9, runtime_1.WireType.Varint).bool(message.tlvPayload); - /* lnrpc.MPPRecord mpp_record = 10; */ - if (message.mppRecord) - exports.MPPRecord.internalBinaryWrite(message.mppRecord, writer.tag(10, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.AMPRecord amp_record = 12; */ - if (message.ampRecord) - exports.AMPRecord.internalBinaryWrite(message.ampRecord, writer.tag(12, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* map custom_records = 11; */ - for (let k of Object.keys(message.customRecords)) - writer.tag(11, runtime_1.WireType.LengthDelimited).fork().tag(1, runtime_1.WireType.Varint).uint64(k).tag(2, runtime_1.WireType.LengthDelimited).bytes(message.customRecords[k]).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Hop - */ -exports.Hop = new Hop$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class MPPRecord$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.MPPRecord", [ - { no: 11, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 10, name: "total_amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ } - ]); - } - create(value) { - const message = { paymentAddr: new Uint8Array(0), totalAmtMsat: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes payment_addr */ 11: - message.paymentAddr = reader.bytes(); - break; - case /* int64 total_amt_msat */ 10: - message.totalAmtMsat = reader.int64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes payment_addr = 11; */ - if (message.paymentAddr.length) - writer.tag(11, runtime_1.WireType.LengthDelimited).bytes(message.paymentAddr); - /* int64 total_amt_msat = 10; */ - if (message.totalAmtMsat !== "0") - writer.tag(10, runtime_1.WireType.Varint).int64(message.totalAmtMsat); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.MPPRecord - */ -exports.MPPRecord = new MPPRecord$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class AMPRecord$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.AMPRecord", [ - { no: 1, name: "root_share", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "set_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "child_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value) { - const message = { rootShare: new Uint8Array(0), setId: new Uint8Array(0), childIndex: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes root_share */ 1: - message.rootShare = reader.bytes(); - break; - case /* bytes set_id */ 2: - message.setId = reader.bytes(); - break; - case /* uint32 child_index */ 3: - message.childIndex = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes root_share = 1; */ - if (message.rootShare.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.rootShare); - /* bytes set_id = 2; */ - if (message.setId.length) - writer.tag(2, runtime_1.WireType.LengthDelimited).bytes(message.setId); - /* uint32 child_index = 3; */ - if (message.childIndex !== 0) - writer.tag(3, runtime_1.WireType.Varint).uint32(message.childIndex); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.AMPRecord - */ -exports.AMPRecord = new AMPRecord$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Route$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.Route", [ - { no: 1, name: "total_time_lock", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 2, name: "total_fees", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 3, name: "total_amt", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 4, name: "hops", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.Hop }, - { no: 5, name: "total_fees_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 6, name: "total_amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ } - ]); - } - create(value) { - const message = { totalTimeLock: 0, totalFees: "0", totalAmt: "0", hops: [], totalFeesMsat: "0", totalAmtMsat: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint32 total_time_lock */ 1: - message.totalTimeLock = reader.uint32(); - break; - case /* int64 total_fees = 2 [deprecated = true];*/ 2: - message.totalFees = reader.int64().toString(); - break; - case /* int64 total_amt = 3 [deprecated = true];*/ 3: - message.totalAmt = reader.int64().toString(); - break; - case /* repeated lnrpc.Hop hops */ 4: - message.hops.push(exports.Hop.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* int64 total_fees_msat */ 5: - message.totalFeesMsat = reader.int64().toString(); - break; - case /* int64 total_amt_msat */ 6: - message.totalAmtMsat = reader.int64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint32 total_time_lock = 1; */ - if (message.totalTimeLock !== 0) - writer.tag(1, runtime_1.WireType.Varint).uint32(message.totalTimeLock); - /* int64 total_fees = 2 [deprecated = true]; */ - if (message.totalFees !== "0") - writer.tag(2, runtime_1.WireType.Varint).int64(message.totalFees); - /* int64 total_amt = 3 [deprecated = true]; */ - if (message.totalAmt !== "0") - writer.tag(3, runtime_1.WireType.Varint).int64(message.totalAmt); - /* repeated lnrpc.Hop hops = 4; */ - for (let i = 0; i < message.hops.length; i++) - exports.Hop.internalBinaryWrite(message.hops[i], writer.tag(4, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* int64 total_fees_msat = 5; */ - if (message.totalFeesMsat !== "0") - writer.tag(5, runtime_1.WireType.Varint).int64(message.totalFeesMsat); - /* int64 total_amt_msat = 6; */ - if (message.totalAmtMsat !== "0") - writer.tag(6, runtime_1.WireType.Varint).int64(message.totalAmtMsat); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Route - */ -exports.Route = new Route$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NodeInfoRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.NodeInfoRequest", [ - { no: 1, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "include_channels", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { pubKey: "", includeChannels: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string pub_key */ 1: - message.pubKey = reader.string(); - break; - case /* bool include_channels */ 2: - message.includeChannels = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string pub_key = 1; */ - if (message.pubKey !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.pubKey); - /* bool include_channels = 2; */ - if (message.includeChannels !== false) - writer.tag(2, runtime_1.WireType.Varint).bool(message.includeChannels); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NodeInfoRequest - */ -exports.NodeInfoRequest = new NodeInfoRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NodeInfo$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.NodeInfo", [ - { no: 1, name: "node", kind: "message", T: () => exports.LightningNode }, - { no: 2, name: "num_channels", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 3, name: "total_capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 4, name: "channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.ChannelEdge } - ]); - } - create(value) { - const message = { numChannels: 0, totalCapacity: "0", channels: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.LightningNode node */ 1: - message.node = exports.LightningNode.internalBinaryRead(reader, reader.uint32(), options, message.node); - break; - case /* uint32 num_channels */ 2: - message.numChannels = reader.uint32(); - break; - case /* int64 total_capacity */ 3: - message.totalCapacity = reader.int64().toString(); - break; - case /* repeated lnrpc.ChannelEdge channels */ 4: - message.channels.push(exports.ChannelEdge.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.LightningNode node = 1; */ - if (message.node) - exports.LightningNode.internalBinaryWrite(message.node, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* uint32 num_channels = 2; */ - if (message.numChannels !== 0) - writer.tag(2, runtime_1.WireType.Varint).uint32(message.numChannels); - /* int64 total_capacity = 3; */ - if (message.totalCapacity !== "0") - writer.tag(3, runtime_1.WireType.Varint).int64(message.totalCapacity); - /* repeated lnrpc.ChannelEdge channels = 4; */ - for (let i = 0; i < message.channels.length; i++) - exports.ChannelEdge.internalBinaryWrite(message.channels[i], writer.tag(4, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NodeInfo - */ -exports.NodeInfo = new NodeInfo$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class LightningNode$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.LightningNode", [ - { no: 1, name: "last_update", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 2, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "alias", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "addresses", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.NodeAddress }, - { no: 5, name: "color", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 6, name: "features", kind: "map", K: 13 /*ScalarType.UINT32*/, V: { kind: "message", T: () => exports.Feature } } - ]); - } - create(value) { - const message = { lastUpdate: 0, pubKey: "", alias: "", addresses: [], color: "", features: {} }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint32 last_update */ 1: - message.lastUpdate = reader.uint32(); - break; - case /* string pub_key */ 2: - message.pubKey = reader.string(); - break; - case /* string alias */ 3: - message.alias = reader.string(); - break; - case /* repeated lnrpc.NodeAddress addresses */ 4: - message.addresses.push(exports.NodeAddress.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* string color */ 5: - message.color = reader.string(); - break; - case /* map features */ 6: - this.binaryReadMap6(message.features, reader, options); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - binaryReadMap6(map, reader, options) { - let len = reader.uint32(), end = reader.pos + len, key, val; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint32(); - break; - case 2: - val = exports.Feature.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.LightningNode.features"); - } - } - map[key !== null && key !== void 0 ? key : 0] = val !== null && val !== void 0 ? val : exports.Feature.create(); - } - internalBinaryWrite(message, writer, options) { - /* uint32 last_update = 1; */ - if (message.lastUpdate !== 0) - writer.tag(1, runtime_1.WireType.Varint).uint32(message.lastUpdate); - /* string pub_key = 2; */ - if (message.pubKey !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.pubKey); - /* string alias = 3; */ - if (message.alias !== "") - writer.tag(3, runtime_1.WireType.LengthDelimited).string(message.alias); - /* repeated lnrpc.NodeAddress addresses = 4; */ - for (let i = 0; i < message.addresses.length; i++) - exports.NodeAddress.internalBinaryWrite(message.addresses[i], writer.tag(4, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* string color = 5; */ - if (message.color !== "") - writer.tag(5, runtime_1.WireType.LengthDelimited).string(message.color); - /* map features = 6; */ - for (let k of Object.keys(message.features)) { - writer.tag(6, runtime_1.WireType.LengthDelimited).fork().tag(1, runtime_1.WireType.Varint).uint32(parseInt(k)); - writer.tag(2, runtime_1.WireType.LengthDelimited).fork(); - exports.Feature.internalBinaryWrite(message.features[k], writer, options); - writer.join().join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.LightningNode - */ -exports.LightningNode = new LightningNode$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NodeAddress$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.NodeAddress", [ - { no: 1, name: "network", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "addr", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { network: "", addr: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string network */ 1: - message.network = reader.string(); - break; - case /* string addr */ 2: - message.addr = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string network = 1; */ - if (message.network !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.network); - /* string addr = 2; */ - if (message.addr !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.addr); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NodeAddress - */ -exports.NodeAddress = new NodeAddress$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class RoutingPolicy$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.RoutingPolicy", [ - { no: 1, name: "time_lock_delta", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 2, name: "min_htlc", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 3, name: "fee_base_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 4, name: "fee_rate_milli_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 5, name: "disabled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 6, name: "max_htlc_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 7, name: "last_update", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value) { - const message = { timeLockDelta: 0, minHtlc: "0", feeBaseMsat: "0", feeRateMilliMsat: "0", disabled: false, maxHtlcMsat: "0", lastUpdate: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint32 time_lock_delta */ 1: - message.timeLockDelta = reader.uint32(); - break; - case /* int64 min_htlc */ 2: - message.minHtlc = reader.int64().toString(); - break; - case /* int64 fee_base_msat */ 3: - message.feeBaseMsat = reader.int64().toString(); - break; - case /* int64 fee_rate_milli_msat */ 4: - message.feeRateMilliMsat = reader.int64().toString(); - break; - case /* bool disabled */ 5: - message.disabled = reader.bool(); - break; - case /* uint64 max_htlc_msat */ 6: - message.maxHtlcMsat = reader.uint64().toString(); - break; - case /* uint32 last_update */ 7: - message.lastUpdate = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint32 time_lock_delta = 1; */ - if (message.timeLockDelta !== 0) - writer.tag(1, runtime_1.WireType.Varint).uint32(message.timeLockDelta); - /* int64 min_htlc = 2; */ - if (message.minHtlc !== "0") - writer.tag(2, runtime_1.WireType.Varint).int64(message.minHtlc); - /* int64 fee_base_msat = 3; */ - if (message.feeBaseMsat !== "0") - writer.tag(3, runtime_1.WireType.Varint).int64(message.feeBaseMsat); - /* int64 fee_rate_milli_msat = 4; */ - if (message.feeRateMilliMsat !== "0") - writer.tag(4, runtime_1.WireType.Varint).int64(message.feeRateMilliMsat); - /* bool disabled = 5; */ - if (message.disabled !== false) - writer.tag(5, runtime_1.WireType.Varint).bool(message.disabled); - /* uint64 max_htlc_msat = 6; */ - if (message.maxHtlcMsat !== "0") - writer.tag(6, runtime_1.WireType.Varint).uint64(message.maxHtlcMsat); - /* uint32 last_update = 7; */ - if (message.lastUpdate !== 0) - writer.tag(7, runtime_1.WireType.Varint).uint32(message.lastUpdate); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.RoutingPolicy - */ -exports.RoutingPolicy = new RoutingPolicy$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelEdge$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelEdge", [ - { no: 1, name: "channel_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "chan_point", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "last_update", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 4, name: "node1_pub", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 5, name: "node2_pub", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 6, name: "capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 7, name: "node1_policy", kind: "message", T: () => exports.RoutingPolicy }, - { no: 8, name: "node2_policy", kind: "message", T: () => exports.RoutingPolicy } - ]); - } - create(value) { - const message = { channelId: "0", chanPoint: "", lastUpdate: 0, node1Pub: "", node2Pub: "", capacity: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 channel_id = 1 [jstype = JS_STRING];*/ 1: - message.channelId = reader.uint64().toString(); - break; - case /* string chan_point */ 2: - message.chanPoint = reader.string(); - break; - case /* uint32 last_update = 3 [deprecated = true];*/ 3: - message.lastUpdate = reader.uint32(); - break; - case /* string node1_pub */ 4: - message.node1Pub = reader.string(); - break; - case /* string node2_pub */ 5: - message.node2Pub = reader.string(); - break; - case /* int64 capacity */ 6: - message.capacity = reader.int64().toString(); - break; - case /* lnrpc.RoutingPolicy node1_policy */ 7: - message.node1Policy = exports.RoutingPolicy.internalBinaryRead(reader, reader.uint32(), options, message.node1Policy); - break; - case /* lnrpc.RoutingPolicy node2_policy */ 8: - message.node2Policy = exports.RoutingPolicy.internalBinaryRead(reader, reader.uint32(), options, message.node2Policy); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint64 channel_id = 1 [jstype = JS_STRING]; */ - if (message.channelId !== "0") - writer.tag(1, runtime_1.WireType.Varint).uint64(message.channelId); - /* string chan_point = 2; */ - if (message.chanPoint !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.chanPoint); - /* uint32 last_update = 3 [deprecated = true]; */ - if (message.lastUpdate !== 0) - writer.tag(3, runtime_1.WireType.Varint).uint32(message.lastUpdate); - /* string node1_pub = 4; */ - if (message.node1Pub !== "") - writer.tag(4, runtime_1.WireType.LengthDelimited).string(message.node1Pub); - /* string node2_pub = 5; */ - if (message.node2Pub !== "") - writer.tag(5, runtime_1.WireType.LengthDelimited).string(message.node2Pub); - /* int64 capacity = 6; */ - if (message.capacity !== "0") - writer.tag(6, runtime_1.WireType.Varint).int64(message.capacity); - /* lnrpc.RoutingPolicy node1_policy = 7; */ - if (message.node1Policy) - exports.RoutingPolicy.internalBinaryWrite(message.node1Policy, writer.tag(7, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.RoutingPolicy node2_policy = 8; */ - if (message.node2Policy) - exports.RoutingPolicy.internalBinaryWrite(message.node2Policy, writer.tag(8, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelEdge - */ -exports.ChannelEdge = new ChannelEdge$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelGraphRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelGraphRequest", [ - { no: 1, name: "include_unannounced", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { includeUnannounced: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool include_unannounced */ 1: - message.includeUnannounced = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bool include_unannounced = 1; */ - if (message.includeUnannounced !== false) - writer.tag(1, runtime_1.WireType.Varint).bool(message.includeUnannounced); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelGraphRequest - */ -exports.ChannelGraphRequest = new ChannelGraphRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelGraph$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelGraph", [ - { no: 1, name: "nodes", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.LightningNode }, - { no: 2, name: "edges", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.ChannelEdge } - ]); - } - create(value) { - const message = { nodes: [], edges: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.LightningNode nodes */ 1: - message.nodes.push(exports.LightningNode.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* repeated lnrpc.ChannelEdge edges */ 2: - message.edges.push(exports.ChannelEdge.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated lnrpc.LightningNode nodes = 1; */ - for (let i = 0; i < message.nodes.length; i++) - exports.LightningNode.internalBinaryWrite(message.nodes[i], writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* repeated lnrpc.ChannelEdge edges = 2; */ - for (let i = 0; i < message.edges.length; i++) - exports.ChannelEdge.internalBinaryWrite(message.edges[i], writer.tag(2, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelGraph - */ -exports.ChannelGraph = new ChannelGraph$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NodeMetricsRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.NodeMetricsRequest", [ - { no: 1, name: "types", kind: "enum", repeat: 1 /*RepeatType.PACKED*/, T: () => ["lnrpc.NodeMetricType", NodeMetricType] } - ]); - } - create(value) { - const message = { types: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.NodeMetricType types */ 1: - if (wireType === runtime_1.WireType.LengthDelimited) - for (let e = reader.int32() + reader.pos; reader.pos < e;) - message.types.push(reader.int32()); - else - message.types.push(reader.int32()); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated lnrpc.NodeMetricType types = 1; */ - if (message.types.length) { - writer.tag(1, runtime_1.WireType.LengthDelimited).fork(); - for (let i = 0; i < message.types.length; i++) - writer.int32(message.types[i]); - writer.join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NodeMetricsRequest - */ -exports.NodeMetricsRequest = new NodeMetricsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NodeMetricsResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.NodeMetricsResponse", [ - { no: 1, name: "betweenness_centrality", kind: "map", K: 9 /*ScalarType.STRING*/, V: { kind: "message", T: () => exports.FloatMetric } } - ]); - } - create(value) { - const message = { betweennessCentrality: {} }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* map betweenness_centrality */ 1: - this.binaryReadMap1(message.betweennessCentrality, reader, options); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - binaryReadMap1(map, reader, options) { - let len = reader.uint32(), end = reader.pos + len, key, val; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.string(); - break; - case 2: - val = exports.FloatMetric.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.NodeMetricsResponse.betweenness_centrality"); - } - } - map[key !== null && key !== void 0 ? key : ""] = val !== null && val !== void 0 ? val : exports.FloatMetric.create(); - } - internalBinaryWrite(message, writer, options) { - /* map betweenness_centrality = 1; */ - for (let k of Object.keys(message.betweennessCentrality)) { - writer.tag(1, runtime_1.WireType.LengthDelimited).fork().tag(1, runtime_1.WireType.LengthDelimited).string(k); - writer.tag(2, runtime_1.WireType.LengthDelimited).fork(); - exports.FloatMetric.internalBinaryWrite(message.betweennessCentrality[k], writer, options); - writer.join().join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NodeMetricsResponse - */ -exports.NodeMetricsResponse = new NodeMetricsResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FloatMetric$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.FloatMetric", [ - { no: 1, name: "value", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ }, - { no: 2, name: "normalized_value", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ } - ]); - } - create(value) { - const message = { value: 0, normalizedValue: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* double value */ 1: - message.value = reader.double(); - break; - case /* double normalized_value */ 2: - message.normalizedValue = reader.double(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* double value = 1; */ - if (message.value !== 0) - writer.tag(1, runtime_1.WireType.Bit64).double(message.value); - /* double normalized_value = 2; */ - if (message.normalizedValue !== 0) - writer.tag(2, runtime_1.WireType.Bit64).double(message.normalizedValue); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FloatMetric - */ -exports.FloatMetric = new FloatMetric$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChanInfoRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChanInfoRequest", [ - { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { chanId: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 chan_id = 1 [jstype = JS_STRING];*/ 1: - message.chanId = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint64 chan_id = 1 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(1, runtime_1.WireType.Varint).uint64(message.chanId); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChanInfoRequest - */ -exports.ChanInfoRequest = new ChanInfoRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NetworkInfoRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.NetworkInfoRequest", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NetworkInfoRequest - */ -exports.NetworkInfoRequest = new NetworkInfoRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NetworkInfo$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.NetworkInfo", [ - { no: 1, name: "graph_diameter", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 2, name: "avg_out_degree", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ }, - { no: 3, name: "max_out_degree", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 4, name: "num_nodes", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "num_channels", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 6, name: "total_network_capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 7, name: "avg_channel_size", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ }, - { no: 8, name: "min_channel_size", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 9, name: "max_channel_size", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 10, name: "median_channel_size_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 11, name: "num_zombie_chans", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { graphDiameter: 0, avgOutDegree: 0, maxOutDegree: 0, numNodes: 0, numChannels: 0, totalNetworkCapacity: "0", avgChannelSize: 0, minChannelSize: "0", maxChannelSize: "0", medianChannelSizeSat: "0", numZombieChans: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint32 graph_diameter */ 1: - message.graphDiameter = reader.uint32(); - break; - case /* double avg_out_degree */ 2: - message.avgOutDegree = reader.double(); - break; - case /* uint32 max_out_degree */ 3: - message.maxOutDegree = reader.uint32(); - break; - case /* uint32 num_nodes */ 4: - message.numNodes = reader.uint32(); - break; - case /* uint32 num_channels */ 5: - message.numChannels = reader.uint32(); - break; - case /* int64 total_network_capacity */ 6: - message.totalNetworkCapacity = reader.int64().toString(); - break; - case /* double avg_channel_size */ 7: - message.avgChannelSize = reader.double(); - break; - case /* int64 min_channel_size */ 8: - message.minChannelSize = reader.int64().toString(); - break; - case /* int64 max_channel_size */ 9: - message.maxChannelSize = reader.int64().toString(); - break; - case /* int64 median_channel_size_sat */ 10: - message.medianChannelSizeSat = reader.int64().toString(); - break; - case /* uint64 num_zombie_chans */ 11: - message.numZombieChans = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint32 graph_diameter = 1; */ - if (message.graphDiameter !== 0) - writer.tag(1, runtime_1.WireType.Varint).uint32(message.graphDiameter); - /* double avg_out_degree = 2; */ - if (message.avgOutDegree !== 0) - writer.tag(2, runtime_1.WireType.Bit64).double(message.avgOutDegree); - /* uint32 max_out_degree = 3; */ - if (message.maxOutDegree !== 0) - writer.tag(3, runtime_1.WireType.Varint).uint32(message.maxOutDegree); - /* uint32 num_nodes = 4; */ - if (message.numNodes !== 0) - writer.tag(4, runtime_1.WireType.Varint).uint32(message.numNodes); - /* uint32 num_channels = 5; */ - if (message.numChannels !== 0) - writer.tag(5, runtime_1.WireType.Varint).uint32(message.numChannels); - /* int64 total_network_capacity = 6; */ - if (message.totalNetworkCapacity !== "0") - writer.tag(6, runtime_1.WireType.Varint).int64(message.totalNetworkCapacity); - /* double avg_channel_size = 7; */ - if (message.avgChannelSize !== 0) - writer.tag(7, runtime_1.WireType.Bit64).double(message.avgChannelSize); - /* int64 min_channel_size = 8; */ - if (message.minChannelSize !== "0") - writer.tag(8, runtime_1.WireType.Varint).int64(message.minChannelSize); - /* int64 max_channel_size = 9; */ - if (message.maxChannelSize !== "0") - writer.tag(9, runtime_1.WireType.Varint).int64(message.maxChannelSize); - /* int64 median_channel_size_sat = 10; */ - if (message.medianChannelSizeSat !== "0") - writer.tag(10, runtime_1.WireType.Varint).int64(message.medianChannelSizeSat); - /* uint64 num_zombie_chans = 11; */ - if (message.numZombieChans !== "0") - writer.tag(11, runtime_1.WireType.Varint).uint64(message.numZombieChans); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NetworkInfo - */ -exports.NetworkInfo = new NetworkInfo$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class StopRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.StopRequest", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.StopRequest - */ -exports.StopRequest = new StopRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class StopResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.StopResponse", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.StopResponse - */ -exports.StopResponse = new StopResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class GraphTopologySubscription$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.GraphTopologySubscription", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.GraphTopologySubscription - */ -exports.GraphTopologySubscription = new GraphTopologySubscription$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class GraphTopologyUpdate$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.GraphTopologyUpdate", [ - { no: 1, name: "node_updates", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.NodeUpdate }, - { no: 2, name: "channel_updates", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.ChannelEdgeUpdate }, - { no: 3, name: "closed_chans", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.ClosedChannelUpdate } - ]); - } - create(value) { - const message = { nodeUpdates: [], channelUpdates: [], closedChans: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.NodeUpdate node_updates */ 1: - message.nodeUpdates.push(exports.NodeUpdate.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* repeated lnrpc.ChannelEdgeUpdate channel_updates */ 2: - message.channelUpdates.push(exports.ChannelEdgeUpdate.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* repeated lnrpc.ClosedChannelUpdate closed_chans */ 3: - message.closedChans.push(exports.ClosedChannelUpdate.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated lnrpc.NodeUpdate node_updates = 1; */ - for (let i = 0; i < message.nodeUpdates.length; i++) - exports.NodeUpdate.internalBinaryWrite(message.nodeUpdates[i], writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* repeated lnrpc.ChannelEdgeUpdate channel_updates = 2; */ - for (let i = 0; i < message.channelUpdates.length; i++) - exports.ChannelEdgeUpdate.internalBinaryWrite(message.channelUpdates[i], writer.tag(2, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* repeated lnrpc.ClosedChannelUpdate closed_chans = 3; */ - for (let i = 0; i < message.closedChans.length; i++) - exports.ClosedChannelUpdate.internalBinaryWrite(message.closedChans[i], writer.tag(3, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.GraphTopologyUpdate - */ -exports.GraphTopologyUpdate = new GraphTopologyUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NodeUpdate$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.NodeUpdate", [ - { no: 1, name: "addresses", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "identity_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "global_features", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 4, name: "alias", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 5, name: "color", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 7, name: "node_addresses", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.NodeAddress }, - { no: 6, name: "features", kind: "map", K: 13 /*ScalarType.UINT32*/, V: { kind: "message", T: () => exports.Feature } } - ]); - } - create(value) { - const message = { addresses: [], identityKey: "", globalFeatures: new Uint8Array(0), alias: "", color: "", nodeAddresses: [], features: {} }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated string addresses = 1 [deprecated = true];*/ 1: - message.addresses.push(reader.string()); - break; - case /* string identity_key */ 2: - message.identityKey = reader.string(); - break; - case /* bytes global_features = 3 [deprecated = true];*/ 3: - message.globalFeatures = reader.bytes(); - break; - case /* string alias */ 4: - message.alias = reader.string(); - break; - case /* string color */ 5: - message.color = reader.string(); - break; - case /* repeated lnrpc.NodeAddress node_addresses */ 7: - message.nodeAddresses.push(exports.NodeAddress.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* map features */ 6: - this.binaryReadMap6(message.features, reader, options); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - binaryReadMap6(map, reader, options) { - let len = reader.uint32(), end = reader.pos + len, key, val; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint32(); - break; - case 2: - val = exports.Feature.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.NodeUpdate.features"); - } - } - map[key !== null && key !== void 0 ? key : 0] = val !== null && val !== void 0 ? val : exports.Feature.create(); - } - internalBinaryWrite(message, writer, options) { - /* repeated string addresses = 1 [deprecated = true]; */ - for (let i = 0; i < message.addresses.length; i++) - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.addresses[i]); - /* string identity_key = 2; */ - if (message.identityKey !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.identityKey); - /* bytes global_features = 3 [deprecated = true]; */ - if (message.globalFeatures.length) - writer.tag(3, runtime_1.WireType.LengthDelimited).bytes(message.globalFeatures); - /* string alias = 4; */ - if (message.alias !== "") - writer.tag(4, runtime_1.WireType.LengthDelimited).string(message.alias); - /* string color = 5; */ - if (message.color !== "") - writer.tag(5, runtime_1.WireType.LengthDelimited).string(message.color); - /* repeated lnrpc.NodeAddress node_addresses = 7; */ - for (let i = 0; i < message.nodeAddresses.length; i++) - exports.NodeAddress.internalBinaryWrite(message.nodeAddresses[i], writer.tag(7, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* map features = 6; */ - for (let k of Object.keys(message.features)) { - writer.tag(6, runtime_1.WireType.LengthDelimited).fork().tag(1, runtime_1.WireType.Varint).uint32(parseInt(k)); - writer.tag(2, runtime_1.WireType.LengthDelimited).fork(); - exports.Feature.internalBinaryWrite(message.features[k], writer, options); - writer.join().join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NodeUpdate - */ -exports.NodeUpdate = new NodeUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelEdgeUpdate$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelEdgeUpdate", [ - { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "chan_point", kind: "message", T: () => exports.ChannelPoint }, - { no: 3, name: "capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 4, name: "routing_policy", kind: "message", T: () => exports.RoutingPolicy }, - { no: 5, name: "advertising_node", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 6, name: "connecting_node", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { chanId: "0", capacity: "0", advertisingNode: "", connectingNode: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 chan_id = 1 [jstype = JS_STRING];*/ 1: - message.chanId = reader.uint64().toString(); - break; - case /* lnrpc.ChannelPoint chan_point */ 2: - message.chanPoint = exports.ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.chanPoint); - break; - case /* int64 capacity */ 3: - message.capacity = reader.int64().toString(); - break; - case /* lnrpc.RoutingPolicy routing_policy */ 4: - message.routingPolicy = exports.RoutingPolicy.internalBinaryRead(reader, reader.uint32(), options, message.routingPolicy); - break; - case /* string advertising_node */ 5: - message.advertisingNode = reader.string(); - break; - case /* string connecting_node */ 6: - message.connectingNode = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint64 chan_id = 1 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(1, runtime_1.WireType.Varint).uint64(message.chanId); - /* lnrpc.ChannelPoint chan_point = 2; */ - if (message.chanPoint) - exports.ChannelPoint.internalBinaryWrite(message.chanPoint, writer.tag(2, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* int64 capacity = 3; */ - if (message.capacity !== "0") - writer.tag(3, runtime_1.WireType.Varint).int64(message.capacity); - /* lnrpc.RoutingPolicy routing_policy = 4; */ - if (message.routingPolicy) - exports.RoutingPolicy.internalBinaryWrite(message.routingPolicy, writer.tag(4, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* string advertising_node = 5; */ - if (message.advertisingNode !== "") - writer.tag(5, runtime_1.WireType.LengthDelimited).string(message.advertisingNode); - /* string connecting_node = 6; */ - if (message.connectingNode !== "") - writer.tag(6, runtime_1.WireType.LengthDelimited).string(message.connectingNode); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelEdgeUpdate - */ -exports.ChannelEdgeUpdate = new ChannelEdgeUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ClosedChannelUpdate$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ClosedChannelUpdate", [ - { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 3, name: "closed_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 4, name: "chan_point", kind: "message", T: () => exports.ChannelPoint } - ]); - } - create(value) { - const message = { chanId: "0", capacity: "0", closedHeight: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 chan_id = 1 [jstype = JS_STRING];*/ 1: - message.chanId = reader.uint64().toString(); - break; - case /* int64 capacity */ 2: - message.capacity = reader.int64().toString(); - break; - case /* uint32 closed_height */ 3: - message.closedHeight = reader.uint32(); - break; - case /* lnrpc.ChannelPoint chan_point */ 4: - message.chanPoint = exports.ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.chanPoint); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint64 chan_id = 1 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(1, runtime_1.WireType.Varint).uint64(message.chanId); - /* int64 capacity = 2; */ - if (message.capacity !== "0") - writer.tag(2, runtime_1.WireType.Varint).int64(message.capacity); - /* uint32 closed_height = 3; */ - if (message.closedHeight !== 0) - writer.tag(3, runtime_1.WireType.Varint).uint32(message.closedHeight); - /* lnrpc.ChannelPoint chan_point = 4; */ - if (message.chanPoint) - exports.ChannelPoint.internalBinaryWrite(message.chanPoint, writer.tag(4, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ClosedChannelUpdate - */ -exports.ClosedChannelUpdate = new ClosedChannelUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class HopHint$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.HopHint", [ - { no: 1, name: "node_id", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 3, name: "fee_base_msat", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 4, name: "fee_proportional_millionths", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "cltv_expiry_delta", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value) { - const message = { nodeId: "", chanId: "0", feeBaseMsat: 0, feeProportionalMillionths: 0, cltvExpiryDelta: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string node_id */ 1: - message.nodeId = reader.string(); - break; - case /* uint64 chan_id = 2 [jstype = JS_STRING];*/ 2: - message.chanId = reader.uint64().toString(); - break; - case /* uint32 fee_base_msat */ 3: - message.feeBaseMsat = reader.uint32(); - break; - case /* uint32 fee_proportional_millionths */ 4: - message.feeProportionalMillionths = reader.uint32(); - break; - case /* uint32 cltv_expiry_delta */ 5: - message.cltvExpiryDelta = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string node_id = 1; */ - if (message.nodeId !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.nodeId); - /* uint64 chan_id = 2 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(2, runtime_1.WireType.Varint).uint64(message.chanId); - /* uint32 fee_base_msat = 3; */ - if (message.feeBaseMsat !== 0) - writer.tag(3, runtime_1.WireType.Varint).uint32(message.feeBaseMsat); - /* uint32 fee_proportional_millionths = 4; */ - if (message.feeProportionalMillionths !== 0) - writer.tag(4, runtime_1.WireType.Varint).uint32(message.feeProportionalMillionths); - /* uint32 cltv_expiry_delta = 5; */ - if (message.cltvExpiryDelta !== 0) - writer.tag(5, runtime_1.WireType.Varint).uint32(message.cltvExpiryDelta); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.HopHint - */ -exports.HopHint = new HopHint$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class RouteHint$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.RouteHint", [ - { no: 1, name: "hop_hints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.HopHint } - ]); - } - create(value) { - const message = { hopHints: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.HopHint hop_hints */ 1: - message.hopHints.push(exports.HopHint.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated lnrpc.HopHint hop_hints = 1; */ - for (let i = 0; i < message.hopHints.length; i++) - exports.HopHint.internalBinaryWrite(message.hopHints[i], writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.RouteHint - */ -exports.RouteHint = new RouteHint$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Invoice$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.Invoice", [ - { no: 1, name: "memo", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "r_preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 4, name: "r_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 5, name: "value", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 23, name: "value_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 6, name: "settled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 7, name: "creation_date", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 8, name: "settle_date", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 9, name: "payment_request", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 10, name: "description_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 11, name: "expiry", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 12, name: "fallback_addr", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 13, name: "cltv_expiry", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 14, name: "route_hints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.RouteHint }, - { no: 15, name: "private", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 16, name: "add_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 17, name: "settle_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 18, name: "amt_paid", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 19, name: "amt_paid_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 20, name: "amt_paid_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 21, name: "state", kind: "enum", T: () => ["lnrpc.Invoice.InvoiceState", Invoice_InvoiceState] }, - { no: 22, name: "htlcs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.InvoiceHTLC }, - { no: 24, name: "features", kind: "map", K: 13 /*ScalarType.UINT32*/, V: { kind: "message", T: () => exports.Feature } }, - { no: 25, name: "is_keysend", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 26, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 27, name: "is_amp", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { memo: "", rPreimage: new Uint8Array(0), rHash: new Uint8Array(0), value: "0", valueMsat: "0", settled: false, creationDate: "0", settleDate: "0", paymentRequest: "", descriptionHash: new Uint8Array(0), expiry: "0", fallbackAddr: "", cltvExpiry: "0", routeHints: [], private: false, addIndex: "0", settleIndex: "0", amtPaid: "0", amtPaidSat: "0", amtPaidMsat: "0", state: 0, htlcs: [], features: {}, isKeysend: false, paymentAddr: new Uint8Array(0), isAmp: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string memo */ 1: - message.memo = reader.string(); - break; - case /* bytes r_preimage */ 3: - message.rPreimage = reader.bytes(); - break; - case /* bytes r_hash */ 4: - message.rHash = reader.bytes(); - break; - case /* int64 value */ 5: - message.value = reader.int64().toString(); - break; - case /* int64 value_msat */ 23: - message.valueMsat = reader.int64().toString(); - break; - case /* bool settled = 6 [deprecated = true];*/ 6: - message.settled = reader.bool(); - break; - case /* int64 creation_date */ 7: - message.creationDate = reader.int64().toString(); - break; - case /* int64 settle_date */ 8: - message.settleDate = reader.int64().toString(); - break; - case /* string payment_request */ 9: - message.paymentRequest = reader.string(); - break; - case /* bytes description_hash */ 10: - message.descriptionHash = reader.bytes(); - break; - case /* int64 expiry */ 11: - message.expiry = reader.int64().toString(); - break; - case /* string fallback_addr */ 12: - message.fallbackAddr = reader.string(); - break; - case /* uint64 cltv_expiry */ 13: - message.cltvExpiry = reader.uint64().toString(); - break; - case /* repeated lnrpc.RouteHint route_hints */ 14: - message.routeHints.push(exports.RouteHint.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* bool private */ 15: - message.private = reader.bool(); - break; - case /* uint64 add_index */ 16: - message.addIndex = reader.uint64().toString(); - break; - case /* uint64 settle_index */ 17: - message.settleIndex = reader.uint64().toString(); - break; - case /* int64 amt_paid = 18 [deprecated = true];*/ 18: - message.amtPaid = reader.int64().toString(); - break; - case /* int64 amt_paid_sat */ 19: - message.amtPaidSat = reader.int64().toString(); - break; - case /* int64 amt_paid_msat */ 20: - message.amtPaidMsat = reader.int64().toString(); - break; - case /* lnrpc.Invoice.InvoiceState state */ 21: - message.state = reader.int32(); - break; - case /* repeated lnrpc.InvoiceHTLC htlcs */ 22: - message.htlcs.push(exports.InvoiceHTLC.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* map features */ 24: - this.binaryReadMap24(message.features, reader, options); - break; - case /* bool is_keysend */ 25: - message.isKeysend = reader.bool(); - break; - case /* bytes payment_addr */ 26: - message.paymentAddr = reader.bytes(); - break; - case /* bool is_amp */ 27: - message.isAmp = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - binaryReadMap24(map, reader, options) { - let len = reader.uint32(), end = reader.pos + len, key, val; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint32(); - break; - case 2: - val = exports.Feature.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.Invoice.features"); - } - } - map[key !== null && key !== void 0 ? key : 0] = val !== null && val !== void 0 ? val : exports.Feature.create(); - } - internalBinaryWrite(message, writer, options) { - /* string memo = 1; */ - if (message.memo !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.memo); - /* bytes r_preimage = 3; */ - if (message.rPreimage.length) - writer.tag(3, runtime_1.WireType.LengthDelimited).bytes(message.rPreimage); - /* bytes r_hash = 4; */ - if (message.rHash.length) - writer.tag(4, runtime_1.WireType.LengthDelimited).bytes(message.rHash); - /* int64 value = 5; */ - if (message.value !== "0") - writer.tag(5, runtime_1.WireType.Varint).int64(message.value); - /* int64 value_msat = 23; */ - if (message.valueMsat !== "0") - writer.tag(23, runtime_1.WireType.Varint).int64(message.valueMsat); - /* bool settled = 6 [deprecated = true]; */ - if (message.settled !== false) - writer.tag(6, runtime_1.WireType.Varint).bool(message.settled); - /* int64 creation_date = 7; */ - if (message.creationDate !== "0") - writer.tag(7, runtime_1.WireType.Varint).int64(message.creationDate); - /* int64 settle_date = 8; */ - if (message.settleDate !== "0") - writer.tag(8, runtime_1.WireType.Varint).int64(message.settleDate); - /* string payment_request = 9; */ - if (message.paymentRequest !== "") - writer.tag(9, runtime_1.WireType.LengthDelimited).string(message.paymentRequest); - /* bytes description_hash = 10; */ - if (message.descriptionHash.length) - writer.tag(10, runtime_1.WireType.LengthDelimited).bytes(message.descriptionHash); - /* int64 expiry = 11; */ - if (message.expiry !== "0") - writer.tag(11, runtime_1.WireType.Varint).int64(message.expiry); - /* string fallback_addr = 12; */ - if (message.fallbackAddr !== "") - writer.tag(12, runtime_1.WireType.LengthDelimited).string(message.fallbackAddr); - /* uint64 cltv_expiry = 13; */ - if (message.cltvExpiry !== "0") - writer.tag(13, runtime_1.WireType.Varint).uint64(message.cltvExpiry); - /* repeated lnrpc.RouteHint route_hints = 14; */ - for (let i = 0; i < message.routeHints.length; i++) - exports.RouteHint.internalBinaryWrite(message.routeHints[i], writer.tag(14, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* bool private = 15; */ - if (message.private !== false) - writer.tag(15, runtime_1.WireType.Varint).bool(message.private); - /* uint64 add_index = 16; */ - if (message.addIndex !== "0") - writer.tag(16, runtime_1.WireType.Varint).uint64(message.addIndex); - /* uint64 settle_index = 17; */ - if (message.settleIndex !== "0") - writer.tag(17, runtime_1.WireType.Varint).uint64(message.settleIndex); - /* int64 amt_paid = 18 [deprecated = true]; */ - if (message.amtPaid !== "0") - writer.tag(18, runtime_1.WireType.Varint).int64(message.amtPaid); - /* int64 amt_paid_sat = 19; */ - if (message.amtPaidSat !== "0") - writer.tag(19, runtime_1.WireType.Varint).int64(message.amtPaidSat); - /* int64 amt_paid_msat = 20; */ - if (message.amtPaidMsat !== "0") - writer.tag(20, runtime_1.WireType.Varint).int64(message.amtPaidMsat); - /* lnrpc.Invoice.InvoiceState state = 21; */ - if (message.state !== 0) - writer.tag(21, runtime_1.WireType.Varint).int32(message.state); - /* repeated lnrpc.InvoiceHTLC htlcs = 22; */ - for (let i = 0; i < message.htlcs.length; i++) - exports.InvoiceHTLC.internalBinaryWrite(message.htlcs[i], writer.tag(22, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* map features = 24; */ - for (let k of Object.keys(message.features)) { - writer.tag(24, runtime_1.WireType.LengthDelimited).fork().tag(1, runtime_1.WireType.Varint).uint32(parseInt(k)); - writer.tag(2, runtime_1.WireType.LengthDelimited).fork(); - exports.Feature.internalBinaryWrite(message.features[k], writer, options); - writer.join().join(); - } - /* bool is_keysend = 25; */ - if (message.isKeysend !== false) - writer.tag(25, runtime_1.WireType.Varint).bool(message.isKeysend); - /* bytes payment_addr = 26; */ - if (message.paymentAddr.length) - writer.tag(26, runtime_1.WireType.LengthDelimited).bytes(message.paymentAddr); - /* bool is_amp = 27; */ - if (message.isAmp !== false) - writer.tag(27, runtime_1.WireType.Varint).bool(message.isAmp); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Invoice - */ -exports.Invoice = new Invoice$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class InvoiceHTLC$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.InvoiceHTLC", [ - { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "htlc_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 3, name: "amt_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 4, name: "accept_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 5, name: "accept_time", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 6, name: "resolve_time", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 7, name: "expiry_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 8, name: "state", kind: "enum", T: () => ["lnrpc.InvoiceHTLCState", InvoiceHTLCState] }, - { no: 9, name: "custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } }, - { no: 10, name: "mpp_total_amt_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 11, name: "amp", kind: "message", T: () => exports.AMP } - ]); - } - create(value) { - const message = { chanId: "0", htlcIndex: "0", amtMsat: "0", acceptHeight: 0, acceptTime: "0", resolveTime: "0", expiryHeight: 0, state: 0, customRecords: {}, mppTotalAmtMsat: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 chan_id = 1 [jstype = JS_STRING];*/ 1: - message.chanId = reader.uint64().toString(); - break; - case /* uint64 htlc_index */ 2: - message.htlcIndex = reader.uint64().toString(); - break; - case /* uint64 amt_msat */ 3: - message.amtMsat = reader.uint64().toString(); - break; - case /* int32 accept_height */ 4: - message.acceptHeight = reader.int32(); - break; - case /* int64 accept_time */ 5: - message.acceptTime = reader.int64().toString(); - break; - case /* int64 resolve_time */ 6: - message.resolveTime = reader.int64().toString(); - break; - case /* int32 expiry_height */ 7: - message.expiryHeight = reader.int32(); - break; - case /* lnrpc.InvoiceHTLCState state */ 8: - message.state = reader.int32(); - break; - case /* map custom_records */ 9: - this.binaryReadMap9(message.customRecords, reader, options); - break; - case /* uint64 mpp_total_amt_msat */ 10: - message.mppTotalAmtMsat = reader.uint64().toString(); - break; - case /* lnrpc.AMP amp */ 11: - message.amp = exports.AMP.internalBinaryRead(reader, reader.uint32(), options, message.amp); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - binaryReadMap9(map, reader, options) { - let len = reader.uint32(), end = reader.pos + len, key, val; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint64().toString(); - break; - case 2: - val = reader.bytes(); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.InvoiceHTLC.custom_records"); - } - } - map[key !== null && key !== void 0 ? key : "0"] = val !== null && val !== void 0 ? val : new Uint8Array(0); - } - internalBinaryWrite(message, writer, options) { - /* uint64 chan_id = 1 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(1, runtime_1.WireType.Varint).uint64(message.chanId); - /* uint64 htlc_index = 2; */ - if (message.htlcIndex !== "0") - writer.tag(2, runtime_1.WireType.Varint).uint64(message.htlcIndex); - /* uint64 amt_msat = 3; */ - if (message.amtMsat !== "0") - writer.tag(3, runtime_1.WireType.Varint).uint64(message.amtMsat); - /* int32 accept_height = 4; */ - if (message.acceptHeight !== 0) - writer.tag(4, runtime_1.WireType.Varint).int32(message.acceptHeight); - /* int64 accept_time = 5; */ - if (message.acceptTime !== "0") - writer.tag(5, runtime_1.WireType.Varint).int64(message.acceptTime); - /* int64 resolve_time = 6; */ - if (message.resolveTime !== "0") - writer.tag(6, runtime_1.WireType.Varint).int64(message.resolveTime); - /* int32 expiry_height = 7; */ - if (message.expiryHeight !== 0) - writer.tag(7, runtime_1.WireType.Varint).int32(message.expiryHeight); - /* lnrpc.InvoiceHTLCState state = 8; */ - if (message.state !== 0) - writer.tag(8, runtime_1.WireType.Varint).int32(message.state); - /* map custom_records = 9; */ - for (let k of Object.keys(message.customRecords)) - writer.tag(9, runtime_1.WireType.LengthDelimited).fork().tag(1, runtime_1.WireType.Varint).uint64(k).tag(2, runtime_1.WireType.LengthDelimited).bytes(message.customRecords[k]).join(); - /* uint64 mpp_total_amt_msat = 10; */ - if (message.mppTotalAmtMsat !== "0") - writer.tag(10, runtime_1.WireType.Varint).uint64(message.mppTotalAmtMsat); - /* lnrpc.AMP amp = 11; */ - if (message.amp) - exports.AMP.internalBinaryWrite(message.amp, writer.tag(11, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.InvoiceHTLC - */ -exports.InvoiceHTLC = new InvoiceHTLC$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class AMP$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.AMP", [ - { no: 1, name: "root_share", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "set_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "child_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 4, name: "hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 5, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { rootShare: new Uint8Array(0), setId: new Uint8Array(0), childIndex: 0, hash: new Uint8Array(0), preimage: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes root_share */ 1: - message.rootShare = reader.bytes(); - break; - case /* bytes set_id */ 2: - message.setId = reader.bytes(); - break; - case /* uint32 child_index */ 3: - message.childIndex = reader.uint32(); - break; - case /* bytes hash */ 4: - message.hash = reader.bytes(); - break; - case /* bytes preimage */ 5: - message.preimage = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes root_share = 1; */ - if (message.rootShare.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.rootShare); - /* bytes set_id = 2; */ - if (message.setId.length) - writer.tag(2, runtime_1.WireType.LengthDelimited).bytes(message.setId); - /* uint32 child_index = 3; */ - if (message.childIndex !== 0) - writer.tag(3, runtime_1.WireType.Varint).uint32(message.childIndex); - /* bytes hash = 4; */ - if (message.hash.length) - writer.tag(4, runtime_1.WireType.LengthDelimited).bytes(message.hash); - /* bytes preimage = 5; */ - if (message.preimage.length) - writer.tag(5, runtime_1.WireType.LengthDelimited).bytes(message.preimage); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.AMP - */ -exports.AMP = new AMP$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class AddInvoiceResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.AddInvoiceResponse", [ - { no: 1, name: "r_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "payment_request", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 16, name: "add_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 17, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { rHash: new Uint8Array(0), paymentRequest: "", addIndex: "0", paymentAddr: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes r_hash */ 1: - message.rHash = reader.bytes(); - break; - case /* string payment_request */ 2: - message.paymentRequest = reader.string(); - break; - case /* uint64 add_index */ 16: - message.addIndex = reader.uint64().toString(); - break; - case /* bytes payment_addr */ 17: - message.paymentAddr = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes r_hash = 1; */ - if (message.rHash.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.rHash); - /* string payment_request = 2; */ - if (message.paymentRequest !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.paymentRequest); - /* uint64 add_index = 16; */ - if (message.addIndex !== "0") - writer.tag(16, runtime_1.WireType.Varint).uint64(message.addIndex); - /* bytes payment_addr = 17; */ - if (message.paymentAddr.length) - writer.tag(17, runtime_1.WireType.LengthDelimited).bytes(message.paymentAddr); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.AddInvoiceResponse - */ -exports.AddInvoiceResponse = new AddInvoiceResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PaymentHash$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.PaymentHash", [ - { no: 1, name: "r_hash_str", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "r_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { rHashStr: "", rHash: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string r_hash_str = 1 [deprecated = true];*/ 1: - message.rHashStr = reader.string(); - break; - case /* bytes r_hash */ 2: - message.rHash = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string r_hash_str = 1 [deprecated = true]; */ - if (message.rHashStr !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.rHashStr); - /* bytes r_hash = 2; */ - if (message.rHash.length) - writer.tag(2, runtime_1.WireType.LengthDelimited).bytes(message.rHash); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PaymentHash - */ -exports.PaymentHash = new PaymentHash$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListInvoiceRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ListInvoiceRequest", [ - { no: 1, name: "pending_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 4, name: "index_offset", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 5, name: "num_max_invoices", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 6, name: "reversed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { pendingOnly: false, indexOffset: "0", numMaxInvoices: "0", reversed: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool pending_only */ 1: - message.pendingOnly = reader.bool(); - break; - case /* uint64 index_offset */ 4: - message.indexOffset = reader.uint64().toString(); - break; - case /* uint64 num_max_invoices */ 5: - message.numMaxInvoices = reader.uint64().toString(); - break; - case /* bool reversed */ 6: - message.reversed = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bool pending_only = 1; */ - if (message.pendingOnly !== false) - writer.tag(1, runtime_1.WireType.Varint).bool(message.pendingOnly); - /* uint64 index_offset = 4; */ - if (message.indexOffset !== "0") - writer.tag(4, runtime_1.WireType.Varint).uint64(message.indexOffset); - /* uint64 num_max_invoices = 5; */ - if (message.numMaxInvoices !== "0") - writer.tag(5, runtime_1.WireType.Varint).uint64(message.numMaxInvoices); - /* bool reversed = 6; */ - if (message.reversed !== false) - writer.tag(6, runtime_1.WireType.Varint).bool(message.reversed); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListInvoiceRequest - */ -exports.ListInvoiceRequest = new ListInvoiceRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListInvoiceResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ListInvoiceResponse", [ - { no: 1, name: "invoices", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.Invoice }, - { no: 2, name: "last_index_offset", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 3, name: "first_index_offset", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { invoices: [], lastIndexOffset: "0", firstIndexOffset: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.Invoice invoices */ 1: - message.invoices.push(exports.Invoice.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* uint64 last_index_offset */ 2: - message.lastIndexOffset = reader.uint64().toString(); - break; - case /* uint64 first_index_offset */ 3: - message.firstIndexOffset = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated lnrpc.Invoice invoices = 1; */ - for (let i = 0; i < message.invoices.length; i++) - exports.Invoice.internalBinaryWrite(message.invoices[i], writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* uint64 last_index_offset = 2; */ - if (message.lastIndexOffset !== "0") - writer.tag(2, runtime_1.WireType.Varint).uint64(message.lastIndexOffset); - /* uint64 first_index_offset = 3; */ - if (message.firstIndexOffset !== "0") - writer.tag(3, runtime_1.WireType.Varint).uint64(message.firstIndexOffset); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListInvoiceResponse - */ -exports.ListInvoiceResponse = new ListInvoiceResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class InvoiceSubscription$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.InvoiceSubscription", [ - { no: 1, name: "add_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "settle_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { addIndex: "0", settleIndex: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 add_index */ 1: - message.addIndex = reader.uint64().toString(); - break; - case /* uint64 settle_index */ 2: - message.settleIndex = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint64 add_index = 1; */ - if (message.addIndex !== "0") - writer.tag(1, runtime_1.WireType.Varint).uint64(message.addIndex); - /* uint64 settle_index = 2; */ - if (message.settleIndex !== "0") - writer.tag(2, runtime_1.WireType.Varint).uint64(message.settleIndex); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.InvoiceSubscription - */ -exports.InvoiceSubscription = new InvoiceSubscription$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Payment$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.Payment", [ - { no: 1, name: "payment_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "value", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 3, name: "creation_date", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 5, name: "fee", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 6, name: "payment_preimage", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 7, name: "value_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 8, name: "value_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 9, name: "payment_request", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 10, name: "status", kind: "enum", T: () => ["lnrpc.Payment.PaymentStatus", Payment_PaymentStatus] }, - { no: 11, name: "fee_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 12, name: "fee_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 13, name: "creation_time_ns", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 14, name: "htlcs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.HTLCAttempt }, - { no: 15, name: "payment_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 16, name: "failure_reason", kind: "enum", T: () => ["lnrpc.PaymentFailureReason", PaymentFailureReason] } - ]); - } - create(value) { - const message = { paymentHash: "", value: "0", creationDate: "0", fee: "0", paymentPreimage: "", valueSat: "0", valueMsat: "0", paymentRequest: "", status: 0, feeSat: "0", feeMsat: "0", creationTimeNs: "0", htlcs: [], paymentIndex: "0", failureReason: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string payment_hash */ 1: - message.paymentHash = reader.string(); - break; - case /* int64 value = 2 [deprecated = true];*/ 2: - message.value = reader.int64().toString(); - break; - case /* int64 creation_date = 3 [deprecated = true];*/ 3: - message.creationDate = reader.int64().toString(); - break; - case /* int64 fee = 5 [deprecated = true];*/ 5: - message.fee = reader.int64().toString(); - break; - case /* string payment_preimage */ 6: - message.paymentPreimage = reader.string(); - break; - case /* int64 value_sat */ 7: - message.valueSat = reader.int64().toString(); - break; - case /* int64 value_msat */ 8: - message.valueMsat = reader.int64().toString(); - break; - case /* string payment_request */ 9: - message.paymentRequest = reader.string(); - break; - case /* lnrpc.Payment.PaymentStatus status */ 10: - message.status = reader.int32(); - break; - case /* int64 fee_sat */ 11: - message.feeSat = reader.int64().toString(); - break; - case /* int64 fee_msat */ 12: - message.feeMsat = reader.int64().toString(); - break; - case /* int64 creation_time_ns */ 13: - message.creationTimeNs = reader.int64().toString(); - break; - case /* repeated lnrpc.HTLCAttempt htlcs */ 14: - message.htlcs.push(exports.HTLCAttempt.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* uint64 payment_index */ 15: - message.paymentIndex = reader.uint64().toString(); - break; - case /* lnrpc.PaymentFailureReason failure_reason */ 16: - message.failureReason = reader.int32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string payment_hash = 1; */ - if (message.paymentHash !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.paymentHash); - /* int64 value = 2 [deprecated = true]; */ - if (message.value !== "0") - writer.tag(2, runtime_1.WireType.Varint).int64(message.value); - /* int64 creation_date = 3 [deprecated = true]; */ - if (message.creationDate !== "0") - writer.tag(3, runtime_1.WireType.Varint).int64(message.creationDate); - /* int64 fee = 5 [deprecated = true]; */ - if (message.fee !== "0") - writer.tag(5, runtime_1.WireType.Varint).int64(message.fee); - /* string payment_preimage = 6; */ - if (message.paymentPreimage !== "") - writer.tag(6, runtime_1.WireType.LengthDelimited).string(message.paymentPreimage); - /* int64 value_sat = 7; */ - if (message.valueSat !== "0") - writer.tag(7, runtime_1.WireType.Varint).int64(message.valueSat); - /* int64 value_msat = 8; */ - if (message.valueMsat !== "0") - writer.tag(8, runtime_1.WireType.Varint).int64(message.valueMsat); - /* string payment_request = 9; */ - if (message.paymentRequest !== "") - writer.tag(9, runtime_1.WireType.LengthDelimited).string(message.paymentRequest); - /* lnrpc.Payment.PaymentStatus status = 10; */ - if (message.status !== 0) - writer.tag(10, runtime_1.WireType.Varint).int32(message.status); - /* int64 fee_sat = 11; */ - if (message.feeSat !== "0") - writer.tag(11, runtime_1.WireType.Varint).int64(message.feeSat); - /* int64 fee_msat = 12; */ - if (message.feeMsat !== "0") - writer.tag(12, runtime_1.WireType.Varint).int64(message.feeMsat); - /* int64 creation_time_ns = 13; */ - if (message.creationTimeNs !== "0") - writer.tag(13, runtime_1.WireType.Varint).int64(message.creationTimeNs); - /* repeated lnrpc.HTLCAttempt htlcs = 14; */ - for (let i = 0; i < message.htlcs.length; i++) - exports.HTLCAttempt.internalBinaryWrite(message.htlcs[i], writer.tag(14, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* uint64 payment_index = 15; */ - if (message.paymentIndex !== "0") - writer.tag(15, runtime_1.WireType.Varint).uint64(message.paymentIndex); - /* lnrpc.PaymentFailureReason failure_reason = 16; */ - if (message.failureReason !== 0) - writer.tag(16, runtime_1.WireType.Varint).int32(message.failureReason); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Payment - */ -exports.Payment = new Payment$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class HTLCAttempt$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.HTLCAttempt", [ - { no: 7, name: "attempt_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 1, name: "status", kind: "enum", T: () => ["lnrpc.HTLCAttempt.HTLCStatus", HTLCAttempt_HTLCStatus] }, - { no: 2, name: "route", kind: "message", T: () => exports.Route }, - { no: 3, name: "attempt_time_ns", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 4, name: "resolve_time_ns", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 5, name: "failure", kind: "message", T: () => exports.Failure }, - { no: 6, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { attemptId: "0", status: 0, attemptTimeNs: "0", resolveTimeNs: "0", preimage: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 attempt_id */ 7: - message.attemptId = reader.uint64().toString(); - break; - case /* lnrpc.HTLCAttempt.HTLCStatus status */ 1: - message.status = reader.int32(); - break; - case /* lnrpc.Route route */ 2: - message.route = exports.Route.internalBinaryRead(reader, reader.uint32(), options, message.route); - break; - case /* int64 attempt_time_ns */ 3: - message.attemptTimeNs = reader.int64().toString(); - break; - case /* int64 resolve_time_ns */ 4: - message.resolveTimeNs = reader.int64().toString(); - break; - case /* lnrpc.Failure failure */ 5: - message.failure = exports.Failure.internalBinaryRead(reader, reader.uint32(), options, message.failure); - break; - case /* bytes preimage */ 6: - message.preimage = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint64 attempt_id = 7; */ - if (message.attemptId !== "0") - writer.tag(7, runtime_1.WireType.Varint).uint64(message.attemptId); - /* lnrpc.HTLCAttempt.HTLCStatus status = 1; */ - if (message.status !== 0) - writer.tag(1, runtime_1.WireType.Varint).int32(message.status); - /* lnrpc.Route route = 2; */ - if (message.route) - exports.Route.internalBinaryWrite(message.route, writer.tag(2, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* int64 attempt_time_ns = 3; */ - if (message.attemptTimeNs !== "0") - writer.tag(3, runtime_1.WireType.Varint).int64(message.attemptTimeNs); - /* int64 resolve_time_ns = 4; */ - if (message.resolveTimeNs !== "0") - writer.tag(4, runtime_1.WireType.Varint).int64(message.resolveTimeNs); - /* lnrpc.Failure failure = 5; */ - if (message.failure) - exports.Failure.internalBinaryWrite(message.failure, writer.tag(5, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* bytes preimage = 6; */ - if (message.preimage.length) - writer.tag(6, runtime_1.WireType.LengthDelimited).bytes(message.preimage); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.HTLCAttempt - */ -exports.HTLCAttempt = new HTLCAttempt$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListPaymentsRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ListPaymentsRequest", [ - { no: 1, name: "include_incomplete", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "index_offset", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 3, name: "max_payments", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 4, name: "reversed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { includeIncomplete: false, indexOffset: "0", maxPayments: "0", reversed: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool include_incomplete */ 1: - message.includeIncomplete = reader.bool(); - break; - case /* uint64 index_offset */ 2: - message.indexOffset = reader.uint64().toString(); - break; - case /* uint64 max_payments */ 3: - message.maxPayments = reader.uint64().toString(); - break; - case /* bool reversed */ 4: - message.reversed = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bool include_incomplete = 1; */ - if (message.includeIncomplete !== false) - writer.tag(1, runtime_1.WireType.Varint).bool(message.includeIncomplete); - /* uint64 index_offset = 2; */ - if (message.indexOffset !== "0") - writer.tag(2, runtime_1.WireType.Varint).uint64(message.indexOffset); - /* uint64 max_payments = 3; */ - if (message.maxPayments !== "0") - writer.tag(3, runtime_1.WireType.Varint).uint64(message.maxPayments); - /* bool reversed = 4; */ - if (message.reversed !== false) - writer.tag(4, runtime_1.WireType.Varint).bool(message.reversed); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListPaymentsRequest - */ -exports.ListPaymentsRequest = new ListPaymentsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListPaymentsResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ListPaymentsResponse", [ - { no: 1, name: "payments", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.Payment }, - { no: 2, name: "first_index_offset", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 3, name: "last_index_offset", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { payments: [], firstIndexOffset: "0", lastIndexOffset: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.Payment payments */ 1: - message.payments.push(exports.Payment.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* uint64 first_index_offset */ 2: - message.firstIndexOffset = reader.uint64().toString(); - break; - case /* uint64 last_index_offset */ 3: - message.lastIndexOffset = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated lnrpc.Payment payments = 1; */ - for (let i = 0; i < message.payments.length; i++) - exports.Payment.internalBinaryWrite(message.payments[i], writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* uint64 first_index_offset = 2; */ - if (message.firstIndexOffset !== "0") - writer.tag(2, runtime_1.WireType.Varint).uint64(message.firstIndexOffset); - /* uint64 last_index_offset = 3; */ - if (message.lastIndexOffset !== "0") - writer.tag(3, runtime_1.WireType.Varint).uint64(message.lastIndexOffset); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListPaymentsResponse - */ -exports.ListPaymentsResponse = new ListPaymentsResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class DeleteAllPaymentsRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.DeleteAllPaymentsRequest", [ - { no: 1, name: "failed_payments_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "failed_htlcs_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { failedPaymentsOnly: false, failedHtlcsOnly: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool failed_payments_only */ 1: - message.failedPaymentsOnly = reader.bool(); - break; - case /* bool failed_htlcs_only */ 2: - message.failedHtlcsOnly = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bool failed_payments_only = 1; */ - if (message.failedPaymentsOnly !== false) - writer.tag(1, runtime_1.WireType.Varint).bool(message.failedPaymentsOnly); - /* bool failed_htlcs_only = 2; */ - if (message.failedHtlcsOnly !== false) - writer.tag(2, runtime_1.WireType.Varint).bool(message.failedHtlcsOnly); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.DeleteAllPaymentsRequest - */ -exports.DeleteAllPaymentsRequest = new DeleteAllPaymentsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class DeleteAllPaymentsResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.DeleteAllPaymentsResponse", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.DeleteAllPaymentsResponse - */ -exports.DeleteAllPaymentsResponse = new DeleteAllPaymentsResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class AbandonChannelRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.AbandonChannelRequest", [ - { no: 1, name: "channel_point", kind: "message", T: () => exports.ChannelPoint }, - { no: 2, name: "pending_funding_shim_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { pendingFundingShimOnly: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ChannelPoint channel_point */ 1: - message.channelPoint = exports.ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.channelPoint); - break; - case /* bool pending_funding_shim_only */ 2: - message.pendingFundingShimOnly = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.ChannelPoint channel_point = 1; */ - if (message.channelPoint) - exports.ChannelPoint.internalBinaryWrite(message.channelPoint, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* bool pending_funding_shim_only = 2; */ - if (message.pendingFundingShimOnly !== false) - writer.tag(2, runtime_1.WireType.Varint).bool(message.pendingFundingShimOnly); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.AbandonChannelRequest - */ -exports.AbandonChannelRequest = new AbandonChannelRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class AbandonChannelResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.AbandonChannelResponse", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.AbandonChannelResponse - */ -exports.AbandonChannelResponse = new AbandonChannelResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class DebugLevelRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.DebugLevelRequest", [ - { no: 1, name: "show", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "level_spec", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { show: false, levelSpec: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool show */ 1: - message.show = reader.bool(); - break; - case /* string level_spec */ 2: - message.levelSpec = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bool show = 1; */ - if (message.show !== false) - writer.tag(1, runtime_1.WireType.Varint).bool(message.show); - /* string level_spec = 2; */ - if (message.levelSpec !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.levelSpec); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.DebugLevelRequest - */ -exports.DebugLevelRequest = new DebugLevelRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class DebugLevelResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.DebugLevelResponse", [ - { no: 1, name: "sub_systems", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { subSystems: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string sub_systems */ 1: - message.subSystems = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string sub_systems = 1; */ - if (message.subSystems !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.subSystems); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.DebugLevelResponse - */ -exports.DebugLevelResponse = new DebugLevelResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PayReqString$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.PayReqString", [ - { no: 1, name: "pay_req", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { payReq: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string pay_req */ 1: - message.payReq = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string pay_req = 1; */ - if (message.payReq !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.payReq); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PayReqString - */ -exports.PayReqString = new PayReqString$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PayReq$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.PayReq", [ - { no: 1, name: "destination", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "payment_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "num_satoshis", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 4, name: "timestamp", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 5, name: "expiry", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 6, name: "description", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 7, name: "description_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 8, name: "fallback_addr", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 9, name: "cltv_expiry", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 10, name: "route_hints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.RouteHint }, - { no: 11, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 12, name: "num_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 13, name: "features", kind: "map", K: 13 /*ScalarType.UINT32*/, V: { kind: "message", T: () => exports.Feature } } - ]); - } - create(value) { - const message = { destination: "", paymentHash: "", numSatoshis: "0", timestamp: "0", expiry: "0", description: "", descriptionHash: "", fallbackAddr: "", cltvExpiry: "0", routeHints: [], paymentAddr: new Uint8Array(0), numMsat: "0", features: {} }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string destination */ 1: - message.destination = reader.string(); - break; - case /* string payment_hash */ 2: - message.paymentHash = reader.string(); - break; - case /* int64 num_satoshis */ 3: - message.numSatoshis = reader.int64().toString(); - break; - case /* int64 timestamp */ 4: - message.timestamp = reader.int64().toString(); - break; - case /* int64 expiry */ 5: - message.expiry = reader.int64().toString(); - break; - case /* string description */ 6: - message.description = reader.string(); - break; - case /* string description_hash */ 7: - message.descriptionHash = reader.string(); - break; - case /* string fallback_addr */ 8: - message.fallbackAddr = reader.string(); - break; - case /* int64 cltv_expiry */ 9: - message.cltvExpiry = reader.int64().toString(); - break; - case /* repeated lnrpc.RouteHint route_hints */ 10: - message.routeHints.push(exports.RouteHint.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* bytes payment_addr */ 11: - message.paymentAddr = reader.bytes(); - break; - case /* int64 num_msat */ 12: - message.numMsat = reader.int64().toString(); - break; - case /* map features */ 13: - this.binaryReadMap13(message.features, reader, options); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - binaryReadMap13(map, reader, options) { - let len = reader.uint32(), end = reader.pos + len, key, val; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint32(); - break; - case 2: - val = exports.Feature.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.PayReq.features"); - } - } - map[key !== null && key !== void 0 ? key : 0] = val !== null && val !== void 0 ? val : exports.Feature.create(); - } - internalBinaryWrite(message, writer, options) { - /* string destination = 1; */ - if (message.destination !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.destination); - /* string payment_hash = 2; */ - if (message.paymentHash !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.paymentHash); - /* int64 num_satoshis = 3; */ - if (message.numSatoshis !== "0") - writer.tag(3, runtime_1.WireType.Varint).int64(message.numSatoshis); - /* int64 timestamp = 4; */ - if (message.timestamp !== "0") - writer.tag(4, runtime_1.WireType.Varint).int64(message.timestamp); - /* int64 expiry = 5; */ - if (message.expiry !== "0") - writer.tag(5, runtime_1.WireType.Varint).int64(message.expiry); - /* string description = 6; */ - if (message.description !== "") - writer.tag(6, runtime_1.WireType.LengthDelimited).string(message.description); - /* string description_hash = 7; */ - if (message.descriptionHash !== "") - writer.tag(7, runtime_1.WireType.LengthDelimited).string(message.descriptionHash); - /* string fallback_addr = 8; */ - if (message.fallbackAddr !== "") - writer.tag(8, runtime_1.WireType.LengthDelimited).string(message.fallbackAddr); - /* int64 cltv_expiry = 9; */ - if (message.cltvExpiry !== "0") - writer.tag(9, runtime_1.WireType.Varint).int64(message.cltvExpiry); - /* repeated lnrpc.RouteHint route_hints = 10; */ - for (let i = 0; i < message.routeHints.length; i++) - exports.RouteHint.internalBinaryWrite(message.routeHints[i], writer.tag(10, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* bytes payment_addr = 11; */ - if (message.paymentAddr.length) - writer.tag(11, runtime_1.WireType.LengthDelimited).bytes(message.paymentAddr); - /* int64 num_msat = 12; */ - if (message.numMsat !== "0") - writer.tag(12, runtime_1.WireType.Varint).int64(message.numMsat); - /* map features = 13; */ - for (let k of Object.keys(message.features)) { - writer.tag(13, runtime_1.WireType.LengthDelimited).fork().tag(1, runtime_1.WireType.Varint).uint32(parseInt(k)); - writer.tag(2, runtime_1.WireType.LengthDelimited).fork(); - exports.Feature.internalBinaryWrite(message.features[k], writer, options); - writer.join().join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PayReq - */ -exports.PayReq = new PayReq$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Feature$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.Feature", [ - { no: 2, name: "name", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "is_required", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 4, name: "is_known", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { name: "", isRequired: false, isKnown: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string name */ 2: - message.name = reader.string(); - break; - case /* bool is_required */ 3: - message.isRequired = reader.bool(); - break; - case /* bool is_known */ 4: - message.isKnown = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string name = 2; */ - if (message.name !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.name); - /* bool is_required = 3; */ - if (message.isRequired !== false) - writer.tag(3, runtime_1.WireType.Varint).bool(message.isRequired); - /* bool is_known = 4; */ - if (message.isKnown !== false) - writer.tag(4, runtime_1.WireType.Varint).bool(message.isKnown); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Feature - */ -exports.Feature = new Feature$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FeeReportRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.FeeReportRequest", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FeeReportRequest - */ -exports.FeeReportRequest = new FeeReportRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelFeeReport$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelFeeReport", [ - { no: 5, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 1, name: "channel_point", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "base_fee_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 3, name: "fee_per_mil", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 4, name: "fee_rate", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ } - ]); - } - create(value) { - const message = { chanId: "0", channelPoint: "", baseFeeMsat: "0", feePerMil: "0", feeRate: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 chan_id = 5 [jstype = JS_STRING];*/ 5: - message.chanId = reader.uint64().toString(); - break; - case /* string channel_point */ 1: - message.channelPoint = reader.string(); - break; - case /* int64 base_fee_msat */ 2: - message.baseFeeMsat = reader.int64().toString(); - break; - case /* int64 fee_per_mil */ 3: - message.feePerMil = reader.int64().toString(); - break; - case /* double fee_rate */ 4: - message.feeRate = reader.double(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint64 chan_id = 5 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(5, runtime_1.WireType.Varint).uint64(message.chanId); - /* string channel_point = 1; */ - if (message.channelPoint !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.channelPoint); - /* int64 base_fee_msat = 2; */ - if (message.baseFeeMsat !== "0") - writer.tag(2, runtime_1.WireType.Varint).int64(message.baseFeeMsat); - /* int64 fee_per_mil = 3; */ - if (message.feePerMil !== "0") - writer.tag(3, runtime_1.WireType.Varint).int64(message.feePerMil); - /* double fee_rate = 4; */ - if (message.feeRate !== 0) - writer.tag(4, runtime_1.WireType.Bit64).double(message.feeRate); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelFeeReport - */ -exports.ChannelFeeReport = new ChannelFeeReport$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FeeReportResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.FeeReportResponse", [ - { no: 1, name: "channel_fees", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.ChannelFeeReport }, - { no: 2, name: "day_fee_sum", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 3, name: "week_fee_sum", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 4, name: "month_fee_sum", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { channelFees: [], dayFeeSum: "0", weekFeeSum: "0", monthFeeSum: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.ChannelFeeReport channel_fees */ 1: - message.channelFees.push(exports.ChannelFeeReport.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* uint64 day_fee_sum */ 2: - message.dayFeeSum = reader.uint64().toString(); - break; - case /* uint64 week_fee_sum */ 3: - message.weekFeeSum = reader.uint64().toString(); - break; - case /* uint64 month_fee_sum */ 4: - message.monthFeeSum = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated lnrpc.ChannelFeeReport channel_fees = 1; */ - for (let i = 0; i < message.channelFees.length; i++) - exports.ChannelFeeReport.internalBinaryWrite(message.channelFees[i], writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* uint64 day_fee_sum = 2; */ - if (message.dayFeeSum !== "0") - writer.tag(2, runtime_1.WireType.Varint).uint64(message.dayFeeSum); - /* uint64 week_fee_sum = 3; */ - if (message.weekFeeSum !== "0") - writer.tag(3, runtime_1.WireType.Varint).uint64(message.weekFeeSum); - /* uint64 month_fee_sum = 4; */ - if (message.monthFeeSum !== "0") - writer.tag(4, runtime_1.WireType.Varint).uint64(message.monthFeeSum); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FeeReportResponse - */ -exports.FeeReportResponse = new FeeReportResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PolicyUpdateRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.PolicyUpdateRequest", [ - { no: 1, name: "global", kind: "scalar", oneof: "scope", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "chan_point", kind: "message", oneof: "scope", T: () => exports.ChannelPoint }, - { no: 3, name: "base_fee_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/ }, - { no: 4, name: "fee_rate", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ }, - { no: 5, name: "time_lock_delta", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 6, name: "max_htlc_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 7, name: "min_htlc_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 8, name: "min_htlc_msat_specified", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { scope: { oneofKind: undefined }, baseFeeMsat: "0", feeRate: 0, timeLockDelta: 0, maxHtlcMsat: "0", minHtlcMsat: "0", minHtlcMsatSpecified: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool global */ 1: - message.scope = { - oneofKind: "global", - global: reader.bool() - }; - break; - case /* lnrpc.ChannelPoint chan_point */ 2: - message.scope = { - oneofKind: "chanPoint", - chanPoint: exports.ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.scope.chanPoint) - }; - break; - case /* int64 base_fee_msat */ 3: - message.baseFeeMsat = reader.int64().toString(); - break; - case /* double fee_rate */ 4: - message.feeRate = reader.double(); - break; - case /* uint32 time_lock_delta */ 5: - message.timeLockDelta = reader.uint32(); - break; - case /* uint64 max_htlc_msat */ 6: - message.maxHtlcMsat = reader.uint64().toString(); - break; - case /* uint64 min_htlc_msat */ 7: - message.minHtlcMsat = reader.uint64().toString(); - break; - case /* bool min_htlc_msat_specified */ 8: - message.minHtlcMsatSpecified = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bool global = 1; */ - if (message.scope.oneofKind === "global") - writer.tag(1, runtime_1.WireType.Varint).bool(message.scope.global); - /* lnrpc.ChannelPoint chan_point = 2; */ - if (message.scope.oneofKind === "chanPoint") - exports.ChannelPoint.internalBinaryWrite(message.scope.chanPoint, writer.tag(2, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* int64 base_fee_msat = 3; */ - if (message.baseFeeMsat !== "0") - writer.tag(3, runtime_1.WireType.Varint).int64(message.baseFeeMsat); - /* double fee_rate = 4; */ - if (message.feeRate !== 0) - writer.tag(4, runtime_1.WireType.Bit64).double(message.feeRate); - /* uint32 time_lock_delta = 5; */ - if (message.timeLockDelta !== 0) - writer.tag(5, runtime_1.WireType.Varint).uint32(message.timeLockDelta); - /* uint64 max_htlc_msat = 6; */ - if (message.maxHtlcMsat !== "0") - writer.tag(6, runtime_1.WireType.Varint).uint64(message.maxHtlcMsat); - /* uint64 min_htlc_msat = 7; */ - if (message.minHtlcMsat !== "0") - writer.tag(7, runtime_1.WireType.Varint).uint64(message.minHtlcMsat); - /* bool min_htlc_msat_specified = 8; */ - if (message.minHtlcMsatSpecified !== false) - writer.tag(8, runtime_1.WireType.Varint).bool(message.minHtlcMsatSpecified); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PolicyUpdateRequest - */ -exports.PolicyUpdateRequest = new PolicyUpdateRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PolicyUpdateResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.PolicyUpdateResponse", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PolicyUpdateResponse - */ -exports.PolicyUpdateResponse = new PolicyUpdateResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ForwardingHistoryRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ForwardingHistoryRequest", [ - { no: 1, name: "start_time", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "end_time", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 3, name: "index_offset", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 4, name: "num_max_events", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value) { - const message = { startTime: "0", endTime: "0", indexOffset: 0, numMaxEvents: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 start_time */ 1: - message.startTime = reader.uint64().toString(); - break; - case /* uint64 end_time */ 2: - message.endTime = reader.uint64().toString(); - break; - case /* uint32 index_offset */ 3: - message.indexOffset = reader.uint32(); - break; - case /* uint32 num_max_events */ 4: - message.numMaxEvents = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint64 start_time = 1; */ - if (message.startTime !== "0") - writer.tag(1, runtime_1.WireType.Varint).uint64(message.startTime); - /* uint64 end_time = 2; */ - if (message.endTime !== "0") - writer.tag(2, runtime_1.WireType.Varint).uint64(message.endTime); - /* uint32 index_offset = 3; */ - if (message.indexOffset !== 0) - writer.tag(3, runtime_1.WireType.Varint).uint32(message.indexOffset); - /* uint32 num_max_events = 4; */ - if (message.numMaxEvents !== 0) - writer.tag(4, runtime_1.WireType.Varint).uint32(message.numMaxEvents); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ForwardingHistoryRequest - */ -exports.ForwardingHistoryRequest = new ForwardingHistoryRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ForwardingEvent$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ForwardingEvent", [ - { no: 1, name: "timestamp", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "chan_id_in", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 4, name: "chan_id_out", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 5, name: "amt_in", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 6, name: "amt_out", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 7, name: "fee", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 8, name: "fee_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 9, name: "amt_in_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 10, name: "amt_out_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 11, name: "timestamp_ns", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { timestamp: "0", chanIdIn: "0", chanIdOut: "0", amtIn: "0", amtOut: "0", fee: "0", feeMsat: "0", amtInMsat: "0", amtOutMsat: "0", timestampNs: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 timestamp = 1 [deprecated = true];*/ 1: - message.timestamp = reader.uint64().toString(); - break; - case /* uint64 chan_id_in = 2 [jstype = JS_STRING];*/ 2: - message.chanIdIn = reader.uint64().toString(); - break; - case /* uint64 chan_id_out = 4 [jstype = JS_STRING];*/ 4: - message.chanIdOut = reader.uint64().toString(); - break; - case /* uint64 amt_in */ 5: - message.amtIn = reader.uint64().toString(); - break; - case /* uint64 amt_out */ 6: - message.amtOut = reader.uint64().toString(); - break; - case /* uint64 fee */ 7: - message.fee = reader.uint64().toString(); - break; - case /* uint64 fee_msat */ 8: - message.feeMsat = reader.uint64().toString(); - break; - case /* uint64 amt_in_msat */ 9: - message.amtInMsat = reader.uint64().toString(); - break; - case /* uint64 amt_out_msat */ 10: - message.amtOutMsat = reader.uint64().toString(); - break; - case /* uint64 timestamp_ns */ 11: - message.timestampNs = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint64 timestamp = 1 [deprecated = true]; */ - if (message.timestamp !== "0") - writer.tag(1, runtime_1.WireType.Varint).uint64(message.timestamp); - /* uint64 chan_id_in = 2 [jstype = JS_STRING]; */ - if (message.chanIdIn !== "0") - writer.tag(2, runtime_1.WireType.Varint).uint64(message.chanIdIn); - /* uint64 chan_id_out = 4 [jstype = JS_STRING]; */ - if (message.chanIdOut !== "0") - writer.tag(4, runtime_1.WireType.Varint).uint64(message.chanIdOut); - /* uint64 amt_in = 5; */ - if (message.amtIn !== "0") - writer.tag(5, runtime_1.WireType.Varint).uint64(message.amtIn); - /* uint64 amt_out = 6; */ - if (message.amtOut !== "0") - writer.tag(6, runtime_1.WireType.Varint).uint64(message.amtOut); - /* uint64 fee = 7; */ - if (message.fee !== "0") - writer.tag(7, runtime_1.WireType.Varint).uint64(message.fee); - /* uint64 fee_msat = 8; */ - if (message.feeMsat !== "0") - writer.tag(8, runtime_1.WireType.Varint).uint64(message.feeMsat); - /* uint64 amt_in_msat = 9; */ - if (message.amtInMsat !== "0") - writer.tag(9, runtime_1.WireType.Varint).uint64(message.amtInMsat); - /* uint64 amt_out_msat = 10; */ - if (message.amtOutMsat !== "0") - writer.tag(10, runtime_1.WireType.Varint).uint64(message.amtOutMsat); - /* uint64 timestamp_ns = 11; */ - if (message.timestampNs !== "0") - writer.tag(11, runtime_1.WireType.Varint).uint64(message.timestampNs); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ForwardingEvent - */ -exports.ForwardingEvent = new ForwardingEvent$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ForwardingHistoryResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ForwardingHistoryResponse", [ - { no: 1, name: "forwarding_events", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.ForwardingEvent }, - { no: 2, name: "last_offset_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value) { - const message = { forwardingEvents: [], lastOffsetIndex: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.ForwardingEvent forwarding_events */ 1: - message.forwardingEvents.push(exports.ForwardingEvent.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* uint32 last_offset_index */ 2: - message.lastOffsetIndex = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated lnrpc.ForwardingEvent forwarding_events = 1; */ - for (let i = 0; i < message.forwardingEvents.length; i++) - exports.ForwardingEvent.internalBinaryWrite(message.forwardingEvents[i], writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* uint32 last_offset_index = 2; */ - if (message.lastOffsetIndex !== 0) - writer.tag(2, runtime_1.WireType.Varint).uint32(message.lastOffsetIndex); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ForwardingHistoryResponse - */ -exports.ForwardingHistoryResponse = new ForwardingHistoryResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ExportChannelBackupRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ExportChannelBackupRequest", [ - { no: 1, name: "chan_point", kind: "message", T: () => exports.ChannelPoint } - ]); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ChannelPoint chan_point */ 1: - message.chanPoint = exports.ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.chanPoint); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.ChannelPoint chan_point = 1; */ - if (message.chanPoint) - exports.ChannelPoint.internalBinaryWrite(message.chanPoint, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ExportChannelBackupRequest - */ -exports.ExportChannelBackupRequest = new ExportChannelBackupRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelBackup$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelBackup", [ - { no: 1, name: "chan_point", kind: "message", T: () => exports.ChannelPoint }, - { no: 2, name: "chan_backup", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { chanBackup: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ChannelPoint chan_point */ 1: - message.chanPoint = exports.ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.chanPoint); - break; - case /* bytes chan_backup */ 2: - message.chanBackup = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.ChannelPoint chan_point = 1; */ - if (message.chanPoint) - exports.ChannelPoint.internalBinaryWrite(message.chanPoint, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* bytes chan_backup = 2; */ - if (message.chanBackup.length) - writer.tag(2, runtime_1.WireType.LengthDelimited).bytes(message.chanBackup); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelBackup - */ -exports.ChannelBackup = new ChannelBackup$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class MultiChanBackup$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.MultiChanBackup", [ - { no: 1, name: "chan_points", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.ChannelPoint }, - { no: 2, name: "multi_chan_backup", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { chanPoints: [], multiChanBackup: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.ChannelPoint chan_points */ 1: - message.chanPoints.push(exports.ChannelPoint.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* bytes multi_chan_backup */ 2: - message.multiChanBackup = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated lnrpc.ChannelPoint chan_points = 1; */ - for (let i = 0; i < message.chanPoints.length; i++) - exports.ChannelPoint.internalBinaryWrite(message.chanPoints[i], writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* bytes multi_chan_backup = 2; */ - if (message.multiChanBackup.length) - writer.tag(2, runtime_1.WireType.LengthDelimited).bytes(message.multiChanBackup); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.MultiChanBackup - */ -exports.MultiChanBackup = new MultiChanBackup$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChanBackupExportRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChanBackupExportRequest", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChanBackupExportRequest - */ -exports.ChanBackupExportRequest = new ChanBackupExportRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChanBackupSnapshot$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChanBackupSnapshot", [ - { no: 1, name: "single_chan_backups", kind: "message", T: () => exports.ChannelBackups }, - { no: 2, name: "multi_chan_backup", kind: "message", T: () => exports.MultiChanBackup } - ]); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ChannelBackups single_chan_backups */ 1: - message.singleChanBackups = exports.ChannelBackups.internalBinaryRead(reader, reader.uint32(), options, message.singleChanBackups); - break; - case /* lnrpc.MultiChanBackup multi_chan_backup */ 2: - message.multiChanBackup = exports.MultiChanBackup.internalBinaryRead(reader, reader.uint32(), options, message.multiChanBackup); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.ChannelBackups single_chan_backups = 1; */ - if (message.singleChanBackups) - exports.ChannelBackups.internalBinaryWrite(message.singleChanBackups, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.MultiChanBackup multi_chan_backup = 2; */ - if (message.multiChanBackup) - exports.MultiChanBackup.internalBinaryWrite(message.multiChanBackup, writer.tag(2, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChanBackupSnapshot - */ -exports.ChanBackupSnapshot = new ChanBackupSnapshot$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelBackups$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelBackups", [ - { no: 1, name: "chan_backups", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.ChannelBackup } - ]); - } - create(value) { - const message = { chanBackups: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.ChannelBackup chan_backups */ 1: - message.chanBackups.push(exports.ChannelBackup.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated lnrpc.ChannelBackup chan_backups = 1; */ - for (let i = 0; i < message.chanBackups.length; i++) - exports.ChannelBackup.internalBinaryWrite(message.chanBackups[i], writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelBackups - */ -exports.ChannelBackups = new ChannelBackups$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class RestoreChanBackupRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.RestoreChanBackupRequest", [ - { no: 1, name: "chan_backups", kind: "message", oneof: "backup", T: () => exports.ChannelBackups }, - { no: 2, name: "multi_chan_backup", kind: "scalar", oneof: "backup", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { backup: { oneofKind: undefined } }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ChannelBackups chan_backups */ 1: - message.backup = { - oneofKind: "chanBackups", - chanBackups: exports.ChannelBackups.internalBinaryRead(reader, reader.uint32(), options, message.backup.chanBackups) - }; - break; - case /* bytes multi_chan_backup */ 2: - message.backup = { - oneofKind: "multiChanBackup", - multiChanBackup: reader.bytes() - }; - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.ChannelBackups chan_backups = 1; */ - if (message.backup.oneofKind === "chanBackups") - exports.ChannelBackups.internalBinaryWrite(message.backup.chanBackups, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* bytes multi_chan_backup = 2; */ - if (message.backup.oneofKind === "multiChanBackup") - writer.tag(2, runtime_1.WireType.LengthDelimited).bytes(message.backup.multiChanBackup); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.RestoreChanBackupRequest - */ -exports.RestoreChanBackupRequest = new RestoreChanBackupRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class RestoreBackupResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.RestoreBackupResponse", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.RestoreBackupResponse - */ -exports.RestoreBackupResponse = new RestoreBackupResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelBackupSubscription$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelBackupSubscription", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelBackupSubscription - */ -exports.ChannelBackupSubscription = new ChannelBackupSubscription$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class VerifyChanBackupResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.VerifyChanBackupResponse", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.VerifyChanBackupResponse - */ -exports.VerifyChanBackupResponse = new VerifyChanBackupResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class MacaroonPermission$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.MacaroonPermission", [ - { no: 1, name: "entity", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "action", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { entity: "", action: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string entity */ 1: - message.entity = reader.string(); - break; - case /* string action */ 2: - message.action = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string entity = 1; */ - if (message.entity !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.entity); - /* string action = 2; */ - if (message.action !== "") - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.action); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.MacaroonPermission - */ -exports.MacaroonPermission = new MacaroonPermission$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class BakeMacaroonRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.BakeMacaroonRequest", [ - { no: 1, name: "permissions", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.MacaroonPermission }, - { no: 2, name: "root_key_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { permissions: [], rootKeyId: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.MacaroonPermission permissions */ 1: - message.permissions.push(exports.MacaroonPermission.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* uint64 root_key_id */ 2: - message.rootKeyId = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated lnrpc.MacaroonPermission permissions = 1; */ - for (let i = 0; i < message.permissions.length; i++) - exports.MacaroonPermission.internalBinaryWrite(message.permissions[i], writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* uint64 root_key_id = 2; */ - if (message.rootKeyId !== "0") - writer.tag(2, runtime_1.WireType.Varint).uint64(message.rootKeyId); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.BakeMacaroonRequest - */ -exports.BakeMacaroonRequest = new BakeMacaroonRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class BakeMacaroonResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.BakeMacaroonResponse", [ - { no: 1, name: "macaroon", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { macaroon: "" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string macaroon */ 1: - message.macaroon = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string macaroon = 1; */ - if (message.macaroon !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.macaroon); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.BakeMacaroonResponse - */ -exports.BakeMacaroonResponse = new BakeMacaroonResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListMacaroonIDsRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ListMacaroonIDsRequest", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListMacaroonIDsRequest - */ -exports.ListMacaroonIDsRequest = new ListMacaroonIDsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListMacaroonIDsResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ListMacaroonIDsResponse", [ - { no: 1, name: "root_key_ids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { rootKeyIds: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated uint64 root_key_ids */ 1: - if (wireType === runtime_1.WireType.LengthDelimited) - for (let e = reader.int32() + reader.pos; reader.pos < e;) - message.rootKeyIds.push(reader.uint64().toString()); - else - message.rootKeyIds.push(reader.uint64().toString()); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated uint64 root_key_ids = 1; */ - if (message.rootKeyIds.length) { - writer.tag(1, runtime_1.WireType.LengthDelimited).fork(); - for (let i = 0; i < message.rootKeyIds.length; i++) - writer.uint64(message.rootKeyIds[i]); - writer.join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListMacaroonIDsResponse - */ -exports.ListMacaroonIDsResponse = new ListMacaroonIDsResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class DeleteMacaroonIDRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.DeleteMacaroonIDRequest", [ - { no: 1, name: "root_key_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value) { - const message = { rootKeyId: "0" }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 root_key_id */ 1: - message.rootKeyId = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* uint64 root_key_id = 1; */ - if (message.rootKeyId !== "0") - writer.tag(1, runtime_1.WireType.Varint).uint64(message.rootKeyId); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.DeleteMacaroonIDRequest - */ -exports.DeleteMacaroonIDRequest = new DeleteMacaroonIDRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class DeleteMacaroonIDResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.DeleteMacaroonIDResponse", [ - { no: 1, name: "deleted", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value) { - const message = { deleted: false }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool deleted */ 1: - message.deleted = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bool deleted = 1; */ - if (message.deleted !== false) - writer.tag(1, runtime_1.WireType.Varint).bool(message.deleted); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.DeleteMacaroonIDResponse - */ -exports.DeleteMacaroonIDResponse = new DeleteMacaroonIDResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class MacaroonPermissionList$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.MacaroonPermissionList", [ - { no: 1, name: "permissions", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.MacaroonPermission } - ]); - } - create(value) { - const message = { permissions: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.MacaroonPermission permissions */ 1: - message.permissions.push(exports.MacaroonPermission.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* repeated lnrpc.MacaroonPermission permissions = 1; */ - for (let i = 0; i < message.permissions.length; i++) - exports.MacaroonPermission.internalBinaryWrite(message.permissions[i], writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.MacaroonPermissionList - */ -exports.MacaroonPermissionList = new MacaroonPermissionList$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListPermissionsRequest$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ListPermissionsRequest", []); - } - create(value) { - const message = {}; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - return target !== null && target !== void 0 ? target : this.create(); - } - internalBinaryWrite(message, writer, options) { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListPermissionsRequest - */ -exports.ListPermissionsRequest = new ListPermissionsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListPermissionsResponse$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ListPermissionsResponse", [ - { no: 1, name: "method_permissions", kind: "map", K: 9 /*ScalarType.STRING*/, V: { kind: "message", T: () => exports.MacaroonPermissionList } } - ]); - } - create(value) { - const message = { methodPermissions: {} }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* map method_permissions */ 1: - this.binaryReadMap1(message.methodPermissions, reader, options); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - binaryReadMap1(map, reader, options) { - let len = reader.uint32(), end = reader.pos + len, key, val; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.string(); - break; - case 2: - val = exports.MacaroonPermissionList.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.ListPermissionsResponse.method_permissions"); - } - } - map[key !== null && key !== void 0 ? key : ""] = val !== null && val !== void 0 ? val : exports.MacaroonPermissionList.create(); - } - internalBinaryWrite(message, writer, options) { - /* map method_permissions = 1; */ - for (let k of Object.keys(message.methodPermissions)) { - writer.tag(1, runtime_1.WireType.LengthDelimited).fork().tag(1, runtime_1.WireType.LengthDelimited).string(k); - writer.tag(2, runtime_1.WireType.LengthDelimited).fork(); - exports.MacaroonPermissionList.internalBinaryWrite(message.methodPermissions[k], writer, options); - writer.join().join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListPermissionsResponse - */ -exports.ListPermissionsResponse = new ListPermissionsResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Failure$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.Failure", [ - { no: 1, name: "code", kind: "enum", T: () => ["lnrpc.Failure.FailureCode", Failure_FailureCode] }, - { no: 3, name: "channel_update", kind: "message", T: () => exports.ChannelUpdate }, - { no: 4, name: "htlc_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 5, name: "onion_sha_256", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 6, name: "cltv_expiry", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 7, name: "flags", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 8, name: "failure_source_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 9, name: "height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value) { - const message = { code: 0, htlcMsat: "0", onionSha256: new Uint8Array(0), cltvExpiry: 0, flags: 0, failureSourceIndex: 0, height: 0 }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.Failure.FailureCode code */ 1: - message.code = reader.int32(); - break; - case /* lnrpc.ChannelUpdate channel_update */ 3: - message.channelUpdate = exports.ChannelUpdate.internalBinaryRead(reader, reader.uint32(), options, message.channelUpdate); - break; - case /* uint64 htlc_msat */ 4: - message.htlcMsat = reader.uint64().toString(); - break; - case /* bytes onion_sha_256 */ 5: - message.onionSha256 = reader.bytes(); - break; - case /* uint32 cltv_expiry */ 6: - message.cltvExpiry = reader.uint32(); - break; - case /* uint32 flags */ 7: - message.flags = reader.uint32(); - break; - case /* uint32 failure_source_index */ 8: - message.failureSourceIndex = reader.uint32(); - break; - case /* uint32 height */ 9: - message.height = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* lnrpc.Failure.FailureCode code = 1; */ - if (message.code !== 0) - writer.tag(1, runtime_1.WireType.Varint).int32(message.code); - /* lnrpc.ChannelUpdate channel_update = 3; */ - if (message.channelUpdate) - exports.ChannelUpdate.internalBinaryWrite(message.channelUpdate, writer.tag(3, runtime_1.WireType.LengthDelimited).fork(), options).join(); - /* uint64 htlc_msat = 4; */ - if (message.htlcMsat !== "0") - writer.tag(4, runtime_1.WireType.Varint).uint64(message.htlcMsat); - /* bytes onion_sha_256 = 5; */ - if (message.onionSha256.length) - writer.tag(5, runtime_1.WireType.LengthDelimited).bytes(message.onionSha256); - /* uint32 cltv_expiry = 6; */ - if (message.cltvExpiry !== 0) - writer.tag(6, runtime_1.WireType.Varint).uint32(message.cltvExpiry); - /* uint32 flags = 7; */ - if (message.flags !== 0) - writer.tag(7, runtime_1.WireType.Varint).uint32(message.flags); - /* uint32 failure_source_index = 8; */ - if (message.failureSourceIndex !== 0) - writer.tag(8, runtime_1.WireType.Varint).uint32(message.failureSourceIndex); - /* uint32 height = 9; */ - if (message.height !== 0) - writer.tag(9, runtime_1.WireType.Varint).uint32(message.height); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Failure - */ -exports.Failure = new Failure$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelUpdate$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.ChannelUpdate", [ - { no: 1, name: "signature", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "chain_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 4, name: "timestamp", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 10, name: "message_flags", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "channel_flags", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 6, name: "time_lock_delta", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 7, name: "htlc_minimum_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 8, name: "base_fee", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 9, name: "fee_rate", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 11, name: "htlc_maximum_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 12, name: "extra_opaque_data", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value) { - const message = { signature: new Uint8Array(0), chainHash: new Uint8Array(0), chanId: "0", timestamp: 0, messageFlags: 0, channelFlags: 0, timeLockDelta: 0, htlcMinimumMsat: "0", baseFee: 0, feeRate: 0, htlcMaximumMsat: "0", extraOpaqueData: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes signature */ 1: - message.signature = reader.bytes(); - break; - case /* bytes chain_hash */ 2: - message.chainHash = reader.bytes(); - break; - case /* uint64 chan_id = 3 [jstype = JS_STRING];*/ 3: - message.chanId = reader.uint64().toString(); - break; - case /* uint32 timestamp */ 4: - message.timestamp = reader.uint32(); - break; - case /* uint32 message_flags */ 10: - message.messageFlags = reader.uint32(); - break; - case /* uint32 channel_flags */ 5: - message.channelFlags = reader.uint32(); - break; - case /* uint32 time_lock_delta */ 6: - message.timeLockDelta = reader.uint32(); - break; - case /* uint64 htlc_minimum_msat */ 7: - message.htlcMinimumMsat = reader.uint64().toString(); - break; - case /* uint32 base_fee */ 8: - message.baseFee = reader.uint32(); - break; - case /* uint32 fee_rate */ 9: - message.feeRate = reader.uint32(); - break; - case /* uint64 htlc_maximum_msat */ 11: - message.htlcMaximumMsat = reader.uint64().toString(); - break; - case /* bytes extra_opaque_data */ 12: - message.extraOpaqueData = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes signature = 1; */ - if (message.signature.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.signature); - /* bytes chain_hash = 2; */ - if (message.chainHash.length) - writer.tag(2, runtime_1.WireType.LengthDelimited).bytes(message.chainHash); - /* uint64 chan_id = 3 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(3, runtime_1.WireType.Varint).uint64(message.chanId); - /* uint32 timestamp = 4; */ - if (message.timestamp !== 0) - writer.tag(4, runtime_1.WireType.Varint).uint32(message.timestamp); - /* uint32 message_flags = 10; */ - if (message.messageFlags !== 0) - writer.tag(10, runtime_1.WireType.Varint).uint32(message.messageFlags); - /* uint32 channel_flags = 5; */ - if (message.channelFlags !== 0) - writer.tag(5, runtime_1.WireType.Varint).uint32(message.channelFlags); - /* uint32 time_lock_delta = 6; */ - if (message.timeLockDelta !== 0) - writer.tag(6, runtime_1.WireType.Varint).uint32(message.timeLockDelta); - /* uint64 htlc_minimum_msat = 7; */ - if (message.htlcMinimumMsat !== "0") - writer.tag(7, runtime_1.WireType.Varint).uint64(message.htlcMinimumMsat); - /* uint32 base_fee = 8; */ - if (message.baseFee !== 0) - writer.tag(8, runtime_1.WireType.Varint).uint32(message.baseFee); - /* uint32 fee_rate = 9; */ - if (message.feeRate !== 0) - writer.tag(9, runtime_1.WireType.Varint).uint32(message.feeRate); - /* uint64 htlc_maximum_msat = 11; */ - if (message.htlcMaximumMsat !== "0") - writer.tag(11, runtime_1.WireType.Varint).uint64(message.htlcMaximumMsat); - /* bytes extra_opaque_data = 12; */ - if (message.extraOpaqueData.length) - writer.tag(12, runtime_1.WireType.LengthDelimited).bytes(message.extraOpaqueData); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelUpdate - */ -exports.ChannelUpdate = new ChannelUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class MacaroonId$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.MacaroonId", [ - { no: 1, name: "nonce", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "storageId", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "ops", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.Op } - ]); - } - create(value) { - const message = { nonce: new Uint8Array(0), storageId: new Uint8Array(0), ops: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes nonce */ 1: - message.nonce = reader.bytes(); - break; - case /* bytes storageId */ 2: - message.storageId = reader.bytes(); - break; - case /* repeated lnrpc.Op ops */ 3: - message.ops.push(exports.Op.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* bytes nonce = 1; */ - if (message.nonce.length) - writer.tag(1, runtime_1.WireType.LengthDelimited).bytes(message.nonce); - /* bytes storageId = 2; */ - if (message.storageId.length) - writer.tag(2, runtime_1.WireType.LengthDelimited).bytes(message.storageId); - /* repeated lnrpc.Op ops = 3; */ - for (let i = 0; i < message.ops.length; i++) - exports.Op.internalBinaryWrite(message.ops[i], writer.tag(3, runtime_1.WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.MacaroonId - */ -exports.MacaroonId = new MacaroonId$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Op$Type extends runtime_5.MessageType { - constructor() { - super("lnrpc.Op", [ - { no: 1, name: "entity", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "actions", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value) { - const message = { entity: "", actions: [] }; - globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - (0, runtime_3.reflectionMergePartial)(this, message, value); - return message; - } - internalBinaryRead(reader, length, options, target) { - let message = target !== null && target !== void 0 ? target : this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string entity */ 1: - message.entity = reader.string(); - break; - case /* repeated string actions */ 2: - message.actions.push(reader.string()); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message, writer, options) { - /* string entity = 1; */ - if (message.entity !== "") - writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.entity); - /* repeated string actions = 2; */ - for (let i = 0; i < message.actions.length; i++) - writer.tag(2, runtime_1.WireType.LengthDelimited).string(message.actions[i]); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Op - */ -exports.Op = new Op$Type(); -/** - * @generated ServiceType for protobuf service lnrpc.Lightning - */ -exports.Lightning = new runtime_rpc_1.ServiceType("lnrpc.Lightning", [ - { name: "WalletBalance", options: {}, I: exports.WalletBalanceRequest, O: exports.WalletBalanceResponse }, - { name: "ChannelBalance", options: {}, I: exports.ChannelBalanceRequest, O: exports.ChannelBalanceResponse }, - { name: "GetTransactions", options: {}, I: exports.GetTransactionsRequest, O: exports.TransactionDetails }, - { name: "EstimateFee", options: {}, I: exports.EstimateFeeRequest, O: exports.EstimateFeeResponse }, - { name: "SendCoins", options: {}, I: exports.SendCoinsRequest, O: exports.SendCoinsResponse }, - { name: "ListUnspent", options: {}, I: exports.ListUnspentRequest, O: exports.ListUnspentResponse }, - { name: "SubscribeTransactions", serverStreaming: true, options: {}, I: exports.GetTransactionsRequest, O: exports.Transaction }, - { name: "SendMany", options: {}, I: exports.SendManyRequest, O: exports.SendManyResponse }, - { name: "NewAddress", options: {}, I: exports.NewAddressRequest, O: exports.NewAddressResponse }, - { name: "SignMessage", options: {}, I: exports.SignMessageRequest, O: exports.SignMessageResponse }, - { name: "VerifyMessage", options: {}, I: exports.VerifyMessageRequest, O: exports.VerifyMessageResponse }, - { name: "ConnectPeer", options: {}, I: exports.ConnectPeerRequest, O: exports.ConnectPeerResponse }, - { name: "DisconnectPeer", options: {}, I: exports.DisconnectPeerRequest, O: exports.DisconnectPeerResponse }, - { name: "ListPeers", options: {}, I: exports.ListPeersRequest, O: exports.ListPeersResponse }, - { name: "SubscribePeerEvents", serverStreaming: true, options: {}, I: exports.PeerEventSubscription, O: exports.PeerEvent }, - { name: "GetInfo", options: {}, I: exports.GetInfoRequest, O: exports.GetInfoResponse }, - { name: "GetRecoveryInfo", options: {}, I: exports.GetRecoveryInfoRequest, O: exports.GetRecoveryInfoResponse }, - { name: "PendingChannels", options: {}, I: exports.PendingChannelsRequest, O: exports.PendingChannelsResponse }, - { name: "ListChannels", options: {}, I: exports.ListChannelsRequest, O: exports.ListChannelsResponse }, - { name: "SubscribeChannelEvents", serverStreaming: true, options: {}, I: exports.ChannelEventSubscription, O: exports.ChannelEventUpdate }, - { name: "ClosedChannels", options: {}, I: exports.ClosedChannelsRequest, O: exports.ClosedChannelsResponse }, - { name: "OpenChannelSync", options: {}, I: exports.OpenChannelRequest, O: exports.ChannelPoint }, - { name: "OpenChannel", serverStreaming: true, options: {}, I: exports.OpenChannelRequest, O: exports.OpenStatusUpdate }, - { name: "FundingStateStep", options: {}, I: exports.FundingTransitionMsg, O: exports.FundingStateStepResp }, - { name: "ChannelAcceptor", serverStreaming: true, clientStreaming: true, options: {}, I: exports.ChannelAcceptResponse, O: exports.ChannelAcceptRequest }, - { name: "CloseChannel", serverStreaming: true, options: {}, I: exports.CloseChannelRequest, O: exports.CloseStatusUpdate }, - { name: "AbandonChannel", options: {}, I: exports.AbandonChannelRequest, O: exports.AbandonChannelResponse }, - { name: "SendPayment", serverStreaming: true, clientStreaming: true, options: {}, I: exports.SendRequest, O: exports.SendResponse }, - { name: "SendPaymentSync", options: {}, I: exports.SendRequest, O: exports.SendResponse }, - { name: "SendToRoute", serverStreaming: true, clientStreaming: true, options: {}, I: exports.SendToRouteRequest, O: exports.SendResponse }, - { name: "SendToRouteSync", options: {}, I: exports.SendToRouteRequest, O: exports.SendResponse }, - { name: "AddInvoice", options: {}, I: exports.Invoice, O: exports.AddInvoiceResponse }, - { name: "ListInvoices", options: {}, I: exports.ListInvoiceRequest, O: exports.ListInvoiceResponse }, - { name: "LookupInvoice", options: {}, I: exports.PaymentHash, O: exports.Invoice }, - { name: "SubscribeInvoices", serverStreaming: true, options: {}, I: exports.InvoiceSubscription, O: exports.Invoice }, - { name: "DecodePayReq", options: {}, I: exports.PayReqString, O: exports.PayReq }, - { name: "ListPayments", options: {}, I: exports.ListPaymentsRequest, O: exports.ListPaymentsResponse }, - { name: "DeleteAllPayments", options: {}, I: exports.DeleteAllPaymentsRequest, O: exports.DeleteAllPaymentsResponse }, - { name: "DescribeGraph", options: {}, I: exports.ChannelGraphRequest, O: exports.ChannelGraph }, - { name: "GetNodeMetrics", options: {}, I: exports.NodeMetricsRequest, O: exports.NodeMetricsResponse }, - { name: "GetChanInfo", options: {}, I: exports.ChanInfoRequest, O: exports.ChannelEdge }, - { name: "GetNodeInfo", options: {}, I: exports.NodeInfoRequest, O: exports.NodeInfo }, - { name: "QueryRoutes", options: {}, I: exports.QueryRoutesRequest, O: exports.QueryRoutesResponse }, - { name: "GetNetworkInfo", options: {}, I: exports.NetworkInfoRequest, O: exports.NetworkInfo }, - { name: "StopDaemon", options: {}, I: exports.StopRequest, O: exports.StopResponse }, - { name: "SubscribeChannelGraph", serverStreaming: true, options: {}, I: exports.GraphTopologySubscription, O: exports.GraphTopologyUpdate }, - { name: "DebugLevel", options: {}, I: exports.DebugLevelRequest, O: exports.DebugLevelResponse }, - { name: "FeeReport", options: {}, I: exports.FeeReportRequest, O: exports.FeeReportResponse }, - { name: "UpdateChannelPolicy", options: {}, I: exports.PolicyUpdateRequest, O: exports.PolicyUpdateResponse }, - { name: "ForwardingHistory", options: {}, I: exports.ForwardingHistoryRequest, O: exports.ForwardingHistoryResponse }, - { name: "ExportChannelBackup", options: {}, I: exports.ExportChannelBackupRequest, O: exports.ChannelBackup }, - { name: "ExportAllChannelBackups", options: {}, I: exports.ChanBackupExportRequest, O: exports.ChanBackupSnapshot }, - { name: "VerifyChanBackup", options: {}, I: exports.ChanBackupSnapshot, O: exports.VerifyChanBackupResponse }, - { name: "RestoreChannelBackups", options: {}, I: exports.RestoreChanBackupRequest, O: exports.RestoreBackupResponse }, - { name: "SubscribeChannelBackups", serverStreaming: true, options: {}, I: exports.ChannelBackupSubscription, O: exports.ChanBackupSnapshot }, - { name: "BakeMacaroon", options: {}, I: exports.BakeMacaroonRequest, O: exports.BakeMacaroonResponse }, - { name: "ListMacaroonIDs", options: {}, I: exports.ListMacaroonIDsRequest, O: exports.ListMacaroonIDsResponse }, - { name: "DeleteMacaroonID", options: {}, I: exports.DeleteMacaroonIDRequest, O: exports.DeleteMacaroonIDResponse }, - { name: "ListPermissions", options: {}, I: exports.ListPermissionsRequest, O: exports.ListPermissionsResponse } -]); -//# sourceMappingURL=rpc.js.map \ No newline at end of file diff --git a/build/proto/lnd/rpc.js.map b/build/proto/lnd/rpc.js.map deleted file mode 100644 index 7eeed379..00000000 --- a/build/proto/lnd/rpc.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../../proto/lnd/rpc.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/build/src/auth.js b/build/src/auth.js deleted file mode 100644 index b256157b..00000000 --- a/build/src/auth.js +++ /dev/null @@ -1,19 +0,0 @@ -"use strict"; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const serverOptions = { - AdminAuthGuard: (authHeader) => __awaiter(void 0, void 0, void 0, function* () { console.log("admin auth login with header: " + authHeader); return { pub: "__pubkey__" }; }), - GuestAuthGuard: (authHeader) => __awaiter(void 0, void 0, void 0, function* () { console.log("guest auth login with header: " + authHeader); return { token: "__token__" }; }), - NoAuthAuthGuard: (_) => __awaiter(void 0, void 0, void 0, function* () { return ({}); }), - encryptionCallback: (_, b) => b -}; -exports.default = serverOptions; -//# sourceMappingURL=auth.js.map \ No newline at end of file diff --git a/build/src/auth.js.map b/build/src/auth.js.map deleted file mode 100644 index 8bf7d4e3..00000000 --- a/build/src/auth.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/auth.ts"],"names":[],"mappings":";;;;;;;;;;;AAEA,MAAM,aAAa,GAAkB;IACjC,cAAc,EAAE,CAAO,UAAU,EAAE,EAAE,kDAAG,OAAO,CAAC,GAAG,CAAC,gCAAgC,GAAG,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,CAAA,CAAC,CAAC,CAAA;IAClI,cAAc,EAAE,CAAO,UAAU,EAAE,EAAE,kDAAG,OAAO,CAAC,GAAG,CAAC,gCAAgC,GAAG,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA,CAAC,CAAC,CAAA;IACnI,eAAe,EAAE,CAAO,CAAC,EAAE,EAAE,kDAAC,OAAA,CAAC,EAAE,CAAC,CAAA,GAAA;IAClC,kBAAkB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;CAClC,CAAA;AACD,kBAAe,aAAa,CAAA"} \ No newline at end of file diff --git a/build/src/index.js b/build/src/index.js deleted file mode 100644 index 30d30e16..00000000 --- a/build/src/index.js +++ /dev/null @@ -1,9 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -require("dotenv/config"); -const server_1 = __importDefault(require("./server")); -server_1.default.Listen(3000); -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/src/index.js.map b/build/src/index.js.map deleted file mode 100644 index ed6340f7..00000000 --- a/build/src/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;AAAA,yBAAsB;AACtB,sDAA6B;AAG7B,gBAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA"} \ No newline at end of file diff --git a/build/src/index.spec.js b/build/src/index.spec.js deleted file mode 100644 index b7d4f9b0..00000000 --- a/build/src/index.spec.js +++ /dev/null @@ -1,85 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ServerTestSuite = void 0; -require("dotenv/config"); // TODO - test env -const testyts_1 = require("testyts"); -const express_server_1 = __importDefault(require("../proto/autogenerated/ts/express_server")); -const http_client_1 = __importDefault(require("../proto/autogenerated/ts/http_client")); -const main_1 = __importDefault(require("./services/main")); -const auth_1 = __importDefault(require("./auth")); -const testPort = 4000; -const server = (0, express_server_1.default)(main_1.default, Object.assign(Object.assign({}, auth_1.default), { throwErrors: true })); -const client = (0, http_client_1.default)({ - baseUrl: `http://localhost:${testPort}`, - retrieveAdminAuth: () => __awaiter(void 0, void 0, void 0, function* () { return (""); }), - retrieveGuestAuth: () => __awaiter(void 0, void 0, void 0, function* () { return (""); }), - retrieveNoAuthAuth: () => __awaiter(void 0, void 0, void 0, function* () { return (""); }), -}); -let ServerTestSuite = class ServerTestSuite { - startServer() { - server.Listen(testPort); - } - stopServer() { - server.Close(); - } - health() { - return __awaiter(this, void 0, void 0, function* () { - yield client.Health(); - }); - } - getInfo() { - return __awaiter(this, void 0, void 0, function* () { - console.log(yield client.LndGetInfo()); - }); - } -}; -__decorate([ - (0, testyts_1.BeforeAll)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", []), - __metadata("design:returntype", void 0) -], ServerTestSuite.prototype, "startServer", null); -__decorate([ - (0, testyts_1.AfterAll)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", []), - __metadata("design:returntype", void 0) -], ServerTestSuite.prototype, "stopServer", null); -__decorate([ - (0, testyts_1.Test)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", []), - __metadata("design:returntype", Promise) -], ServerTestSuite.prototype, "health", null); -__decorate([ - (0, testyts_1.Test)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", []), - __metadata("design:returntype", Promise) -], ServerTestSuite.prototype, "getInfo", null); -ServerTestSuite = __decorate([ - (0, testyts_1.TestSuite)() -], ServerTestSuite); -exports.ServerTestSuite = ServerTestSuite; -//# sourceMappingURL=index.spec.js.map \ No newline at end of file diff --git a/build/src/index.spec.js.map b/build/src/index.spec.js.map deleted file mode 100644 index be362d96..00000000 --- a/build/src/index.spec.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.spec.js","sourceRoot":"","sources":["../../src/index.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,yBAAsB,CAAC,kBAAkB;AACzC,qCAAuE;AACvE,8FAAgE;AAChE,wFAA6D;AAC7D,2DAAsC;AACtC,kDAAmC;AACnC,MAAM,QAAQ,GAAG,IAAI,CAAA;AACrB,MAAM,MAAM,GAAG,IAAA,wBAAS,EAAC,cAAO,kCAAO,cAAa,KAAE,WAAW,EAAE,IAAI,IAAG,CAAA;AAC1E,MAAM,MAAM,GAAG,IAAA,qBAAS,EAAC;IACrB,OAAO,EAAE,oBAAoB,QAAQ,EAAE;IACvC,iBAAiB,EAAE,GAAS,EAAE,kDAAC,OAAA,CAAC,EAAE,CAAC,CAAA,GAAA;IACnC,iBAAiB,EAAE,GAAS,EAAE,kDAAC,OAAA,CAAC,EAAE,CAAC,CAAA,GAAA;IACnC,kBAAkB,EAAE,GAAS,EAAE,kDAAC,OAAA,CAAC,EAAE,CAAC,CAAA,GAAA;CACvC,CAAC,CAAA;AAEF,IAAa,eAAe,GAA5B,MAAa,eAAe;IAExB,WAAW;QACP,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAC3B,CAAC;IAED,UAAU;QACN,MAAM,CAAC,KAAK,EAAE,CAAA;IAClB,CAAC;IAEK,MAAM;;YACR,MAAM,MAAM,CAAC,MAAM,EAAE,CAAA;QACzB,CAAC;KAAA;IAGK,OAAO;;YACT,OAAO,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC,CAAA;QAC1C,CAAC;KAAA;CACJ,CAAA;AAhBG;IADC,IAAA,mBAAS,GAAE;;;;kDAGX;AAED;IADC,IAAA,kBAAQ,GAAE;;;;iDAGV;AAED;IADC,IAAA,cAAI,GAAE;;;;6CAGN;AAGD;IADC,IAAA,cAAI,GAAE;;;;8CAGN;AAjBQ,eAAe;IAD3B,IAAA,mBAAS,GAAE;GACC,eAAe,CAkB3B;AAlBY,0CAAe"} \ No newline at end of file diff --git a/build/src/server.js b/build/src/server.js deleted file mode 100644 index 57b4b78d..00000000 --- a/build/src/server.js +++ /dev/null @@ -1,10 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const express_server_1 = __importDefault(require("../proto/autogenerated/ts/express_server")); -const main_1 = __importDefault(require("./services/main")); -const auth_1 = __importDefault(require("./auth")); -exports.default = (0, express_server_1.default)(main_1.default, auth_1.default); -//# sourceMappingURL=server.js.map \ No newline at end of file diff --git a/build/src/server.js.map b/build/src/server.js.map deleted file mode 100644 index d36a47fc..00000000 --- a/build/src/server.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":";;;;;AAAA,8FAAgE;AAChE,2DAAqC;AACrC,kDAAmC;AACnC,kBAAe,IAAA,wBAAS,EAAC,cAAO,EAAE,cAAa,CAAC,CAAA"} \ No newline at end of file diff --git a/build/src/server.spec.js b/build/src/server.spec.js deleted file mode 100644 index 6f591862..00000000 --- a/build/src/server.spec.js +++ /dev/null @@ -1,82 +0,0 @@ -"use strict"; -var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; -}; -var __metadata = (this && this.__metadata) || function (k, v) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); -}; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.ServerTestSuite = void 0; -require("dotenv/config"); // TODO - test env -const testyts_1 = require("testyts"); -const http_client_1 = __importDefault(require("../proto/autogenerated/ts/http_client")); -const server_1 = __importDefault(require("./server")); -const testPort = 4000; -const client = (0, http_client_1.default)({ - baseUrl: `http://localhost:${testPort}`, - retrieveAdminAuth: () => __awaiter(void 0, void 0, void 0, function* () { return (""); }), - retrieveGuestAuth: () => __awaiter(void 0, void 0, void 0, function* () { return (""); }), - retrieveNoAuthAuth: () => __awaiter(void 0, void 0, void 0, function* () { return (""); }), -}); -let ServerTestSuite = class ServerTestSuite { - startServer() { - server_1.default.Listen(testPort); - } - stopServer() { - server_1.default.Close(); - } - health() { - return __awaiter(this, void 0, void 0, function* () { - yield client.Health(); - }); - } - getInfo() { - return __awaiter(this, void 0, void 0, function* () { - console.log(yield client.LndGetInfo()); - }); - } -}; -__decorate([ - (0, testyts_1.BeforeAll)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", []), - __metadata("design:returntype", void 0) -], ServerTestSuite.prototype, "startServer", null); -__decorate([ - (0, testyts_1.AfterAll)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", []), - __metadata("design:returntype", void 0) -], ServerTestSuite.prototype, "stopServer", null); -__decorate([ - (0, testyts_1.Test)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", []), - __metadata("design:returntype", Promise) -], ServerTestSuite.prototype, "health", null); -__decorate([ - (0, testyts_1.Test)(), - __metadata("design:type", Function), - __metadata("design:paramtypes", []), - __metadata("design:returntype", Promise) -], ServerTestSuite.prototype, "getInfo", null); -ServerTestSuite = __decorate([ - (0, testyts_1.TestSuite)() -], ServerTestSuite); -exports.ServerTestSuite = ServerTestSuite; -//# sourceMappingURL=server.spec.js.map \ No newline at end of file diff --git a/build/src/server.spec.js.map b/build/src/server.spec.js.map deleted file mode 100644 index e3189b8a..00000000 --- a/build/src/server.spec.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"server.spec.js","sourceRoot":"","sources":["../../src/server.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,yBAAsB,CAAC,kBAAkB;AACzC,qCAAuE;AACvE,wFAA6D;AAC7D,sDAA8C;AAC9C,MAAM,QAAQ,GAAG,IAAI,CAAA;AACrB,MAAM,MAAM,GAAG,IAAA,qBAAS,EAAC;IACrB,OAAO,EAAE,oBAAoB,QAAQ,EAAE;IACvC,iBAAiB,EAAE,GAAS,EAAE,kDAAC,OAAA,CAAC,EAAE,CAAC,CAAA,GAAA;IACnC,iBAAiB,EAAE,GAAS,EAAE,kDAAC,OAAA,CAAC,EAAE,CAAC,CAAA,GAAA;IACnC,kBAAkB,EAAE,GAAS,EAAE,kDAAC,OAAA,CAAC,EAAE,CAAC,CAAA,GAAA;CACvC,CAAC,CAAA;AAEF,IAAa,eAAe,GAA5B,MAAa,eAAe;IAExB,WAAW;QACP,gBAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAC3B,CAAC;IAED,UAAU;QACN,gBAAM,CAAC,KAAK,EAAE,CAAA;IAClB,CAAC;IAEK,MAAM;;YACR,MAAM,MAAM,CAAC,MAAM,EAAE,CAAA;QACzB,CAAC;KAAA;IAGK,OAAO;;YACT,OAAO,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC,CAAA;QAC1C,CAAC;KAAA;CACJ,CAAA;AAhBG;IADC,IAAA,mBAAS,GAAE;;;;kDAGX;AAED;IADC,IAAA,kBAAQ,GAAE;;;;iDAGV;AAED;IADC,IAAA,cAAI,GAAE;;;;6CAGN;AAGD;IADC,IAAA,cAAI,GAAE;;;;8CAGN;AAjBQ,eAAe;IAD3B,IAAA,mBAAS,GAAE;GACC,eAAe,CAkB3B;AAlBY,0CAAe"} \ No newline at end of file diff --git a/build/src/services/lnd/index.js b/build/src/services/lnd/index.js deleted file mode 100644 index 14735f80..00000000 --- a/build/src/services/lnd/index.js +++ /dev/null @@ -1,45 +0,0 @@ -"use strict"; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -//const grpc = require('@grpc/grpc-js'); -const grpc_js_1 = require("@grpc/grpc-js"); -const grpc_transport_1 = require("@protobuf-ts/grpc-transport"); -const fs_1 = __importDefault(require("fs")); -const rpc_client_1 = require("../../../proto/lnd/rpc.client"); -const invoices_client_1 = require("../../../proto/lnd/invoices.client"); -const router_client_1 = require("../../../proto/lnd/router.client"); -const lndAddr = process.env.LND_ADDRESS; -const lndCertPath = process.env.LND_CERT_PATH; -const lndMacaroonPath = process.env.LND_MACAROON_PATH; -if (!lndAddr || !lndCertPath || !lndMacaroonPath) { - throw new Error(`Something missing from ADDR/TLS/MACAROON`); -} -const lndCert = fs_1.default.readFileSync(lndCertPath); -const macaroon = fs_1.default.readFileSync(lndMacaroonPath).toString('hex'); -const sslCreds = grpc_js_1.credentials.createSsl(lndCert); -const macaroonCreds = grpc_js_1.credentials.createFromMetadataGenerator(function (args, callback) { - let metadata = new grpc_js_1.Metadata(); - metadata.add('macaroon', macaroon); - callback(null, metadata); -}); -const creds = grpc_js_1.credentials.combineChannelCredentials(sslCreds, macaroonCreds); -const transport = new grpc_transport_1.GrpcTransport({ host: lndAddr, channelCredentials: creds }); -const lightning = new rpc_client_1.LightningClient(transport); -const invoices = new invoices_client_1.InvoicesClient(transport); -const router = new router_client_1.RouterClient(transport); -const DefaultMetadata = (deadline = 10 * 1000) => ({ deadline: Date.now() + deadline }); -exports.default = { - getInfo: () => __awaiter(void 0, void 0, void 0, function* () { return (yield lightning.getInfo({}, DefaultMetadata())).response; }) -}; -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/src/services/lnd/index.js.map b/build/src/services/lnd/index.js.map deleted file mode 100644 index 90514e48..00000000 --- a/build/src/services/lnd/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/lnd/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,wCAAwC;AACxC,2CAAqD;AACrD,gEAA4D;AAC5D,4CAAmB;AACnB,8DAA+D;AAC/D,wEAAmE;AACnE,oEAA+D;AAG/D,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;AACxC,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;AAC9C,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;AACtD,IAAI,CAAC,OAAO,IAAI,CAAC,WAAW,IAAI,CAAC,eAAe,EAAE;IAC9C,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;CAC/D;AACD,MAAM,OAAO,GAAG,YAAE,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;AAC7C,MAAM,QAAQ,GAAG,YAAE,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAClE,MAAM,QAAQ,GAAG,qBAAW,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AAChD,MAAM,aAAa,GAAG,qBAAW,CAAC,2BAA2B,CACzD,UAAU,IAAS,EAAE,QAAa;IAC9B,IAAI,QAAQ,GAAG,IAAI,kBAAQ,EAAE,CAAC;IAC9B,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC7B,CAAC,CACJ,CAAC;AACF,MAAM,KAAK,GAAG,qBAAW,CAAC,yBAAyB,CAC/C,QAAQ,EACR,aAAa,CAChB,CAAC;AACF,MAAM,SAAS,GAAG,IAAI,8BAAa,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,CAAA;AACjF,MAAM,SAAS,GAAG,IAAI,4BAAe,CAAC,SAAS,CAAC,CAAA;AAChD,MAAM,QAAQ,GAAG,IAAI,gCAAc,CAAC,SAAS,CAAC,CAAA;AAC9C,MAAM,MAAM,GAAG,IAAI,4BAAY,CAAC,SAAS,CAAC,CAAA;AAC1C,MAAM,eAAe,GAAG,CAAC,QAAQ,GAAG,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAA;AAEvF,kBAAe;IACX,OAAO,EAAE,GAAmC,EAAE,kDAAC,OAAA,CAAC,MAAM,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAA,GAAA;CAC3G,CAAA"} \ No newline at end of file diff --git a/build/src/services/main/index.js b/build/src/services/main/index.js deleted file mode 100644 index 6cd7b1bc..00000000 --- a/build/src/services/main/index.js +++ /dev/null @@ -1,25 +0,0 @@ -"use strict"; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const lnd_1 = __importDefault(require("../lnd")); -const methods = { - EncryptionExchange: (ctx, req) => __awaiter(void 0, void 0, void 0, function* () { }), - Health: (ctx) => __awaiter(void 0, void 0, void 0, function* () { }), - LndGetInfo: (ctx) => __awaiter(void 0, void 0, void 0, function* () { - const info = yield lnd_1.default.getInfo(); - return { alias: info.alias }; - }) -}; -exports.default = methods; -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/build/src/services/main/index.js.map b/build/src/services/main/index.js.map deleted file mode 100644 index 4250bb5e..00000000 --- a/build/src/services/main/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/main/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AACA,iDAAwB;AACxB,MAAM,OAAO,GAAwB;IACjC,kBAAkB,EAAE,CAAO,GAAqC,EAAE,GAAoC,EAAiB,EAAE,kDAAG,CAAC,CAAA;IAC7H,MAAM,EAAE,CAAO,GAAyB,EAAiB,EAAE,kDAAG,CAAC,CAAA;IAC/D,UAAU,EAAE,CAAO,GAA6B,EAAqC,EAAE;QACnF,MAAM,IAAI,GAAG,MAAM,aAAG,CAAC,OAAO,EAAE,CAAA;QAChC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAA;IAEhC,CAAC,CAAA;CACJ,CAAA;AACD,kBAAe,OAAO,CAAA"} \ No newline at end of file diff --git a/build/types.js b/build/types.js deleted file mode 100644 index 59d4e824..00000000 --- a/build/types.js +++ /dev/null @@ -1,35 +0,0 @@ -"use strict"; -// This file was autogenerated from a .proto file, DO NOT EDIT! -Object.defineProperty(exports, "__esModule", { value: true }); -exports.EmptyValidate = exports.EmptyOptionalFields = exports.EncryptionExchangeRequestValidate = exports.EncryptionExchangeRequestOptionalFields = void 0; -exports.EncryptionExchangeRequestOptionalFields = []; -var EncryptionExchangeRequestValidate = function (o, opts, path) { - if (opts === void 0) { opts = {}; } - if (path === void 0) { path = 'EncryptionExchangeRequest::root.'; } - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) - return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message'); - if (typeof o !== 'object' || o === null) - return new Error(path + ': object is not an instance of an object or is null'); - if (typeof o.public_key !== 'string') - return new Error("".concat(path, ".public_key: is not a string")); - if (opts.public_key_CustomCheck && !opts.public_key_CustomCheck(o.public_key)) - return new Error("".concat(path, ".public_key: custom check failed")); - if (typeof o.device_id !== 'string') - return new Error("".concat(path, ".device_id: is not a string")); - if (opts.device_id_CustomCheck && !opts.device_id_CustomCheck(o.device_id)) - return new Error("".concat(path, ".device_id: custom check failed")); - return null; -}; -exports.EncryptionExchangeRequestValidate = EncryptionExchangeRequestValidate; -exports.EmptyOptionalFields = []; -var EmptyValidate = function (o, opts, path) { - if (opts === void 0) { opts = {}; } - if (path === void 0) { path = 'Empty::root.'; } - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) - return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message'); - if (typeof o !== 'object' || o === null) - return new Error(path + ': object is not an instance of an object or is null'); - return null; -}; -exports.EmptyValidate = EmptyValidate; -//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/build/types.js.map b/build/types.js.map deleted file mode 100644 index bafdc67a..00000000 --- a/build/types.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"types.js","sourceRoot":"","sources":["../proto/autogenerated/ts/types.ts"],"names":[],"mappings":";AAAA,+DAA+D;;;AA8BlD,QAAA,uCAAuC,GAAO,EAAE,CAAA;AAMtD,IAAM,iCAAiC,GAAG,UAAC,CAA6B,EAAE,IAA2C,EAAE,IAAiD;IAA9F,qBAAA,EAAA,SAA2C;IAAE,qBAAA,EAAA,yCAAiD;IAC3K,IAAI,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,kBAAkB;QAAE,OAAO,IAAI,KAAK,CAAC,IAAI,GAAG,yFAAyF,CAAC,CAAA;IAC5K,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,KAAK,CAAC,IAAI,GAAG,qDAAqD,CAAC,CAAA;IAEvH,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK,QAAQ;QAAE,OAAO,IAAI,KAAK,CAAC,UAAG,IAAI,iCAA8B,CAAC,CAAA;IAC7F,IAAI,IAAI,CAAC,sBAAsB,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,KAAK,CAAC,UAAG,IAAI,qCAAkC,CAAC,CAAA;IAE1I,IAAI,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ;QAAE,OAAO,IAAI,KAAK,CAAC,UAAG,IAAI,gCAA6B,CAAC,CAAA;IAC3F,IAAI,IAAI,CAAC,qBAAqB,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,KAAK,CAAC,UAAG,IAAI,oCAAiC,CAAC,CAAA;IAEtI,OAAO,IAAI,CAAA;AACf,CAAC,CAAA;AAXY,QAAA,iCAAiC,qCAW7C;AAIY,QAAA,mBAAmB,GAAO,EAAE,CAAA;AAIlC,IAAM,aAAa,GAAG,UAAC,CAAS,EAAE,IAAuB,EAAE,IAA6B;IAAtD,qBAAA,EAAA,SAAuB;IAAE,qBAAA,EAAA,qBAA6B;IAC3F,IAAI,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,kBAAkB;QAAE,OAAO,IAAI,KAAK,CAAC,IAAI,GAAG,yFAAyF,CAAC,CAAA;IAC5K,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,KAAK,CAAC,IAAI,GAAG,qDAAqD,CAAC,CAAA;IAEvH,OAAO,IAAI,CAAA;AACf,CAAC,CAAA;AALY,QAAA,aAAa,iBAKzB"} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index a7bb2369..98dfc8ed 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,3262 +1,1234 @@ { - "name": "lightning.pub", - "version": "1.0.0", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "name": "lightning.pub", - "version": "1.0.0", - "license": "ISC", - "dependencies": { - "@grpc/grpc-js": "^1.6.7", - "@protobuf-ts/grpc-transport": "^2.5.0", - "@protobuf-ts/plugin": "^2.5.0", - "@protobuf-ts/runtime": "^2.5.0", - "@types/express": "^4.17.13", - "@types/node": "^17.0.31", - "@types/secp256k1": "^4.0.3", - "axios": "^0.27.2", - "copyfiles": "^2.4.1", - "dotenv": "^16.0.0", - "eccrypto": "^1.1.6", - "express": "^4.18.1", - "grpc-tools": "^1.11.2", - "lodash": "^4.17.21", - "rimraf": "^3.0.2", - "rxjs": "^7.5.5", - "secp256k1": "^4.0.3", - "ts-node": "^10.7.0", - "ts-proto": "^1.112.1", - "typescript": "^4.6.4", - "uuid": "^8.3.2" - }, - "devDependencies": { - "@types/eccrypto": "^1.1.3", - "@types/lodash": "^4.14.182", - "@types/uuid": "^8.3.4", - "testyts": "^1.5.0" - } - }, - "node_modules/@cspotcode/source-map-consumer": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-consumer/-/source-map-consumer-0.8.0.tgz", - "integrity": "sha512-41qniHzTU8yAGbCp04ohlmSrZf8bkf/iJsl3V0dRGsQN/5GFfx+LbCSsCpp2gqrqjTVg/K6O8ycoV35JIwAzAg==", - "engines": { - "node": ">= 12" - } - }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.7.0.tgz", - "integrity": "sha512-X4xqRHqN8ACt2aHVe51OxeA2HjbcL4MqFqXkrmQszJ1NOUuUu5u6Vqx/0lZSVNku7velL5FC/s5uEAj1lsBMhA==", - "dependencies": { - "@cspotcode/source-map-consumer": "0.8.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@grpc/grpc-js": { - "version": "1.6.7", - "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.6.7.tgz", - "integrity": "sha512-eBM03pu9hd3VqDQG+kHahiG1x80RGkkqqRb1Pchcwqej/KkAH95gAvKs6laqaHCycYaPK+TKuNQnOz9UXYA8qw==", - "dependencies": { - "@grpc/proto-loader": "^0.6.4", - "@types/node": ">=12.12.47" - }, - "engines": { - "node": "^8.13.0 || >=10.10.0" - } - }, - "node_modules/@grpc/proto-loader": { - "version": "0.6.12", - "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.12.tgz", - "integrity": "sha512-filTVbETFnxb9CyRX98zN18ilChTuf/C5scZ2xyaOTp0EHGq0/ufX8rjqXUcSb1Gpv7eZq4M2jDvbh9BogKnrg==", - "dependencies": { - "@types/long": "^4.0.1", - "lodash.camelcase": "^4.3.0", - "long": "^4.0.0", - "protobufjs": "^6.10.0", - "yargs": "^16.2.0" - }, - "bin": { - "proto-loader-gen-types": "build/bin/proto-loader-gen-types.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@mapbox/node-pre-gyp": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.9.tgz", - "integrity": "sha512-aDF3S3rK9Q2gey/WAttUlISduDItz5BU3306M9Eyv6/oS40aMprnopshtlKTykxRNIBEZuRMaZAnbrQ4QtKGyw==", - "dependencies": { - "detect-libc": "^2.0.0", - "https-proxy-agent": "^5.0.0", - "make-dir": "^3.1.0", - "node-fetch": "^2.6.7", - "nopt": "^5.0.0", - "npmlog": "^5.0.1", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.11" - }, - "bin": { - "node-pre-gyp": "bin/node-pre-gyp" - } - }, - "node_modules/@protobuf-ts/grpc-transport": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@protobuf-ts/grpc-transport/-/grpc-transport-2.5.0.tgz", - "integrity": "sha512-VyIar6U1wcKH3bD6scyA9efPlr0sjvLOCO7F0rcSIrbDn+lEQcHwS/3GN5tqYgh4O0/hAopuGiQ/UTpiR1n6kQ==", - "dependencies": { - "@protobuf-ts/runtime": "^2.5.0", - "@protobuf-ts/runtime-rpc": "^2.5.0" - }, - "peerDependencies": { - "@grpc/grpc-js": "^1.2.2" - } - }, - "node_modules/@protobuf-ts/plugin": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@protobuf-ts/plugin/-/plugin-2.5.0.tgz", - "integrity": "sha512-+lTtBPZad4gGE9eh9lMn+Fq79u4JB8YY/7uEmJSl8pk+4vMp6W02TxWYBMW4gBh5hzcZHGdEBx90OQxt1MDeJQ==", - "dependencies": { - "@protobuf-ts/plugin-framework": "^2.5.0", - "@protobuf-ts/protoc": "^2.5.0", - "@protobuf-ts/runtime": "^2.5.0", - "@protobuf-ts/runtime-rpc": "^2.5.0", - "typescript": "^3.9" - }, - "bin": { - "protoc-gen-dump": "bin/protoc-gen-dump", - "protoc-gen-ts": "bin/protoc-gen-ts" - } - }, - "node_modules/@protobuf-ts/plugin-framework": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@protobuf-ts/plugin-framework/-/plugin-framework-2.5.0.tgz", - "integrity": "sha512-bOf6oP4P0rjNp7bS8NSF/4O9a2WqHb3SSl4aNYzsNvtEddmC5laMfaUGr+6IePzgCNNl19w4wG4m981NSFZDqw==", - "dependencies": { - "@protobuf-ts/runtime": "^2.5.0", - "typescript": "^3.9" - } - }, - "node_modules/@protobuf-ts/plugin-framework/node_modules/typescript": { - "version": "3.9.10", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", - "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/@protobuf-ts/plugin/node_modules/typescript": { - "version": "3.9.10", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", - "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/@protobuf-ts/protoc": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@protobuf-ts/protoc/-/protoc-2.5.0.tgz", - "integrity": "sha512-zrvKEOMKRFNb51Rrhghq4zWxoVCDEYmJJSUmbeTWoYl67u2DyWQMbFQy3HkwjF4kmhJUsG6HQdQHdcPBk4Yo6A==", - "bin": { - "protoc": "protoc.js" - } - }, - "node_modules/@protobuf-ts/runtime": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@protobuf-ts/runtime/-/runtime-2.5.0.tgz", - "integrity": "sha512-ClfuZQ3iPVABJ0CXLGI044eox1PtmrIbbXZaHYczdFJjaxxn8U7vnwb1dPBM9JZ2I6H1VLZu8A9Z5nRv7zydsg==" - }, - "node_modules/@protobuf-ts/runtime-rpc": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@protobuf-ts/runtime-rpc/-/runtime-rpc-2.5.0.tgz", - "integrity": "sha512-zO5W1/66Ok68muvmjG0+ucTWTfzhCUurnqyspqcWGF9DDgGKSmrtR8V1MRV051UoTonOxm7NZZvM6VTbBv9DcA==", - "dependencies": { - "@protobuf-ts/runtime": "^2.5.0" - } - }, - "node_modules/@protobufjs/aspromise": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", - "integrity": "sha1-m4sMxmPWaafY9vXQiToU00jzD78=" - }, - "node_modules/@protobufjs/base64": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", - "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==" - }, - "node_modules/@protobufjs/codegen": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", - "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==" - }, - "node_modules/@protobufjs/eventemitter": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", - "integrity": "sha1-NVy8mLr61ZePntCV85diHx0Ga3A=" - }, - "node_modules/@protobufjs/fetch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", - "integrity": "sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU=", - "dependencies": { - "@protobufjs/aspromise": "^1.1.1", - "@protobufjs/inquire": "^1.1.0" - } - }, - "node_modules/@protobufjs/float": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", - "integrity": "sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E=" - }, - "node_modules/@protobufjs/inquire": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", - "integrity": "sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik=" - }, - "node_modules/@protobufjs/path": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", - "integrity": "sha1-bMKyDFya1q0NzP0hynZz2Nf79o0=" - }, - "node_modules/@protobufjs/pool": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", - "integrity": "sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q=" - }, - "node_modules/@protobufjs/utf8": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", - "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=" - }, - "node_modules/@tsconfig/node10": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.8.tgz", - "integrity": "sha512-6XFfSQmMgq0CFLY1MslA/CPUfhIL919M1rMsa5lP2P097N2Wd1sSX0tx1u4olM16fLNhtHZpRhedZJphNJqmZg==" - }, - "node_modules/@tsconfig/node12": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.9.tgz", - "integrity": "sha512-/yBMcem+fbvhSREH+s14YJi18sp7J9jpuhYByADT2rypfajMZZN4WQ6zBGgBKp53NKmqI36wFYDb3yaMPurITw==" - }, - "node_modules/@tsconfig/node14": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.1.tgz", - "integrity": "sha512-509r2+yARFfHHE7T6Puu2jjkoycftovhXRqW328PDXTVGKihlb1P8Z9mMZH04ebyajfRY7dedfGynlrFHJUQCg==" - }, - "node_modules/@tsconfig/node16": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.2.tgz", - "integrity": "sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA==" - }, - "node_modules/@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "dependencies": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "node_modules/@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/eccrypto": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@types/eccrypto/-/eccrypto-1.1.3.tgz", - "integrity": "sha512-3O0qER6JMYReqVbcQTGmXeMHdw3O+rVps63tlo5g5zoB3altJS8yzSvboSivwVWeYO9o5jSATu7P0UIqYZPgow==", - "dev": true, - "dependencies": { - "@types/expect": "^1.20.4", - "@types/node": "*" - } - }, - "node_modules/@types/expect": { - "version": "1.20.4", - "resolved": "https://registry.npmjs.org/@types/expect/-/expect-1.20.4.tgz", - "integrity": "sha512-Q5Vn3yjTDyCMV50TB6VRIbQNxSE4OmZR86VSbGaNpfUolm0iePBB4KdEEHmxoY5sT2+2DIvXW0rvMDP2nHZ4Mg==", - "dev": true - }, - "node_modules/@types/express": { - "version": "4.17.13", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", - "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", - "dependencies": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.18", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "node_modules/@types/express-serve-static-core": { - "version": "4.17.28", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.28.tgz", - "integrity": "sha512-P1BJAEAW3E2DJUlkgq4tOL3RyMunoWXqbSCygWo5ZIWTjUgN1YnaXWW4VWl/oc8vs/XoYibEGBKP0uZyF4AHig==", - "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "node_modules/@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", - "dev": true - }, - "node_modules/@types/lodash": { - "version": "4.14.182", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.182.tgz", - "integrity": "sha512-/THyiqyQAP9AfARo4pF+aCGcyiQ94tX/Is2I7HofNRqoYLgN1PBoOWu2/zTA5zMxzP5EFutMtWtGAFRKUe961Q==", - "dev": true - }, - "node_modules/@types/long": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz", - "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==" - }, - "node_modules/@types/mime": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", - "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==" - }, - "node_modules/@types/node": { - "version": "17.0.31", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.31.tgz", - "integrity": "sha512-AR0x5HbXGqkEx9CadRH3EBYx/VkiUgZIhP4wvPn/+5KIsgpNoyFaRlVe0Zlx9gRtg8fA06a9tskE2MSN7TcG4Q==" - }, - "node_modules/@types/object-hash": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@types/object-hash/-/object-hash-1.3.4.tgz", - "integrity": "sha512-xFdpkAkikBgqBdG9vIlsqffDV8GpvnPEzs0IUtr1v3BEB97ijsFQ4RXVbUZwjFThhB4MDSTUfvmxUD5PGx0wXA==" - }, - "node_modules/@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" - }, - "node_modules/@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" - }, - "node_modules/@types/secp256k1": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.3.tgz", - "integrity": "sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/serve-static": { - "version": "1.13.10", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz", - "integrity": "sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==", - "dependencies": { - "@types/mime": "^1", - "@types/node": "*" - } - }, - "node_modules/@types/uuid": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.4.tgz", - "integrity": "sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw==", - "dev": true - }, - "node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" - }, - "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/acorn": { - "version": "8.7.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", - "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/agent-base/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/agent-base/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==" - }, - "node_modules/are-we-there-yet": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", - "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/are-we-there-yet/node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/are-we-there-yet/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==" - }, - "node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" - }, - "node_modules/arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "node_modules/axios": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", - "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", - "dependencies": { - "follow-redirects": "^1.14.9", - "form-data": "^4.0.0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "node_modules/bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "optional": true, - "dependencies": { - "file-uri-to-path": "1.0.0" - } - }, - "node_modules/bip66": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/bip66/-/bip66-1.1.5.tgz", - "integrity": "sha1-AfqHSHhcpwlV1QESF9GzE5lpyiI=", - "optional": true, - "dependencies": { - "safe-buffer": "^5.0.1" - } - }, - "node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/body-parser": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", - "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", - "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.10.3", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" - }, - "node_modules/browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "optional": true, - "dependencies": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "node_modules/buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "optional": true - }, - "node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "engines": { - "node": ">=10" - } - }, - "node_modules/cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "optional": true, - "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "node_modules/color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "bin": { - "color-support": "bin.js" - } - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" - }, - "node_modules/content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "dependencies": { - "safe-buffer": "5.2.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" - }, - "node_modules/copyfiles": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/copyfiles/-/copyfiles-2.4.1.tgz", - "integrity": "sha512-fereAvAvxDrQDOXybk3Qu3dPbOoKoysFMWtkY3mv5BsL8//OSZVL5DCLYqgRfY5cWirgRzlC+WSrxp6Bo3eNZg==", - "dependencies": { - "glob": "^7.0.5", - "minimatch": "^3.0.3", - "mkdirp": "^1.0.4", - "noms": "0.0.0", - "through2": "^2.0.1", - "untildify": "^4.0.0", - "yargs": "^16.1.0" - }, - "bin": { - "copyfiles": "copyfiles", - "copyup": "copyfiles" - } - }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" - }, - "node_modules/create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "optional": true, - "dependencies": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "node_modules/create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "optional": true, - "dependencies": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==" - }, - "node_modules/dataloader": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/dataloader/-/dataloader-1.4.0.tgz", - "integrity": "sha512-68s5jYdlvasItOJnCuI2Q9s4q98g0pCyL3HrcKJu8KNugUl8ahgmZYg38ysLTgQjjXX3H8CJLkAvWrclWfcalw==" - }, - "node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" - }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/detect-libc": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", - "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==", - "engines": { - "node": ">=8" - } - }, - "node_modules/diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "engines": { - "node": ">=0.3.1" - } - }, - "node_modules/dotenv": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.0.tgz", - "integrity": "sha512-qD9WU0MPM4SWLPJy/r2Be+2WgQj8plChsyrCNQzW/0WjvcJQiKQJ9mH3ZgB3fxbUUxgc/11ZJ0Fi5KiimWGz2Q==", - "engines": { - "node": ">=12" - } - }, - "node_modules/drbg.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/drbg.js/-/drbg.js-1.0.1.tgz", - "integrity": "sha1-Pja2xCs3BDgjzbwzLVjzHiRFSAs=", - "optional": true, - "dependencies": { - "browserify-aes": "^1.0.6", - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/eccrypto": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/eccrypto/-/eccrypto-1.1.6.tgz", - "integrity": "sha512-d78ivVEzu7Tn0ZphUUaL43+jVPKTMPFGtmgtz1D0LrFn7cY3K8CdrvibuLz2AAkHBLKZtR8DMbB2ukRYFk987A==", - "hasInstallScript": true, - "dependencies": { - "acorn": "7.1.1", - "elliptic": "6.5.4", - "es6-promise": "4.2.8", - "nan": "2.14.0" - }, - "optionalDependencies": { - "secp256k1": "3.7.1" - } - }, - "node_modules/eccrypto/node_modules/acorn": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz", - "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/eccrypto/node_modules/secp256k1": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-3.7.1.tgz", - "integrity": "sha512-1cf8sbnRreXrQFdH6qsg2H71Xw91fCCS9Yp021GnUNJzWJS/py96fS4lHbnTnouLp08Xj6jBoBB6V78Tdbdu5g==", - "hasInstallScript": true, - "optional": true, - "dependencies": { - "bindings": "^1.5.0", - "bip66": "^1.1.5", - "bn.js": "^4.11.8", - "create-hash": "^1.2.0", - "drbg.js": "^1.0.1", - "elliptic": "^6.4.1", - "nan": "^2.14.0", - "safe-buffer": "^5.1.2" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" - }, - "node_modules/elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "dependencies": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" - }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "optional": true, - "dependencies": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/express": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", - "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", - "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.0", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.10.3", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "optional": true - }, - "node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/follow-redirects": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.0.tgz", - "integrity": "sha512-aExlJShTV4qOUOL7yF1U5tvLCB0xQuudbf6toyYA0E/acBNw71mvjFTnLaRp50aQaYocMR0a/RMMBIHeZnGyjQ==", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" - }, - "node_modules/gauge": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", - "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.2", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.1", - "object-assign": "^4.1.1", - "signal-exit": "^3.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/grpc-tools": { - "version": "1.11.2", - "resolved": "https://registry.npmjs.org/grpc-tools/-/grpc-tools-1.11.2.tgz", - "integrity": "sha512-4+EgpnnkJraamY++oyBCw5Hp9huRYfgakjNVKbiE3PgO9Tv5ydVlRo7ZyGJ0C0SEiA7HhbVc1sNNtIyK7FiEtg==", - "hasInstallScript": true, - "dependencies": { - "@mapbox/node-pre-gyp": "^1.0.5" - }, - "bin": { - "grpc_tools_node_protoc": "bin/protoc.js", - "grpc_tools_node_protoc_plugin": "bin/protoc_plugin.js" - } - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, - "node_modules/hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", - "optional": true, - "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/hash-base/node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "optional": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/hash-base/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "optional": true, - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "node_modules/hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "dependencies": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/https-proxy-agent/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/https-proxy-agent/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "node_modules/ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" - }, - "node_modules/json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, - "node_modules/lodash.camelcase": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", - "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=" - }, - "node_modules/long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" - }, - "node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" - }, - "node_modules/md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "optional": true, - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" - }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "node_modules/minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true - }, - "node_modules/minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "node_modules/nan": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", - "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==" - }, - "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/node-addon-api": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", - "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" - }, - "node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/node-gyp-build": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.4.0.tgz", - "integrity": "sha512-amJnQCcgtRVw9SvoebO3BKGESClrfXGCUTX9hSn1OuGQTQBOZmVd0Z0OlecpuRksKvbsUqALE8jls/ErClAPuQ==", - "bin": { - "node-gyp-build": "bin.js", - "node-gyp-build-optional": "optional.js", - "node-gyp-build-test": "build-test.js" - } - }, - "node_modules/noms": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/noms/-/noms-0.0.0.tgz", - "integrity": "sha1-2o69nzr51nYJGbJ9nNyAkqczKFk=", - "dependencies": { - "inherits": "^2.0.1", - "readable-stream": "~1.0.31" - } - }, - "node_modules/nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "dependencies": { - "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/npmlog": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", - "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", - "dependencies": { - "are-we-there-yet": "^2.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^3.0.0", - "set-blocking": "^2.0.0" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-hash": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-1.3.1.tgz", - "integrity": "sha512-OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA==", - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz", - "integrity": "sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" - }, - "node_modules/prettier": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.6.2.tgz", - "integrity": "sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew==", - "bin": { - "prettier": "bin-prettier.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" - }, - "node_modules/protobufjs": { - "version": "6.11.2", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.2.tgz", - "integrity": "sha512-4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw==", - "hasInstallScript": true, - "dependencies": { - "@protobufjs/aspromise": "^1.1.2", - "@protobufjs/base64": "^1.1.2", - "@protobufjs/codegen": "^2.0.4", - "@protobufjs/eventemitter": "^1.1.0", - "@protobufjs/fetch": "^1.1.0", - "@protobufjs/float": "^1.0.2", - "@protobufjs/inquire": "^1.1.0", - "@protobufjs/path": "^1.1.2", - "@protobufjs/pool": "^1.1.0", - "@protobufjs/utf8": "^1.1.0", - "@types/long": "^4.0.1", - "@types/node": ">=13.7.0", - "long": "^4.0.0" - }, - "bin": { - "pbjs": "bin/pbjs", - "pbts": "bin/pbts" - } - }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/qs": { - "version": "6.10.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", - "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/readable-stream": { - "version": "1.0.34", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "node_modules/reflect-metadata": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", - "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==", - "dev": true - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "optional": true, - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "node_modules/rxjs": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", - "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", - "dependencies": { - "tslib": "^2.1.0" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "node_modules/secp256k1": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.3.tgz", - "integrity": "sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==", - "hasInstallScript": true, - "dependencies": { - "elliptic": "^6.5.4", - "node-addon-api": "^2.0.0", - "node-gyp-build": "^4.2.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, - "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" - }, - "node_modules/sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "optional": true, - "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - }, - "bin": { - "sha.js": "bin.js" - } - }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" - }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", - "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/testyts": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/testyts/-/testyts-1.5.0.tgz", - "integrity": "sha512-ww6zqyf5kN7NFqaJ0ODX4tRTLKs5RNhHPGJCv4tw5qDU9bdhNXSbuqqjbgMe1YSWjBuSDT6o3XTnNCehrJGwPQ==", - "dev": true, - "dependencies": { - "commander": "^4.1.1", - "glob": "^7.1.6", - "reflect-metadata": "^0.1.12", - "ts-node": "^7.0.1", - "tsconfig-paths": "^3.9.0", - "typescript": "^3.8.3" - }, - "bin": { - "testyts": "build/testy.js" - } - }, - "node_modules/testyts/node_modules/diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true, - "engines": { - "node": ">=0.3.1" - } - }, - "node_modules/testyts/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/testyts/node_modules/ts-node": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz", - "integrity": "sha512-BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw==", - "dev": true, - "dependencies": { - "arrify": "^1.0.0", - "buffer-from": "^1.1.0", - "diff": "^3.1.0", - "make-error": "^1.1.1", - "minimist": "^1.2.0", - "mkdirp": "^0.5.1", - "source-map-support": "^0.5.6", - "yn": "^2.0.0" - }, - "bin": { - "ts-node": "dist/bin.js" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/testyts/node_modules/typescript": { - "version": "3.9.10", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", - "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/testyts/node_modules/yn": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz", - "integrity": "sha1-5a2ryKz0CPY4X8dklWhMiOavaJo=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dependencies": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "node_modules/through2/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "node_modules/through2/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/through2/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "node_modules/through2/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "engines": { - "node": ">=0.6" - } - }, - "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" - }, - "node_modules/ts-node": { - "version": "10.7.0", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.7.0.tgz", - "integrity": "sha512-TbIGS4xgJoX2i3do417KSaep1uRAW/Lu+WAL2doDHC0D6ummjirVOXU5/7aiZotbQ5p1Zp9tP7U6cYhA0O7M8A==", - "dependencies": { - "@cspotcode/source-map-support": "0.7.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.0", - "yn": "3.1.1" - }, - "bin": { - "ts-node": "dist/bin.js", - "ts-node-cwd": "dist/bin-cwd.js", - "ts-node-esm": "dist/bin-esm.js", - "ts-node-script": "dist/bin-script.js", - "ts-node-transpile-only": "dist/bin-transpile.js", - "ts-script": "dist/bin-script-deprecated.js" - }, - "peerDependencies": { - "@swc/core": ">=1.2.50", - "@swc/wasm": ">=1.2.50", - "@types/node": "*", - "typescript": ">=2.7" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "@swc/wasm": { - "optional": true - } - } - }, - "node_modules/ts-poet": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/ts-poet/-/ts-poet-4.11.0.tgz", - "integrity": "sha512-OaXnCKsRs0yrc0O7LFhnq/US2DB4Wd313cS+qjG2XMksZ74pF/jvMHkJdURXJiAo4kSahL2N4e8JOdwUjOMNdw==", - "dependencies": { - "lodash": "^4.17.15", - "prettier": "^2.5.1" - } - }, - "node_modules/ts-proto": { - "version": "1.112.1", - "resolved": "https://registry.npmjs.org/ts-proto/-/ts-proto-1.112.1.tgz", - "integrity": "sha512-pMqPsgehCR5lNHYrSCfaC7Vx5RXLxTk0MQFvC69+9E4x6yvAed3orCLAWZ1VvPug02bBK5J5vV8JJLS3+FnnUA==", - "dependencies": { - "@types/object-hash": "^1.3.0", - "dataloader": "^1.4.0", - "object-hash": "^1.3.1", - "protobufjs": "^6.8.8", - "ts-poet": "^4.11.0", - "ts-proto-descriptors": "1.6.0" - }, - "bin": { - "protoc-gen-ts_proto": "protoc-gen-ts_proto" - } - }, - "node_modules/ts-proto-descriptors": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/ts-proto-descriptors/-/ts-proto-descriptors-1.6.0.tgz", - "integrity": "sha512-Vrhue2Ti99us/o76mGy28nF3W/Uanl1/8detyJw2yyRwiBC5yxy+hEZqQ/ZX2PbZ1vyCpJ51A9L4PnCCnkBMTQ==", - "dependencies": { - "long": "^4.0.0", - "protobufjs": "^6.8.8" - } - }, - "node_modules/tsconfig-paths": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", - "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", - "dev": true, - "dependencies": { - "@types/json5": "^0.0.29", - "json5": "^1.0.1", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - }, - "node_modules/tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" - }, - "node_modules/type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/typescript": { - "version": "4.6.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz", - "integrity": "sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/untildify": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", - "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", - "engines": { - "node": ">=8" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "node_modules/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==" - }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" - }, - "node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "engines": { - "node": ">=0.4" - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "engines": { - "node": ">=10" - } - }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "engines": { - "node": ">=10" - } - }, - "node_modules/yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "engines": { - "node": ">=6" - } - } - }, - "dependencies": { - "@cspotcode/source-map-consumer": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-consumer/-/source-map-consumer-0.8.0.tgz", - "integrity": "sha512-41qniHzTU8yAGbCp04ohlmSrZf8bkf/iJsl3V0dRGsQN/5GFfx+LbCSsCpp2gqrqjTVg/K6O8ycoV35JIwAzAg==" - }, - "@cspotcode/source-map-support": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.7.0.tgz", - "integrity": "sha512-X4xqRHqN8ACt2aHVe51OxeA2HjbcL4MqFqXkrmQszJ1NOUuUu5u6Vqx/0lZSVNku7velL5FC/s5uEAj1lsBMhA==", - "requires": { - "@cspotcode/source-map-consumer": "0.8.0" - } - }, - "@grpc/grpc-js": { - "version": "1.6.7", - "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.6.7.tgz", - "integrity": "sha512-eBM03pu9hd3VqDQG+kHahiG1x80RGkkqqRb1Pchcwqej/KkAH95gAvKs6laqaHCycYaPK+TKuNQnOz9UXYA8qw==", - "requires": { - "@grpc/proto-loader": "^0.6.4", - "@types/node": ">=12.12.47" - } - }, - "@grpc/proto-loader": { - "version": "0.6.12", - "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.12.tgz", - "integrity": "sha512-filTVbETFnxb9CyRX98zN18ilChTuf/C5scZ2xyaOTp0EHGq0/ufX8rjqXUcSb1Gpv7eZq4M2jDvbh9BogKnrg==", - "requires": { - "@types/long": "^4.0.1", - "lodash.camelcase": "^4.3.0", - "long": "^4.0.0", - "protobufjs": "^6.10.0", - "yargs": "^16.2.0" - } - }, - "@mapbox/node-pre-gyp": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.9.tgz", - "integrity": "sha512-aDF3S3rK9Q2gey/WAttUlISduDItz5BU3306M9Eyv6/oS40aMprnopshtlKTykxRNIBEZuRMaZAnbrQ4QtKGyw==", - "requires": { - "detect-libc": "^2.0.0", - "https-proxy-agent": "^5.0.0", - "make-dir": "^3.1.0", - "node-fetch": "^2.6.7", - "nopt": "^5.0.0", - "npmlog": "^5.0.1", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.11" - } - }, - "@protobuf-ts/grpc-transport": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@protobuf-ts/grpc-transport/-/grpc-transport-2.5.0.tgz", - "integrity": "sha512-VyIar6U1wcKH3bD6scyA9efPlr0sjvLOCO7F0rcSIrbDn+lEQcHwS/3GN5tqYgh4O0/hAopuGiQ/UTpiR1n6kQ==", - "requires": { - "@protobuf-ts/runtime": "^2.5.0", - "@protobuf-ts/runtime-rpc": "^2.5.0" - } - }, - "@protobuf-ts/plugin": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@protobuf-ts/plugin/-/plugin-2.5.0.tgz", - "integrity": "sha512-+lTtBPZad4gGE9eh9lMn+Fq79u4JB8YY/7uEmJSl8pk+4vMp6W02TxWYBMW4gBh5hzcZHGdEBx90OQxt1MDeJQ==", - "requires": { - "@protobuf-ts/plugin-framework": "^2.5.0", - "@protobuf-ts/protoc": "^2.5.0", - "@protobuf-ts/runtime": "^2.5.0", - "@protobuf-ts/runtime-rpc": "^2.5.0", - "typescript": "^3.9" - }, - "dependencies": { - "typescript": { - "version": "3.9.10", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", - "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==" - } - } - }, - "@protobuf-ts/plugin-framework": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@protobuf-ts/plugin-framework/-/plugin-framework-2.5.0.tgz", - "integrity": "sha512-bOf6oP4P0rjNp7bS8NSF/4O9a2WqHb3SSl4aNYzsNvtEddmC5laMfaUGr+6IePzgCNNl19w4wG4m981NSFZDqw==", - "requires": { - "@protobuf-ts/runtime": "^2.5.0", - "typescript": "^3.9" - }, - "dependencies": { - "typescript": { - "version": "3.9.10", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", - "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==" - } - } - }, - "@protobuf-ts/protoc": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@protobuf-ts/protoc/-/protoc-2.5.0.tgz", - "integrity": "sha512-zrvKEOMKRFNb51Rrhghq4zWxoVCDEYmJJSUmbeTWoYl67u2DyWQMbFQy3HkwjF4kmhJUsG6HQdQHdcPBk4Yo6A==" - }, - "@protobuf-ts/runtime": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@protobuf-ts/runtime/-/runtime-2.5.0.tgz", - "integrity": "sha512-ClfuZQ3iPVABJ0CXLGI044eox1PtmrIbbXZaHYczdFJjaxxn8U7vnwb1dPBM9JZ2I6H1VLZu8A9Z5nRv7zydsg==" - }, - "@protobuf-ts/runtime-rpc": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@protobuf-ts/runtime-rpc/-/runtime-rpc-2.5.0.tgz", - "integrity": "sha512-zO5W1/66Ok68muvmjG0+ucTWTfzhCUurnqyspqcWGF9DDgGKSmrtR8V1MRV051UoTonOxm7NZZvM6VTbBv9DcA==", - "requires": { - "@protobuf-ts/runtime": "^2.5.0" - } - }, - "@protobufjs/aspromise": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", - "integrity": "sha1-m4sMxmPWaafY9vXQiToU00jzD78=" - }, - "@protobufjs/base64": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", - "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==" - }, - "@protobufjs/codegen": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", - "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==" - }, - "@protobufjs/eventemitter": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", - "integrity": "sha1-NVy8mLr61ZePntCV85diHx0Ga3A=" - }, - "@protobufjs/fetch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", - "integrity": "sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU=", - "requires": { - "@protobufjs/aspromise": "^1.1.1", - "@protobufjs/inquire": "^1.1.0" - } - }, - "@protobufjs/float": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", - "integrity": "sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E=" - }, - "@protobufjs/inquire": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", - "integrity": "sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik=" - }, - "@protobufjs/path": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", - "integrity": "sha1-bMKyDFya1q0NzP0hynZz2Nf79o0=" - }, - "@protobufjs/pool": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", - "integrity": "sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q=" - }, - "@protobufjs/utf8": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", - "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=" - }, - "@tsconfig/node10": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.8.tgz", - "integrity": "sha512-6XFfSQmMgq0CFLY1MslA/CPUfhIL919M1rMsa5lP2P097N2Wd1sSX0tx1u4olM16fLNhtHZpRhedZJphNJqmZg==" - }, - "@tsconfig/node12": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.9.tgz", - "integrity": "sha512-/yBMcem+fbvhSREH+s14YJi18sp7J9jpuhYByADT2rypfajMZZN4WQ6zBGgBKp53NKmqI36wFYDb3yaMPurITw==" - }, - "@tsconfig/node14": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.1.tgz", - "integrity": "sha512-509r2+yARFfHHE7T6Puu2jjkoycftovhXRqW328PDXTVGKihlb1P8Z9mMZH04ebyajfRY7dedfGynlrFHJUQCg==" - }, - "@tsconfig/node16": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.2.tgz", - "integrity": "sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA==" - }, - "@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "requires": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "requires": { - "@types/node": "*" - } - }, - "@types/eccrypto": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@types/eccrypto/-/eccrypto-1.1.3.tgz", - "integrity": "sha512-3O0qER6JMYReqVbcQTGmXeMHdw3O+rVps63tlo5g5zoB3altJS8yzSvboSivwVWeYO9o5jSATu7P0UIqYZPgow==", - "dev": true, - "requires": { - "@types/expect": "^1.20.4", - "@types/node": "*" - } - }, - "@types/expect": { - "version": "1.20.4", - "resolved": "https://registry.npmjs.org/@types/expect/-/expect-1.20.4.tgz", - "integrity": "sha512-Q5Vn3yjTDyCMV50TB6VRIbQNxSE4OmZR86VSbGaNpfUolm0iePBB4KdEEHmxoY5sT2+2DIvXW0rvMDP2nHZ4Mg==", - "dev": true - }, - "@types/express": { - "version": "4.17.13", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", - "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", - "requires": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.18", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "@types/express-serve-static-core": { - "version": "4.17.28", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.28.tgz", - "integrity": "sha512-P1BJAEAW3E2DJUlkgq4tOL3RyMunoWXqbSCygWo5ZIWTjUgN1YnaXWW4VWl/oc8vs/XoYibEGBKP0uZyF4AHig==", - "requires": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", - "dev": true - }, - "@types/lodash": { - "version": "4.14.182", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.182.tgz", - "integrity": "sha512-/THyiqyQAP9AfARo4pF+aCGcyiQ94tX/Is2I7HofNRqoYLgN1PBoOWu2/zTA5zMxzP5EFutMtWtGAFRKUe961Q==", - "dev": true - }, - "@types/long": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz", - "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==" - }, - "@types/mime": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", - "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==" - }, - "@types/node": { - "version": "17.0.31", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.31.tgz", - "integrity": "sha512-AR0x5HbXGqkEx9CadRH3EBYx/VkiUgZIhP4wvPn/+5KIsgpNoyFaRlVe0Zlx9gRtg8fA06a9tskE2MSN7TcG4Q==" - }, - "@types/object-hash": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@types/object-hash/-/object-hash-1.3.4.tgz", - "integrity": "sha512-xFdpkAkikBgqBdG9vIlsqffDV8GpvnPEzs0IUtr1v3BEB97ijsFQ4RXVbUZwjFThhB4MDSTUfvmxUD5PGx0wXA==" - }, - "@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" - }, - "@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" - }, - "@types/secp256k1": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.3.tgz", - "integrity": "sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==", - "requires": { - "@types/node": "*" - } - }, - "@types/serve-static": { - "version": "1.13.10", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz", - "integrity": "sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==", - "requires": { - "@types/mime": "^1", - "@types/node": "*" - } - }, - "@types/uuid": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.4.tgz", - "integrity": "sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw==", - "dev": true - }, - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" - }, - "accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, - "acorn": { - "version": "8.7.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", - "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==" - }, - "acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==" - }, - "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "requires": { - "debug": "4" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "requires": { + "name": "lightning.pub", + "version": "1.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "lightning.pub", + "version": "1.0.0", + "license": "ISC", + "dependencies": { + "@grpc/grpc-js": "^1.6.7", + "@protobuf-ts/grpc-transport": "^2.5.0", + "@protobuf-ts/plugin": "^2.5.0", + "@protobuf-ts/runtime": "^2.5.0", + "@types/express": "^4.17.13", + "@types/node": "^17.0.31", + "@types/secp256k1": "^4.0.3", + "axios": "^0.27.2", + "copyfiles": "^2.4.1", + "cors": "^2.8.5", + "dotenv": "^16.0.0", + "eccrypto": "^1.1.6", + "express": "^4.18.1", + "grpc-tools": "^1.11.2", + "lodash": "^4.17.21", + "pg": "^8.4.0", + "reflect-metadata": "^0.1.13", + "rimraf": "^3.0.2", + "rxjs": "^7.5.5", + "secp256k1": "^4.0.3", + "sqlite3": "^5.1.2", + "ts-node": "^10.7.0", + "ts-proto": "^1.112.1", + "typeorm": "0.3.10", + "typescript": "^4.6.4", + "uuid": "^8.3.2" + }, + "devDependencies": { + "@types/cors": "^2.8.12", + "@types/eccrypto": "^1.1.3", + "@types/lodash": "^4.14.182", + "@types/node": "^16.11.10", + "@types/uuid": "^8.3.4", + "testyts": "^1.5.0", + "ts-node": "10.7.0", + "typescript": "4.5.2" + } + }, + "node_modules/@cspotcode/source-map-consumer": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-consumer/-/source-map-consumer-0.8.0.tgz", + "integrity": "sha512-41qniHzTU8yAGbCp04ohlmSrZf8bkf/iJsl3V0dRGsQN/5GFfx+LbCSsCpp2gqrqjTVg/K6O8ycoV35JIwAzAg==", + "devOptional": true, + "engines": { + "node": ">= 12" + } + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.7.0.tgz", + "integrity": "sha512-X4xqRHqN8ACt2aHVe51OxeA2HjbcL4MqFqXkrmQszJ1NOUuUu5u6Vqx/0lZSVNku7velL5FC/s5uEAj1lsBMhA==", + "devOptional": true, + "dependencies": { + "@cspotcode/source-map-consumer": "0.8.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", + "optional": true + }, + "node_modules/@grpc/grpc-js": { + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.6.7.tgz", + "integrity": "sha512-eBM03pu9hd3VqDQG+kHahiG1x80RGkkqqRb1Pchcwqej/KkAH95gAvKs6laqaHCycYaPK+TKuNQnOz9UXYA8qw==", + "dependencies": { + "@grpc/proto-loader": "^0.6.4", + "@types/node": ">=12.12.47" + }, + "engines": { + "node": "^8.13.0 || >=10.10.0" + } + }, + "node_modules/@grpc/proto-loader": { + "version": "0.6.12", + "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.12.tgz", + "integrity": "sha512-filTVbETFnxb9CyRX98zN18ilChTuf/C5scZ2xyaOTp0EHGq0/ufX8rjqXUcSb1Gpv7eZq4M2jDvbh9BogKnrg==", + "dependencies": { + "@types/long": "^4.0.1", + "lodash.camelcase": "^4.3.0", + "long": "^4.0.0", + "protobufjs": "^6.10.0", + "yargs": "^16.2.0" + }, + "bin": { + "proto-loader-gen-types": "build/bin/proto-loader-gen-types.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@mapbox/node-pre-gyp": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.9.tgz", + "integrity": "sha512-aDF3S3rK9Q2gey/WAttUlISduDItz5BU3306M9Eyv6/oS40aMprnopshtlKTykxRNIBEZuRMaZAnbrQ4QtKGyw==", + "dependencies": { + "detect-libc": "^2.0.0", + "https-proxy-agent": "^5.0.0", + "make-dir": "^3.1.0", + "node-fetch": "^2.6.7", + "nopt": "^5.0.0", + "npmlog": "^5.0.1", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.11" + }, + "bin": { + "node-pre-gyp": "bin/node-pre-gyp" + } + }, + "node_modules/@npmcli/fs": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz", + "integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==", + "optional": true, + "dependencies": { + "@gar/promisify": "^1.0.1", + "semver": "^7.3.5" + } + }, + "node_modules/@npmcli/move-file": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz", + "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", + "optional": true, + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@protobuf-ts/grpc-transport": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@protobuf-ts/grpc-transport/-/grpc-transport-2.5.0.tgz", + "integrity": "sha512-VyIar6U1wcKH3bD6scyA9efPlr0sjvLOCO7F0rcSIrbDn+lEQcHwS/3GN5tqYgh4O0/hAopuGiQ/UTpiR1n6kQ==", + "dependencies": { + "@protobuf-ts/runtime": "^2.5.0", + "@protobuf-ts/runtime-rpc": "^2.5.0" + }, + "peerDependencies": { + "@grpc/grpc-js": "^1.2.2" + } + }, + "node_modules/@protobuf-ts/plugin": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@protobuf-ts/plugin/-/plugin-2.5.0.tgz", + "integrity": "sha512-+lTtBPZad4gGE9eh9lMn+Fq79u4JB8YY/7uEmJSl8pk+4vMp6W02TxWYBMW4gBh5hzcZHGdEBx90OQxt1MDeJQ==", + "dependencies": { + "@protobuf-ts/plugin-framework": "^2.5.0", + "@protobuf-ts/protoc": "^2.5.0", + "@protobuf-ts/runtime": "^2.5.0", + "@protobuf-ts/runtime-rpc": "^2.5.0", + "typescript": "^3.9" + }, + "bin": { + "protoc-gen-dump": "bin/protoc-gen-dump", + "protoc-gen-ts": "bin/protoc-gen-ts" + } + }, + "node_modules/@protobuf-ts/plugin-framework": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@protobuf-ts/plugin-framework/-/plugin-framework-2.5.0.tgz", + "integrity": "sha512-bOf6oP4P0rjNp7bS8NSF/4O9a2WqHb3SSl4aNYzsNvtEddmC5laMfaUGr+6IePzgCNNl19w4wG4m981NSFZDqw==", + "dependencies": { + "@protobuf-ts/runtime": "^2.5.0", + "typescript": "^3.9" + } + }, + "node_modules/@protobuf-ts/plugin-framework/node_modules/typescript": { + "version": "3.9.10", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", + "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/@protobuf-ts/plugin/node_modules/typescript": { + "version": "3.9.10", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", + "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/@protobuf-ts/protoc": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@protobuf-ts/protoc/-/protoc-2.5.0.tgz", + "integrity": "sha512-zrvKEOMKRFNb51Rrhghq4zWxoVCDEYmJJSUmbeTWoYl67u2DyWQMbFQy3HkwjF4kmhJUsG6HQdQHdcPBk4Yo6A==", + "bin": { + "protoc": "protoc.js" + } + }, + "node_modules/@protobuf-ts/runtime": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@protobuf-ts/runtime/-/runtime-2.5.0.tgz", + "integrity": "sha512-ClfuZQ3iPVABJ0CXLGI044eox1PtmrIbbXZaHYczdFJjaxxn8U7vnwb1dPBM9JZ2I6H1VLZu8A9Z5nRv7zydsg==" + }, + "node_modules/@protobuf-ts/runtime-rpc": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@protobuf-ts/runtime-rpc/-/runtime-rpc-2.5.0.tgz", + "integrity": "sha512-zO5W1/66Ok68muvmjG0+ucTWTfzhCUurnqyspqcWGF9DDgGKSmrtR8V1MRV051UoTonOxm7NZZvM6VTbBv9DcA==", + "dependencies": { + "@protobuf-ts/runtime": "^2.5.0" + } + }, + "node_modules/@protobufjs/aspromise": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", + "integrity": "sha1-m4sMxmPWaafY9vXQiToU00jzD78=" + }, + "node_modules/@protobufjs/base64": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", + "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==" + }, + "node_modules/@protobufjs/codegen": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", + "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==" + }, + "node_modules/@protobufjs/eventemitter": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", + "integrity": "sha1-NVy8mLr61ZePntCV85diHx0Ga3A=" + }, + "node_modules/@protobufjs/fetch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", + "integrity": "sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU=", + "dependencies": { + "@protobufjs/aspromise": "^1.1.1", + "@protobufjs/inquire": "^1.1.0" + } + }, + "node_modules/@protobufjs/float": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", + "integrity": "sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E=" + }, + "node_modules/@protobufjs/inquire": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", + "integrity": "sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik=" + }, + "node_modules/@protobufjs/path": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", + "integrity": "sha1-bMKyDFya1q0NzP0hynZz2Nf79o0=" + }, + "node_modules/@protobufjs/pool": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", + "integrity": "sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q=" + }, + "node_modules/@protobufjs/utf8": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", + "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=" + }, + "node_modules/@sqltools/formatter": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/@sqltools/formatter/-/formatter-1.2.5.tgz", + "integrity": "sha512-Uy0+khmZqUrUGm5dmMqVlnvufZRSK0FbYzVgp0UMstm+F5+W2/jnEEQyc9vo1ZR/E5ZI/B1WjjoTqBqwJL6Krw==" + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "optional": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@tsconfig/node10": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.8.tgz", + "integrity": "sha512-6XFfSQmMgq0CFLY1MslA/CPUfhIL919M1rMsa5lP2P097N2Wd1sSX0tx1u4olM16fLNhtHZpRhedZJphNJqmZg==", + "devOptional": true + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.9.tgz", + "integrity": "sha512-/yBMcem+fbvhSREH+s14YJi18sp7J9jpuhYByADT2rypfajMZZN4WQ6zBGgBKp53NKmqI36wFYDb3yaMPurITw==", + "devOptional": true + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.1.tgz", + "integrity": "sha512-509r2+yARFfHHE7T6Puu2jjkoycftovhXRqW328PDXTVGKihlb1P8Z9mMZH04ebyajfRY7dedfGynlrFHJUQCg==", + "devOptional": true + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.2.tgz", + "integrity": "sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA==", + "devOptional": true + }, + "node_modules/@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/cors": { + "version": "2.8.12", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", + "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", + "dev": true + }, + "node_modules/@types/eccrypto": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@types/eccrypto/-/eccrypto-1.1.3.tgz", + "integrity": "sha512-3O0qER6JMYReqVbcQTGmXeMHdw3O+rVps63tlo5g5zoB3altJS8yzSvboSivwVWeYO9o5jSATu7P0UIqYZPgow==", + "dev": true, + "dependencies": { + "@types/expect": "^1.20.4", + "@types/node": "*" + } + }, + "node_modules/@types/expect": { + "version": "1.20.4", + "resolved": "https://registry.npmjs.org/@types/expect/-/expect-1.20.4.tgz", + "integrity": "sha512-Q5Vn3yjTDyCMV50TB6VRIbQNxSE4OmZR86VSbGaNpfUolm0iePBB4KdEEHmxoY5sT2+2DIvXW0rvMDP2nHZ4Mg==", + "dev": true + }, + "node_modules/@types/express": { + "version": "4.17.13", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", + "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.18", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.17.28", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.28.tgz", + "integrity": "sha512-P1BJAEAW3E2DJUlkgq4tOL3RyMunoWXqbSCygWo5ZIWTjUgN1YnaXWW4VWl/oc8vs/XoYibEGBKP0uZyF4AHig==", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", + "dev": true + }, + "node_modules/@types/lodash": { + "version": "4.14.182", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.182.tgz", + "integrity": "sha512-/THyiqyQAP9AfARo4pF+aCGcyiQ94tX/Is2I7HofNRqoYLgN1PBoOWu2/zTA5zMxzP5EFutMtWtGAFRKUe961Q==", + "dev": true + }, + "node_modules/@types/long": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz", + "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==" + }, + "node_modules/@types/mime": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", + "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==" + }, + "node_modules/@types/node": { + "version": "16.18.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.3.tgz", + "integrity": "sha512-jh6m0QUhIRcZpNv7Z/rpN+ZWXOicUUQbSoWks7Htkbb9IjFQj4kzcX/xFCkjstCj5flMsN8FiSvt+q+Tcs4Llg==" + }, + "node_modules/@types/object-hash": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/@types/object-hash/-/object-hash-1.3.4.tgz", + "integrity": "sha512-xFdpkAkikBgqBdG9vIlsqffDV8GpvnPEzs0IUtr1v3BEB97ijsFQ4RXVbUZwjFThhB4MDSTUfvmxUD5PGx0wXA==" + }, + "node_modules/@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" + }, + "node_modules/@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" + }, + "node_modules/@types/secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.13.10", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz", + "integrity": "sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==", + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/uuid": { + "version": "8.3.4", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.4.tgz", + "integrity": "sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw==", + "dev": true + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", + "devOptional": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "devOptional": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/agent-base/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - } - } - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { - "color-convert": "^2.0.1" - } - }, - "aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==" - }, - "are-we-there-yet": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", - "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { + "node_modules/agent-base/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/agentkeepalive": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", + "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", + "optional": true, + "dependencies": { + "debug": "^4.1.0", + "depd": "^1.1.2", + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/agentkeepalive/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "optional": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/agentkeepalive/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "optional": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/agentkeepalive/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "optional": true + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "optional": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==" + }, + "node_modules/app-root-path": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/app-root-path/-/app-root-path-3.1.0.tgz", + "integrity": "sha512-biN3PwB2gUtjaYy/isrU3aNWI5w+fAfvHkSvCKeQGxhmYpwKFUxudR3Yya+KqVRHBmEDYh+/lTozYCFbmzX4nA==", + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==" + }, + "node_modules/are-we-there-yet": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", + "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/are-we-there-yet/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", "util-deprecate": "^1.0.1" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - } - } - } - }, - "arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==" - }, - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "axios": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", - "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", - "requires": { - "follow-redirects": "^1.14.9", - "form-data": "^4.0.0" - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "optional": true, - "requires": { - "file-uri-to-path": "1.0.0" - } - }, - "bip66": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/bip66/-/bip66-1.1.5.tgz", - "integrity": "sha1-AfqHSHhcpwlV1QESF9GzE5lpyiI=", - "optional": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "body-parser": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", - "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.10.3", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" - }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "optional": true, - "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "optional": true - }, - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" - }, - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" - }, - "cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "optional": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==" - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" - }, - "content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "requires": { - "safe-buffer": "5.2.1" - } - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" - }, - "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==" - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" - }, - "copyfiles": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/copyfiles/-/copyfiles-2.4.1.tgz", - "integrity": "sha512-fereAvAvxDrQDOXybk3Qu3dPbOoKoysFMWtkY3mv5BsL8//OSZVL5DCLYqgRfY5cWirgRzlC+WSrxp6Bo3eNZg==", - "requires": { - "glob": "^7.0.5", - "minimatch": "^3.0.3", - "mkdirp": "^1.0.4", - "noms": "0.0.0", - "through2": "^2.0.1", - "untildify": "^4.0.0", - "yargs": "^16.1.0" - } - }, - "core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" - }, - "create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "optional": true, - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "optional": true, - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==" - }, - "dataloader": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/dataloader/-/dataloader-1.4.0.tgz", - "integrity": "sha512-68s5jYdlvasItOJnCuI2Q9s4q98g0pCyL3HrcKJu8KNugUl8ahgmZYg38ysLTgQjjXX3H8CJLkAvWrclWfcalw==" - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" - }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" - }, - "destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" - }, - "detect-libc": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", - "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==" - }, - "diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==" - }, - "dotenv": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.0.tgz", - "integrity": "sha512-qD9WU0MPM4SWLPJy/r2Be+2WgQj8plChsyrCNQzW/0WjvcJQiKQJ9mH3ZgB3fxbUUxgc/11ZJ0Fi5KiimWGz2Q==" - }, - "drbg.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/drbg.js/-/drbg.js-1.0.1.tgz", - "integrity": "sha1-Pja2xCs3BDgjzbwzLVjzHiRFSAs=", - "optional": true, - "requires": { - "browserify-aes": "^1.0.6", - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4" - } - }, - "eccrypto": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/eccrypto/-/eccrypto-1.1.6.tgz", - "integrity": "sha512-d78ivVEzu7Tn0ZphUUaL43+jVPKTMPFGtmgtz1D0LrFn7cY3K8CdrvibuLz2AAkHBLKZtR8DMbB2ukRYFk987A==", - "requires": { - "acorn": "7.1.1", - "elliptic": "6.5.4", - "es6-promise": "4.2.8", - "nan": "2.14.0", - "secp256k1": "3.7.1" + }, + "engines": { + "node": ">= 6" + } }, - "dependencies": { - "acorn": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz", - "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==" - }, - "secp256k1": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-3.7.1.tgz", - "integrity": "sha512-1cf8sbnRreXrQFdH6qsg2H71Xw91fCCS9Yp021GnUNJzWJS/py96fS4lHbnTnouLp08Xj6jBoBB6V78Tdbdu5g==", - "optional": true, - "requires": { + "node_modules/are-we-there-yet/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "devOptional": true + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "node_modules/arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "node_modules/axios": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", + "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", + "dependencies": { + "follow-redirects": "^1.14.9", + "form-data": "^4.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "optional": true, + "dependencies": { + "file-uri-to-path": "1.0.0" + } + }, + "node_modules/bip66": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/bip66/-/bip66-1.1.5.tgz", + "integrity": "sha1-AfqHSHhcpwlV1QESF9GzE5lpyiI=", + "optional": true, + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/body-parser": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", + "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.10.3", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" + }, + "node_modules/browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "optional": true, + "dependencies": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/buffer-writer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/buffer-writer/-/buffer-writer-2.0.0.tgz", + "integrity": "sha512-a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "optional": true + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacache": { + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", + "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", + "optional": true, + "dependencies": { + "@npmcli/fs": "^1.0.0", + "@npmcli/move-file": "^1.0.1", + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "glob": "^7.1.4", + "infer-owner": "^1.0.4", + "lru-cache": "^6.0.0", + "minipass": "^3.1.1", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^1.0.3", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.0.2", + "unique-filename": "^1.1.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "engines": { + "node": ">=10" + } + }, + "node_modules/cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "optional": true, + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-highlight": { + "version": "2.1.11", + "resolved": "https://registry.npmjs.org/cli-highlight/-/cli-highlight-2.1.11.tgz", + "integrity": "sha512-9KDcoEVwyUXrjcJNvHD0NFc/hiwe/WPVYIleQh2O1N2Zro5gWJZ/K+3DGn8w8P/F6FxOgzyC5bxDyHIgCSPhGg==", + "dependencies": { + "chalk": "^4.0.0", + "highlight.js": "^10.7.1", + "mz": "^2.4.0", + "parse5": "^5.1.1", + "parse5-htmlparser2-tree-adapter": "^6.0.0", + "yargs": "^16.0.0" + }, + "bin": { + "highlight": "bin/highlight" + }, + "engines": { + "node": ">=8.0.0", + "npm": ">=5.0.0" + } + }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "node_modules/copyfiles": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/copyfiles/-/copyfiles-2.4.1.tgz", + "integrity": "sha512-fereAvAvxDrQDOXybk3Qu3dPbOoKoysFMWtkY3mv5BsL8//OSZVL5DCLYqgRfY5cWirgRzlC+WSrxp6Bo3eNZg==", + "dependencies": { + "glob": "^7.0.5", + "minimatch": "^3.0.3", + "mkdirp": "^1.0.4", + "noms": "0.0.0", + "through2": "^2.0.1", + "untildify": "^4.0.0", + "yargs": "^16.1.0" + }, + "bin": { + "copyfiles": "copyfiles", + "copyup": "copyfiles" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "optional": true, + "dependencies": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "node_modules/create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "optional": true, + "dependencies": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "devOptional": true + }, + "node_modules/dataloader": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/dataloader/-/dataloader-1.4.0.tgz", + "integrity": "sha512-68s5jYdlvasItOJnCuI2Q9s4q98g0pCyL3HrcKJu8KNugUl8ahgmZYg38ysLTgQjjXX3H8CJLkAvWrclWfcalw==" + }, + "node_modules/date-fns": { + "version": "2.29.3", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.29.3.tgz", + "integrity": "sha512-dDCnyH2WnnKusqvZZ6+jA1O51Ibt8ZMRNkDZdyAyK4YfbDwa/cEmuztzG5pk6hqlp9aSBPYcjOlktquahGwGeA==", + "engines": { + "node": ">=0.11" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/date-fns" + } + }, + "node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-libc": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", + "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "devOptional": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/dotenv": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.0.tgz", + "integrity": "sha512-qD9WU0MPM4SWLPJy/r2Be+2WgQj8plChsyrCNQzW/0WjvcJQiKQJ9mH3ZgB3fxbUUxgc/11ZJ0Fi5KiimWGz2Q==", + "engines": { + "node": ">=12" + } + }, + "node_modules/drbg.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/drbg.js/-/drbg.js-1.0.1.tgz", + "integrity": "sha1-Pja2xCs3BDgjzbwzLVjzHiRFSAs=", + "optional": true, + "dependencies": { + "browserify-aes": "^1.0.6", + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/eccrypto": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/eccrypto/-/eccrypto-1.1.6.tgz", + "integrity": "sha512-d78ivVEzu7Tn0ZphUUaL43+jVPKTMPFGtmgtz1D0LrFn7cY3K8CdrvibuLz2AAkHBLKZtR8DMbB2ukRYFk987A==", + "hasInstallScript": true, + "dependencies": { + "acorn": "7.1.1", + "elliptic": "6.5.4", + "es6-promise": "4.2.8", + "nan": "2.14.0" + }, + "optionalDependencies": { + "secp256k1": "3.7.1" + } + }, + "node_modules/eccrypto/node_modules/acorn": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz", + "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/eccrypto/node_modules/secp256k1": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-3.7.1.tgz", + "integrity": "sha512-1cf8sbnRreXrQFdH6qsg2H71Xw91fCCS9Yp021GnUNJzWJS/py96fS4lHbnTnouLp08Xj6jBoBB6V78Tdbdu5g==", + "hasInstallScript": true, + "optional": true, + "dependencies": { "bindings": "^1.5.0", "bip66": "^1.1.5", "bn.js": "^4.11.8", @@ -3265,924 +1237,1884 @@ "elliptic": "^6.4.1", "nan": "^2.14.0", "safe-buffer": "^5.1.2" - } - } - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" - }, - "elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "requires": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" - }, - "es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" - }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "optional": true, - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "express": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", - "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", - "requires": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.0", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.10.3", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - } - }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "optional": true - }, - "finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - } - }, - "follow-redirects": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.0.tgz", - "integrity": "sha512-aExlJShTV4qOUOL7yF1U5tvLCB0xQuudbf6toyYA0E/acBNw71mvjFTnLaRp50aQaYocMR0a/RMMBIHeZnGyjQ==" - }, - "form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" - }, - "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "requires": { - "minipass": "^3.0.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" - }, - "gauge": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", - "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", - "requires": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.2", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.1", - "object-assign": "^4.1.1", - "signal-exit": "^3.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.2" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" - }, - "get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1" - } - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "grpc-tools": { - "version": "1.11.2", - "resolved": "https://registry.npmjs.org/grpc-tools/-/grpc-tools-1.11.2.tgz", - "integrity": "sha512-4+EgpnnkJraamY++oyBCw5Hp9huRYfgakjNVKbiE3PgO9Tv5ydVlRo7ZyGJ0C0SEiA7HhbVc1sNNtIyK7FiEtg==", - "requires": { - "@mapbox/node-pre-gyp": "^1.0.5" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, - "hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", - "optional": true, - "requires": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" + }, + "engines": { + "node": ">=4.0.0" + } }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "optional": true, - "requires": { + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "optional": true + }, + "node_modules/es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "optional": true, + "dependencies": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/express": { + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", + "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.0", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.10.3", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "optional": true + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/follow-redirects": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.0.tgz", + "integrity": "sha512-aExlJShTV4qOUOL7yF1U5tvLCB0xQuudbf6toyYA0E/acBNw71mvjFTnLaRp50aQaYocMR0a/RMMBIHeZnGyjQ==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/gauge": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", + "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.2", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.1", + "object-assign": "^4.1.1", + "signal-exit": "^3.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "optional": true + }, + "node_modules/grpc-tools": { + "version": "1.11.2", + "resolved": "https://registry.npmjs.org/grpc-tools/-/grpc-tools-1.11.2.tgz", + "integrity": "sha512-4+EgpnnkJraamY++oyBCw5Hp9huRYfgakjNVKbiE3PgO9Tv5ydVlRo7ZyGJ0C0SEiA7HhbVc1sNNtIyK7FiEtg==", + "hasInstallScript": true, + "dependencies": { + "@mapbox/node-pre-gyp": "^1.0.5" + }, + "bin": { + "grpc_tools_node_protoc": "bin/protoc.js", + "grpc_tools_node_protoc_plugin": "bin/protoc_plugin.js" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, + "node_modules/hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "optional": true, + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/hash-base/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "optional": true, + "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", "util-deprecate": "^1.0.1" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "optional": true, - "requires": { + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/hash-base/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "optional": true, + "dependencies": { "safe-buffer": "~5.2.0" - } - } - } - }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "requires": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - } - }, - "https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "requires": { - "agent-base": "6", - "debug": "4" + } }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "requires": { + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/highlight.js": { + "version": "10.7.3", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.3.tgz", + "integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==", + "engines": { + "node": "*" + } + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", + "optional": true + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "optional": true, + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-proxy-agent/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "optional": true, + "dependencies": { "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - } - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" - }, - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" - }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, - "lodash.camelcase": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", - "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=" - }, - "long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "requires": { - "yallist": "^4.0.0" - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "requires": { - "semver": "^6.0.0" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" - }, - "md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "optional": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "requires": { - "mime-db": "1.52.0" - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true - }, - "minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", - "requires": { - "yallist": "^4.0.0" - } - }, - "minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "nan": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", - "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==" - }, - "negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" - }, - "node-addon-api": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", - "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" - }, - "node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "requires": { - "whatwg-url": "^5.0.0" - } - }, - "node-gyp-build": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.4.0.tgz", - "integrity": "sha512-amJnQCcgtRVw9SvoebO3BKGESClrfXGCUTX9hSn1OuGQTQBOZmVd0Z0OlecpuRksKvbsUqALE8jls/ErClAPuQ==" - }, - "noms": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/noms/-/noms-0.0.0.tgz", - "integrity": "sha1-2o69nzr51nYJGbJ9nNyAkqczKFk=", - "requires": { - "inherits": "^2.0.1", - "readable-stream": "~1.0.31" - } - }, - "nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "requires": { - "abbrev": "1" - } - }, - "npmlog": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", - "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", - "requires": { - "are-we-there-yet": "^2.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^3.0.0", - "set-blocking": "^2.0.0" - } - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "object-hash": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-1.3.1.tgz", - "integrity": "sha512-OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA==" - }, - "object-inspect": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz", - "integrity": "sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==" - }, - "on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "requires": { - "ee-first": "1.1.1" - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1" - } - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" - }, - "prettier": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.6.2.tgz", - "integrity": "sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew==" - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" - }, - "protobufjs": { - "version": "6.11.2", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.2.tgz", - "integrity": "sha512-4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw==", - "requires": { - "@protobufjs/aspromise": "^1.1.2", - "@protobufjs/base64": "^1.1.2", - "@protobufjs/codegen": "^2.0.4", - "@protobufjs/eventemitter": "^1.1.0", - "@protobufjs/fetch": "^1.1.0", - "@protobufjs/float": "^1.0.2", - "@protobufjs/inquire": "^1.1.0", - "@protobufjs/path": "^1.1.2", - "@protobufjs/pool": "^1.1.0", - "@protobufjs/utf8": "^1.1.0", - "@types/long": "^4.0.1", - "@types/node": ">=13.7.0", - "long": "^4.0.0" - } - }, - "proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - } - }, - "qs": { - "version": "6.10.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", - "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", - "requires": { - "side-channel": "^1.0.4" - } - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" - }, - "raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "requires": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } - }, - "readable-stream": { - "version": "1.0.34", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "reflect-metadata": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", - "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==", - "dev": true - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "requires": { - "glob": "^7.1.3" - } - }, - "ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "optional": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "rxjs": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", - "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", - "requires": { - "tslib": "^2.1.0" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "secp256k1": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.3.tgz", - "integrity": "sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==", - "requires": { - "elliptic": "^6.5.4", - "node-addon-api": "^2.0.0", - "node-gyp-build": "^4.2.0" - } - }, - "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "requires": { - "lru-cache": "^6.0.0" - } - }, - "send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "requires": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" + "node_modules/http-proxy-agent/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "optional": true }, - "dependencies": { - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - } - } - }, - "serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" - }, - "sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "optional": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - }, - "tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", - "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - } - }, - "testyts": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/testyts/-/testyts-1.5.0.tgz", - "integrity": "sha512-ww6zqyf5kN7NFqaJ0ODX4tRTLKs5RNhHPGJCv4tw5qDU9bdhNXSbuqqjbgMe1YSWjBuSDT6o3XTnNCehrJGwPQ==", - "dev": true, - "requires": { - "commander": "^4.1.1", - "glob": "^7.1.6", - "reflect-metadata": "^0.1.12", - "ts-node": "^7.0.1", - "tsconfig-paths": "^3.9.0", - "typescript": "^3.8.3" + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } }, - "dependencies": { - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "requires": { + "node_modules/https-proxy-agent/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/https-proxy-agent/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", + "optional": true, + "dependencies": { + "ms": "^2.0.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "optional": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "optional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "optional": true + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ip": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", + "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", + "optional": true + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", + "optional": true + }, + "node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "optional": true + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=" + }, + "node_modules/long": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", + "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "devOptional": true + }, + "node_modules/make-fetch-happen": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz", + "integrity": "sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg==", + "optional": true, + "dependencies": { + "agentkeepalive": "^4.1.3", + "cacache": "^15.2.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^6.0.0", + "minipass": "^3.1.3", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^1.3.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.2", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^6.0.0", + "ssri": "^8.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "optional": true, + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", + "dev": true + }, + "node_modules/minipass": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", + "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "optional": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-fetch": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.4.1.tgz", + "integrity": "sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==", + "optional": true, + "dependencies": { + "minipass": "^3.1.0", + "minipass-sized": "^1.0.3", + "minizlib": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "optionalDependencies": { + "encoding": "^0.1.12" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "optional": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "optional": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "optional": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "node_modules/nan": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", + "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==" + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/node-addon-api": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", + "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" + }, + "node_modules/node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-gyp": { + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-8.4.1.tgz", + "integrity": "sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w==", + "optional": true, + "dependencies": { + "env-paths": "^2.2.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^9.1.0", + "nopt": "^5.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": ">= 10.12.0" + } + }, + "node_modules/node-gyp-build": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.4.0.tgz", + "integrity": "sha512-amJnQCcgtRVw9SvoebO3BKGESClrfXGCUTX9hSn1OuGQTQBOZmVd0Z0OlecpuRksKvbsUqALE8jls/ErClAPuQ==", + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/node-gyp/node_modules/are-we-there-yet": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", + "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", + "optional": true, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/node-gyp/node_modules/gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "optional": true, + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/node-gyp/node_modules/npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "optional": true, + "dependencies": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/node-gyp/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "optional": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/node-gyp/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "optional": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/noms": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/noms/-/noms-0.0.0.tgz", + "integrity": "sha1-2o69nzr51nYJGbJ9nNyAkqczKFk=", + "dependencies": { + "inherits": "^2.0.1", + "readable-stream": "~1.0.31" + } + }, + "node_modules/nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/npmlog": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", + "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", + "dependencies": { + "are-we-there-yet": "^2.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^3.0.0", + "set-blocking": "^2.0.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-hash": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-1.3.1.tgz", + "integrity": "sha512-OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA==", + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz", + "integrity": "sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "optional": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/packet-reader": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/packet-reader/-/packet-reader-1.0.0.tgz", + "integrity": "sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ==" + }, + "node_modules/parse5": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", + "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==" + }, + "node_modules/parse5-htmlparser2-tree-adapter": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", + "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", + "dependencies": { + "parse5": "^6.0.1" + } + }, + "node_modules/parse5-htmlparser2-tree-adapter/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + }, + "node_modules/pg": { + "version": "8.8.0", + "resolved": "https://registry.npmjs.org/pg/-/pg-8.8.0.tgz", + "integrity": "sha512-UXYN0ziKj+AeNNP7VDMwrehpACThH7LUl/p8TDFpEUuSejCUIwGSfxpHsPvtM6/WXFy6SU4E5RG4IJV/TZAGjw==", + "dependencies": { + "buffer-writer": "2.0.0", + "packet-reader": "1.0.0", + "pg-connection-string": "^2.5.0", + "pg-pool": "^3.5.2", + "pg-protocol": "^1.5.0", + "pg-types": "^2.1.0", + "pgpass": "1.x" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "pg-native": ">=3.0.1" + }, + "peerDependenciesMeta": { + "pg-native": { + "optional": true + } + } + }, + "node_modules/pg-connection-string": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/pg-connection-string/-/pg-connection-string-2.5.0.tgz", + "integrity": "sha512-r5o/V/ORTA6TmUnyWZR9nCj1klXCO2CEKNRlVuJptZe85QuhFayC7WeMic7ndayT5IRIR0S0xFxFi2ousartlQ==" + }, + "node_modules/pg-int8": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/pg-int8/-/pg-int8-1.0.1.tgz", + "integrity": "sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/pg-pool": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/pg-pool/-/pg-pool-3.5.2.tgz", + "integrity": "sha512-His3Fh17Z4eg7oANLob6ZvH8xIVen3phEZh2QuyrIl4dQSDVEabNducv6ysROKpDNPSD+12tONZVWfSgMvDD9w==", + "peerDependencies": { + "pg": ">=8.0" + } + }, + "node_modules/pg-protocol": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/pg-protocol/-/pg-protocol-1.5.0.tgz", + "integrity": "sha512-muRttij7H8TqRNu/DxrAJQITO4Ac7RmX3Klyr/9mJEOBeIpgnF8f9jAfRz5d3XwQZl5qBjF9gLsUtMPJE0vezQ==" + }, + "node_modules/pg-types": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/pg-types/-/pg-types-2.2.0.tgz", + "integrity": "sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==", + "dependencies": { + "pg-int8": "1.0.1", + "postgres-array": "~2.0.0", + "postgres-bytea": "~1.0.0", + "postgres-date": "~1.0.4", + "postgres-interval": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pgpass": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/pgpass/-/pgpass-1.0.5.tgz", + "integrity": "sha512-FdW9r/jQZhSeohs1Z3sI1yxFQNFvMcnmfuj4WBMUTxOrAyLMaTcE1aAMBiTlbMNaXvBCQuVi0R7hd8udDSP7ug==", + "dependencies": { + "split2": "^4.1.0" + } + }, + "node_modules/postgres-array": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postgres-array/-/postgres-array-2.0.0.tgz", + "integrity": "sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/postgres-bytea": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/postgres-bytea/-/postgres-bytea-1.0.0.tgz", + "integrity": "sha512-xy3pmLuQqRBZBXDULy7KbaitYqLcmxigw14Q5sj8QBVLqEwXfeybIKVWiqAXTlcvdvb0+xkOtDbfQMOf4lST1w==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postgres-date": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/postgres-date/-/postgres-date-1.0.7.tgz", + "integrity": "sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postgres-interval": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/postgres-interval/-/postgres-interval-1.2.0.tgz", + "integrity": "sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==", + "dependencies": { + "xtend": "^4.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/prettier": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.6.2.tgz", + "integrity": "sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew==", + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", + "optional": true + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "optional": true, + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/protobufjs": { + "version": "6.11.2", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.2.tgz", + "integrity": "sha512-4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw==", + "hasInstallScript": true, + "dependencies": { + "@protobufjs/aspromise": "^1.1.2", + "@protobufjs/base64": "^1.1.2", + "@protobufjs/codegen": "^2.0.4", + "@protobufjs/eventemitter": "^1.1.0", + "@protobufjs/fetch": "^1.1.0", + "@protobufjs/float": "^1.0.2", + "@protobufjs/inquire": "^1.1.0", + "@protobufjs/path": "^1.1.2", + "@protobufjs/pool": "^1.1.0", + "@protobufjs/utf8": "^1.1.0", + "@types/long": "^4.0.1", + "@types/node": ">=13.7.0", + "long": "^4.0.0" + }, + "bin": { + "pbjs": "bin/pbjs", + "pbts": "bin/pbts" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/qs": { + "version": "6.10.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", + "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/reflect-metadata": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", + "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==" + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "optional": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "optional": true, + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "node_modules/rxjs": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", + "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "node_modules/secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==", + "hasInstallScript": true, + "dependencies": { + "elliptic": "^6.5.4", + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/semver": { + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "node_modules/sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + }, + "bin": { + "sha.js": "bin.js" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "optional": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", + "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", + "optional": true, + "dependencies": { + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.13.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.2.1.tgz", + "integrity": "sha512-a6KW9G+6B3nWZ1yB8G7pJwL3ggLy1uTzKAgCb7ttblwqdz9fMGJUuTy3uFzEP48FAs9FLILlmzDlE2JJhVQaXQ==", + "optional": true, + "dependencies": { + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/socks-proxy-agent/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "optional": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/socks-proxy-agent/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "optional": true + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/split2": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-4.1.0.tgz", + "integrity": "sha512-VBiJxFkxiXRlUIeyMQi8s4hgvKCSjtknJv/LVYbrgALPwf5zSKmEwV9Lst25AkvMDnvxODugjdl6KZgwKM1WYQ==", + "engines": { + "node": ">= 10.x" + } + }, + "node_modules/sqlite3": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/sqlite3/-/sqlite3-5.1.2.tgz", + "integrity": "sha512-D0Reg6pRWAFXFUnZKsszCI67tthFD8fGPewRddDCX6w4cYwz3MbvuwRICbL+YQjBAh9zbw+lJ/V9oC8nG5j6eg==", + "hasInstallScript": true, + "dependencies": { + "@mapbox/node-pre-gyp": "^1.0.0", + "node-addon-api": "^4.2.0", + "tar": "^6.1.11" + }, + "optionalDependencies": { + "node-gyp": "8.x" + }, + "peerDependencies": { + "node-gyp": "8.x" + }, + "peerDependenciesMeta": { + "node-gyp": { + "optional": true + } + } + }, + "node_modules/sqlite3/node_modules/node-addon-api": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-4.3.0.tgz", + "integrity": "sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==" + }, + "node_modules/ssri": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", + "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", + "optional": true, + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar": { + "version": "6.1.11", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", + "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/testyts": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/testyts/-/testyts-1.5.0.tgz", + "integrity": "sha512-ww6zqyf5kN7NFqaJ0ODX4tRTLKs5RNhHPGJCv4tw5qDU9bdhNXSbuqqjbgMe1YSWjBuSDT6o3XTnNCehrJGwPQ==", + "dev": true, + "dependencies": { + "commander": "^4.1.1", + "glob": "^7.1.6", + "reflect-metadata": "^0.1.12", + "ts-node": "^7.0.1", + "tsconfig-paths": "^3.9.0", + "typescript": "^3.8.3" + }, + "bin": { + "testyts": "build/testy.js" + } + }, + "node_modules/testyts/node_modules/diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/testyts/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { "minimist": "^1.2.6" - } - }, - "ts-node": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz", - "integrity": "sha512-BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw==", - "dev": true, - "requires": { + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/testyts/node_modules/ts-node": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz", + "integrity": "sha512-BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw==", + "dev": true, + "dependencies": { "arrify": "^1.0.0", "buffer-from": "^1.1.0", "diff": "^3.1.0", @@ -4191,41 +3123,74 @@ "mkdirp": "^0.5.1", "source-map-support": "^0.5.6", "yn": "^2.0.0" - } - }, - "typescript": { - "version": "3.9.10", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", - "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", - "dev": true - }, - "yn": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz", - "integrity": "sha1-5a2ryKz0CPY4X8dklWhMiOavaJo=", - "dev": true - } - } - }, - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" + }, + "bin": { + "ts-node": "dist/bin.js" + }, + "engines": { + "node": ">=4.2.0" + } }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "requires": { + "node_modules/testyts/node_modules/typescript": { + "version": "3.9.10", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", + "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/testyts/node_modules/yn": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz", + "integrity": "sha1-5a2ryKz0CPY4X8dklWhMiOavaJo=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/through2/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "node_modules/through2/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", "isarray": "~1.0.0", @@ -4233,225 +3198,3322 @@ "safe-buffer": "~5.1.1", "string_decoder": "~1.1.1", "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { + } + }, + "node_modules/through2/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/through2/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { "safe-buffer": "~5.1.0" - } - } + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" + }, + "node_modules/ts-node": { + "version": "10.7.0", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.7.0.tgz", + "integrity": "sha512-TbIGS4xgJoX2i3do417KSaep1uRAW/Lu+WAL2doDHC0D6ummjirVOXU5/7aiZotbQ5p1Zp9tP7U6cYhA0O7M8A==", + "devOptional": true, + "dependencies": { + "@cspotcode/source-map-support": "0.7.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.0", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "node_modules/ts-poet": { + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/ts-poet/-/ts-poet-4.11.0.tgz", + "integrity": "sha512-OaXnCKsRs0yrc0O7LFhnq/US2DB4Wd313cS+qjG2XMksZ74pF/jvMHkJdURXJiAo4kSahL2N4e8JOdwUjOMNdw==", + "dependencies": { + "lodash": "^4.17.15", + "prettier": "^2.5.1" + } + }, + "node_modules/ts-proto": { + "version": "1.112.1", + "resolved": "https://registry.npmjs.org/ts-proto/-/ts-proto-1.112.1.tgz", + "integrity": "sha512-pMqPsgehCR5lNHYrSCfaC7Vx5RXLxTk0MQFvC69+9E4x6yvAed3orCLAWZ1VvPug02bBK5J5vV8JJLS3+FnnUA==", + "dependencies": { + "@types/object-hash": "^1.3.0", + "dataloader": "^1.4.0", + "object-hash": "^1.3.1", + "protobufjs": "^6.8.8", + "ts-poet": "^4.11.0", + "ts-proto-descriptors": "1.6.0" + }, + "bin": { + "protoc-gen-ts_proto": "protoc-gen-ts_proto" + } + }, + "node_modules/ts-proto-descriptors": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/ts-proto-descriptors/-/ts-proto-descriptors-1.6.0.tgz", + "integrity": "sha512-Vrhue2Ti99us/o76mGy28nF3W/Uanl1/8detyJw2yyRwiBC5yxy+hEZqQ/ZX2PbZ1vyCpJ51A9L4PnCCnkBMTQ==", + "dependencies": { + "long": "^4.0.0", + "protobufjs": "^6.8.8" + } + }, + "node_modules/tsconfig-paths": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", + "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", + "dev": true, + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typeorm": { + "version": "0.3.10", + "resolved": "https://registry.npmjs.org/typeorm/-/typeorm-0.3.10.tgz", + "integrity": "sha512-VMKiM84EpJQ+Mz9xDIPqnfplWhyUy1d8ccaKdMY9obifxJOTFnv8GYVyPsGwG8Lk7Nb8MlttHyHWENGAhBA3WA==", + "dependencies": { + "@sqltools/formatter": "^1.2.2", + "app-root-path": "^3.0.0", + "buffer": "^6.0.3", + "chalk": "^4.1.0", + "cli-highlight": "^2.1.11", + "date-fns": "^2.28.0", + "debug": "^4.3.3", + "dotenv": "^16.0.0", + "glob": "^7.2.0", + "js-yaml": "^4.1.0", + "mkdirp": "^1.0.4", + "reflect-metadata": "^0.1.13", + "sha.js": "^2.4.11", + "tslib": "^2.3.1", + "uuid": "^8.3.2", + "xml2js": "^0.4.23", + "yargs": "^17.3.1" + }, + "bin": { + "typeorm": "cli.js", + "typeorm-ts-node-commonjs": "cli-ts-node-commonjs.js", + "typeorm-ts-node-esm": "cli-ts-node-esm.js" + }, + "engines": { + "node": ">= 12.9.0" + }, + "funding": { + "url": "https://opencollective.com/typeorm" + }, + "peerDependencies": { + "@google-cloud/spanner": "^5.18.0", + "@sap/hana-client": "^2.12.25", + "better-sqlite3": "^7.1.2", + "hdb-pool": "^0.1.6", + "ioredis": "^5.0.4", + "mongodb": "^3.6.0", + "mssql": "^7.3.0", + "mysql2": "^2.2.5", + "oracledb": "^5.1.0", + "pg": "^8.5.1", + "pg-native": "^3.0.0", + "pg-query-stream": "^4.0.0", + "redis": "^3.1.1 || ^4.0.0", + "sql.js": "^1.4.0", + "sqlite3": "^5.0.3", + "ts-node": "^10.7.0", + "typeorm-aurora-data-api-driver": "^2.0.0" + }, + "peerDependenciesMeta": { + "@google-cloud/spanner": { + "optional": true + }, + "@sap/hana-client": { + "optional": true + }, + "better-sqlite3": { + "optional": true + }, + "hdb-pool": { + "optional": true + }, + "ioredis": { + "optional": true + }, + "mongodb": { + "optional": true + }, + "mssql": { + "optional": true + }, + "mysql2": { + "optional": true + }, + "oracledb": { + "optional": true + }, + "pg": { + "optional": true + }, + "pg-native": { + "optional": true + }, + "pg-query-stream": { + "optional": true + }, + "redis": { + "optional": true + }, + "sql.js": { + "optional": true + }, + "sqlite3": { + "optional": true + }, + "ts-node": { + "optional": true + }, + "typeorm-aurora-data-api-driver": { + "optional": true + } + } + }, + "node_modules/typeorm/node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/typeorm/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/typeorm/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/typeorm/node_modules/yargs": { + "version": "17.6.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.1.tgz", + "integrity": "sha512-leBuCGrL4dAd6ispNOGsJlhd0uZ6Qehkbu/B9KCR+Pxa/NVdNwi+i31lo0buCm6XxhJQFshXCD0/evfV4xfoUg==", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/typeorm/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "engines": { + "node": ">=12" + } + }, + "node_modules/typescript": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.2.tgz", + "integrity": "sha512-5BlMof9H1yGt0P8/WF+wPNw6GfctgGjXp5hkblpyT+8rkASSmkUKMXrxR0Xg8ThVCi/JnHQiKXeBaEwCeQwMFw==", + "devOptional": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "optional": true, + "dependencies": { + "unique-slug": "^2.0.0" + } + }, + "node_modules/unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "optional": true, + "dependencies": { + "imurmurhash": "^0.1.4" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/untildify": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", + "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "devOptional": true + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "optional": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "node_modules/xml2js": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", + "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "engines": { + "node": ">=10" + } + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "devOptional": true, + "engines": { + "node": ">=6" + } } - }, - "toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" - }, - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" - }, - "ts-node": { - "version": "10.7.0", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.7.0.tgz", - "integrity": "sha512-TbIGS4xgJoX2i3do417KSaep1uRAW/Lu+WAL2doDHC0D6ummjirVOXU5/7aiZotbQ5p1Zp9tP7U6cYhA0O7M8A==", - "requires": { - "@cspotcode/source-map-support": "0.7.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.0", - "yn": "3.1.1" + }, + "dependencies": { + "@cspotcode/source-map-consumer": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-consumer/-/source-map-consumer-0.8.0.tgz", + "integrity": "sha512-41qniHzTU8yAGbCp04ohlmSrZf8bkf/iJsl3V0dRGsQN/5GFfx+LbCSsCpp2gqrqjTVg/K6O8ycoV35JIwAzAg==", + "devOptional": true + }, + "@cspotcode/source-map-support": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.7.0.tgz", + "integrity": "sha512-X4xqRHqN8ACt2aHVe51OxeA2HjbcL4MqFqXkrmQszJ1NOUuUu5u6Vqx/0lZSVNku7velL5FC/s5uEAj1lsBMhA==", + "devOptional": true, + "requires": { + "@cspotcode/source-map-consumer": "0.8.0" + } + }, + "@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", + "optional": true + }, + "@grpc/grpc-js": { + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.6.7.tgz", + "integrity": "sha512-eBM03pu9hd3VqDQG+kHahiG1x80RGkkqqRb1Pchcwqej/KkAH95gAvKs6laqaHCycYaPK+TKuNQnOz9UXYA8qw==", + "requires": { + "@grpc/proto-loader": "^0.6.4", + "@types/node": ">=12.12.47" + } + }, + "@grpc/proto-loader": { + "version": "0.6.12", + "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.12.tgz", + "integrity": "sha512-filTVbETFnxb9CyRX98zN18ilChTuf/C5scZ2xyaOTp0EHGq0/ufX8rjqXUcSb1Gpv7eZq4M2jDvbh9BogKnrg==", + "requires": { + "@types/long": "^4.0.1", + "lodash.camelcase": "^4.3.0", + "long": "^4.0.0", + "protobufjs": "^6.10.0", + "yargs": "^16.2.0" + } + }, + "@mapbox/node-pre-gyp": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.9.tgz", + "integrity": "sha512-aDF3S3rK9Q2gey/WAttUlISduDItz5BU3306M9Eyv6/oS40aMprnopshtlKTykxRNIBEZuRMaZAnbrQ4QtKGyw==", + "requires": { + "detect-libc": "^2.0.0", + "https-proxy-agent": "^5.0.0", + "make-dir": "^3.1.0", + "node-fetch": "^2.6.7", + "nopt": "^5.0.0", + "npmlog": "^5.0.1", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.11" + } + }, + "@npmcli/fs": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz", + "integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==", + "optional": true, + "requires": { + "@gar/promisify": "^1.0.1", + "semver": "^7.3.5" + } + }, + "@npmcli/move-file": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz", + "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", + "optional": true, + "requires": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + } + }, + "@protobuf-ts/grpc-transport": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@protobuf-ts/grpc-transport/-/grpc-transport-2.5.0.tgz", + "integrity": "sha512-VyIar6U1wcKH3bD6scyA9efPlr0sjvLOCO7F0rcSIrbDn+lEQcHwS/3GN5tqYgh4O0/hAopuGiQ/UTpiR1n6kQ==", + "requires": { + "@protobuf-ts/runtime": "^2.5.0", + "@protobuf-ts/runtime-rpc": "^2.5.0" + } + }, + "@protobuf-ts/plugin": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@protobuf-ts/plugin/-/plugin-2.5.0.tgz", + "integrity": "sha512-+lTtBPZad4gGE9eh9lMn+Fq79u4JB8YY/7uEmJSl8pk+4vMp6W02TxWYBMW4gBh5hzcZHGdEBx90OQxt1MDeJQ==", + "requires": { + "@protobuf-ts/plugin-framework": "^2.5.0", + "@protobuf-ts/protoc": "^2.5.0", + "@protobuf-ts/runtime": "^2.5.0", + "@protobuf-ts/runtime-rpc": "^2.5.0", + "typescript": "^3.9" + }, + "dependencies": { + "typescript": { + "version": "3.9.10", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", + "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==" + } + } + }, + "@protobuf-ts/plugin-framework": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@protobuf-ts/plugin-framework/-/plugin-framework-2.5.0.tgz", + "integrity": "sha512-bOf6oP4P0rjNp7bS8NSF/4O9a2WqHb3SSl4aNYzsNvtEddmC5laMfaUGr+6IePzgCNNl19w4wG4m981NSFZDqw==", + "requires": { + "@protobuf-ts/runtime": "^2.5.0", + "typescript": "^3.9" + }, + "dependencies": { + "typescript": { + "version": "3.9.10", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", + "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==" + } + } + }, + "@protobuf-ts/protoc": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@protobuf-ts/protoc/-/protoc-2.5.0.tgz", + "integrity": "sha512-zrvKEOMKRFNb51Rrhghq4zWxoVCDEYmJJSUmbeTWoYl67u2DyWQMbFQy3HkwjF4kmhJUsG6HQdQHdcPBk4Yo6A==" + }, + "@protobuf-ts/runtime": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@protobuf-ts/runtime/-/runtime-2.5.0.tgz", + "integrity": "sha512-ClfuZQ3iPVABJ0CXLGI044eox1PtmrIbbXZaHYczdFJjaxxn8U7vnwb1dPBM9JZ2I6H1VLZu8A9Z5nRv7zydsg==" + }, + "@protobuf-ts/runtime-rpc": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@protobuf-ts/runtime-rpc/-/runtime-rpc-2.5.0.tgz", + "integrity": "sha512-zO5W1/66Ok68muvmjG0+ucTWTfzhCUurnqyspqcWGF9DDgGKSmrtR8V1MRV051UoTonOxm7NZZvM6VTbBv9DcA==", + "requires": { + "@protobuf-ts/runtime": "^2.5.0" + } + }, + "@protobufjs/aspromise": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", + "integrity": "sha1-m4sMxmPWaafY9vXQiToU00jzD78=" + }, + "@protobufjs/base64": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", + "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==" + }, + "@protobufjs/codegen": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", + "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==" + }, + "@protobufjs/eventemitter": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", + "integrity": "sha1-NVy8mLr61ZePntCV85diHx0Ga3A=" + }, + "@protobufjs/fetch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", + "integrity": "sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU=", + "requires": { + "@protobufjs/aspromise": "^1.1.1", + "@protobufjs/inquire": "^1.1.0" + } + }, + "@protobufjs/float": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", + "integrity": "sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E=" + }, + "@protobufjs/inquire": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", + "integrity": "sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik=" + }, + "@protobufjs/path": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", + "integrity": "sha1-bMKyDFya1q0NzP0hynZz2Nf79o0=" + }, + "@protobufjs/pool": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", + "integrity": "sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q=" + }, + "@protobufjs/utf8": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", + "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=" + }, + "@sqltools/formatter": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/@sqltools/formatter/-/formatter-1.2.5.tgz", + "integrity": "sha512-Uy0+khmZqUrUGm5dmMqVlnvufZRSK0FbYzVgp0UMstm+F5+W2/jnEEQyc9vo1ZR/E5ZI/B1WjjoTqBqwJL6Krw==" + }, + "@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "optional": true + }, + "@tsconfig/node10": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.8.tgz", + "integrity": "sha512-6XFfSQmMgq0CFLY1MslA/CPUfhIL919M1rMsa5lP2P097N2Wd1sSX0tx1u4olM16fLNhtHZpRhedZJphNJqmZg==", + "devOptional": true + }, + "@tsconfig/node12": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.9.tgz", + "integrity": "sha512-/yBMcem+fbvhSREH+s14YJi18sp7J9jpuhYByADT2rypfajMZZN4WQ6zBGgBKp53NKmqI36wFYDb3yaMPurITw==", + "devOptional": true + }, + "@tsconfig/node14": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.1.tgz", + "integrity": "sha512-509r2+yARFfHHE7T6Puu2jjkoycftovhXRqW328PDXTVGKihlb1P8Z9mMZH04ebyajfRY7dedfGynlrFHJUQCg==", + "devOptional": true + }, + "@tsconfig/node16": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.2.tgz", + "integrity": "sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA==", + "devOptional": true + }, + "@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "requires": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "requires": { + "@types/node": "*" + } + }, + "@types/cors": { + "version": "2.8.12", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", + "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", + "dev": true + }, + "@types/eccrypto": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@types/eccrypto/-/eccrypto-1.1.3.tgz", + "integrity": "sha512-3O0qER6JMYReqVbcQTGmXeMHdw3O+rVps63tlo5g5zoB3altJS8yzSvboSivwVWeYO9o5jSATu7P0UIqYZPgow==", + "dev": true, + "requires": { + "@types/expect": "^1.20.4", + "@types/node": "*" + } + }, + "@types/expect": { + "version": "1.20.4", + "resolved": "https://registry.npmjs.org/@types/expect/-/expect-1.20.4.tgz", + "integrity": "sha512-Q5Vn3yjTDyCMV50TB6VRIbQNxSE4OmZR86VSbGaNpfUolm0iePBB4KdEEHmxoY5sT2+2DIvXW0rvMDP2nHZ4Mg==", + "dev": true + }, + "@types/express": { + "version": "4.17.13", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", + "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", + "requires": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.18", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "@types/express-serve-static-core": { + "version": "4.17.28", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.28.tgz", + "integrity": "sha512-P1BJAEAW3E2DJUlkgq4tOL3RyMunoWXqbSCygWo5ZIWTjUgN1YnaXWW4VWl/oc8vs/XoYibEGBKP0uZyF4AHig==", + "requires": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", + "dev": true + }, + "@types/lodash": { + "version": "4.14.182", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.182.tgz", + "integrity": "sha512-/THyiqyQAP9AfARo4pF+aCGcyiQ94tX/Is2I7HofNRqoYLgN1PBoOWu2/zTA5zMxzP5EFutMtWtGAFRKUe961Q==", + "dev": true + }, + "@types/long": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz", + "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==" + }, + "@types/mime": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", + "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==" + }, + "@types/node": { + "version": "16.18.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.3.tgz", + "integrity": "sha512-jh6m0QUhIRcZpNv7Z/rpN+ZWXOicUUQbSoWks7Htkbb9IjFQj4kzcX/xFCkjstCj5flMsN8FiSvt+q+Tcs4Llg==" + }, + "@types/object-hash": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/@types/object-hash/-/object-hash-1.3.4.tgz", + "integrity": "sha512-xFdpkAkikBgqBdG9vIlsqffDV8GpvnPEzs0IUtr1v3BEB97ijsFQ4RXVbUZwjFThhB4MDSTUfvmxUD5PGx0wXA==" + }, + "@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" + }, + "@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" + }, + "@types/secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==", + "requires": { + "@types/node": "*" + } + }, + "@types/serve-static": { + "version": "1.13.10", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz", + "integrity": "sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==", + "requires": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "@types/uuid": { + "version": "8.3.4", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.4.tgz", + "integrity": "sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw==", + "dev": true + }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, + "accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "requires": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + } + }, + "acorn": { + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", + "devOptional": true + }, + "acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "devOptional": true + }, + "agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "requires": { + "debug": "4" + }, + "dependencies": { + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } + } + }, + "agentkeepalive": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", + "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", + "optional": true, + "requires": { + "debug": "^4.1.0", + "depd": "^1.1.2", + "humanize-ms": "^1.2.1" + }, + "dependencies": { + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "optional": true, + "requires": { + "ms": "2.1.2" + } + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "optional": true + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "optional": true + } + } + }, + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "optional": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==" + }, + "app-root-path": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/app-root-path/-/app-root-path-3.1.0.tgz", + "integrity": "sha512-biN3PwB2gUtjaYy/isrU3aNWI5w+fAfvHkSvCKeQGxhmYpwKFUxudR3Yya+KqVRHBmEDYh+/lTozYCFbmzX4nA==" + }, + "aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==" + }, + "are-we-there-yet": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", + "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "requires": { + "safe-buffer": "~5.2.0" + } + } + } + }, + "arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "devOptional": true + }, + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "axios": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", + "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", + "requires": { + "follow-redirects": "^1.14.9", + "form-data": "^4.0.0" + } + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, + "bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "optional": true, + "requires": { + "file-uri-to-path": "1.0.0" + } + }, + "bip66": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/bip66/-/bip66-1.1.5.tgz", + "integrity": "sha1-AfqHSHhcpwlV1QESF9GzE5lpyiI=", + "optional": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "body-parser": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", + "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", + "requires": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.10.3", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "optional": true, + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "buffer-writer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/buffer-writer/-/buffer-writer-2.0.0.tgz", + "integrity": "sha512-a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw==" + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "optional": true + }, + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" + }, + "cacache": { + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", + "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", + "optional": true, + "requires": { + "@npmcli/fs": "^1.0.0", + "@npmcli/move-file": "^1.0.1", + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "glob": "^7.1.4", + "infer-owner": "^1.0.4", + "lru-cache": "^6.0.0", + "minipass": "^3.1.1", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^1.0.3", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.0.2", + "unique-filename": "^1.1.1" + } + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "optional": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "optional": true + }, + "cli-highlight": { + "version": "2.1.11", + "resolved": "https://registry.npmjs.org/cli-highlight/-/cli-highlight-2.1.11.tgz", + "integrity": "sha512-9KDcoEVwyUXrjcJNvHD0NFc/hiwe/WPVYIleQh2O1N2Zro5gWJZ/K+3DGn8w8P/F6FxOgzyC5bxDyHIgCSPhGg==", + "requires": { + "chalk": "^4.0.0", + "highlight.js": "^10.7.1", + "mz": "^2.4.0", + "parse5": "^5.1.1", + "parse5-htmlparser2-tree-adapter": "^6.0.0", + "yargs": "^16.0.0" + } + }, + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==" + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, + "content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "requires": { + "safe-buffer": "5.2.1" + } + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + }, + "cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==" + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "copyfiles": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/copyfiles/-/copyfiles-2.4.1.tgz", + "integrity": "sha512-fereAvAvxDrQDOXybk3Qu3dPbOoKoysFMWtkY3mv5BsL8//OSZVL5DCLYqgRfY5cWirgRzlC+WSrxp6Bo3eNZg==", + "requires": { + "glob": "^7.0.5", + "minimatch": "^3.0.3", + "mkdirp": "^1.0.4", + "noms": "0.0.0", + "through2": "^2.0.1", + "untildify": "^4.0.0", + "yargs": "^16.1.0" + } + }, + "core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "requires": { + "object-assign": "^4", + "vary": "^1" + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "optional": true, + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "optional": true, + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "devOptional": true + }, + "dataloader": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/dataloader/-/dataloader-1.4.0.tgz", + "integrity": "sha512-68s5jYdlvasItOJnCuI2Q9s4q98g0pCyL3HrcKJu8KNugUl8ahgmZYg38ysLTgQjjXX3H8CJLkAvWrclWfcalw==" + }, + "date-fns": { + "version": "2.29.3", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.29.3.tgz", + "integrity": "sha512-dDCnyH2WnnKusqvZZ6+jA1O51Ibt8ZMRNkDZdyAyK4YfbDwa/cEmuztzG5pk6hqlp9aSBPYcjOlktquahGwGeA==" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, + "depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" + }, + "destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" + }, + "detect-libc": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", + "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==" + }, + "diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "devOptional": true + }, + "dotenv": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.0.tgz", + "integrity": "sha512-qD9WU0MPM4SWLPJy/r2Be+2WgQj8plChsyrCNQzW/0WjvcJQiKQJ9mH3ZgB3fxbUUxgc/11ZJ0Fi5KiimWGz2Q==" + }, + "drbg.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/drbg.js/-/drbg.js-1.0.1.tgz", + "integrity": "sha1-Pja2xCs3BDgjzbwzLVjzHiRFSAs=", + "optional": true, + "requires": { + "browserify-aes": "^1.0.6", + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4" + } + }, + "eccrypto": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/eccrypto/-/eccrypto-1.1.6.tgz", + "integrity": "sha512-d78ivVEzu7Tn0ZphUUaL43+jVPKTMPFGtmgtz1D0LrFn7cY3K8CdrvibuLz2AAkHBLKZtR8DMbB2ukRYFk987A==", + "requires": { + "acorn": "7.1.1", + "elliptic": "6.5.4", + "es6-promise": "4.2.8", + "nan": "2.14.0", + "secp256k1": "3.7.1" + }, + "dependencies": { + "acorn": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz", + "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==" + }, + "secp256k1": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-3.7.1.tgz", + "integrity": "sha512-1cf8sbnRreXrQFdH6qsg2H71Xw91fCCS9Yp021GnUNJzWJS/py96fS4lHbnTnouLp08Xj6jBoBB6V78Tdbdu5g==", + "optional": true, + "requires": { + "bindings": "^1.5.0", + "bip66": "^1.1.5", + "bn.js": "^4.11.8", + "create-hash": "^1.2.0", + "drbg.js": "^1.0.1", + "elliptic": "^6.4.1", + "nan": "^2.14.0", + "safe-buffer": "^5.1.2" + } + } + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "requires": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" + }, + "encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "optional": true, + "requires": { + "iconv-lite": "^0.6.2" + }, + "dependencies": { + "iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + } + } + }, + "env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "optional": true + }, + "err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "optional": true + }, + "es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "optional": true, + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "express": { + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", + "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", + "requires": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.0", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.10.3", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + } + }, + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "optional": true + }, + "finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + } + }, + "follow-redirects": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.0.tgz", + "integrity": "sha512-aExlJShTV4qOUOL7yF1U5tvLCB0xQuudbf6toyYA0E/acBNw71mvjFTnLaRp50aQaYocMR0a/RMMBIHeZnGyjQ==" + }, + "form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, + "forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + }, + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "requires": { + "minipass": "^3.0.0" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "gauge": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", + "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", + "requires": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.2", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.1", + "object-assign": "^4.1.1", + "signal-exit": "^3.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.2" + } + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" + }, + "get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + } + }, + "glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "optional": true + }, + "grpc-tools": { + "version": "1.11.2", + "resolved": "https://registry.npmjs.org/grpc-tools/-/grpc-tools-1.11.2.tgz", + "integrity": "sha512-4+EgpnnkJraamY++oyBCw5Hp9huRYfgakjNVKbiE3PgO9Tv5ydVlRo7ZyGJ0C0SEiA7HhbVc1sNNtIyK7FiEtg==", + "requires": { + "@mapbox/node-pre-gyp": "^1.0.5" + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, + "hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "optional": true, + "requires": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "optional": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "optional": true, + "requires": { + "safe-buffer": "~5.2.0" + } + } + } + }, + "hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "highlight.js": { + "version": "10.7.3", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.3.tgz", + "integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==" + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", + "optional": true + }, + "http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "requires": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + } + }, + "http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "optional": true, + "requires": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "dependencies": { + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "optional": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "optional": true + } + } + }, + "https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "requires": { + "agent-base": "6", + "debug": "4" + }, + "dependencies": { + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } + } + }, + "humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", + "optional": true, + "requires": { + "ms": "^2.0.0" + } + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "optional": true + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "optional": true + }, + "infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "optional": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "ip": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", + "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", + "optional": true + }, + "ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", + "optional": true + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "optional": true + }, + "js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "requires": { + "argparse": "^2.0.1" + } + }, + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=" + }, + "long": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", + "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "requires": { + "semver": "^6.0.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "devOptional": true + }, + "make-fetch-happen": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz", + "integrity": "sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg==", + "optional": true, + "requires": { + "agentkeepalive": "^4.1.3", + "cacache": "^15.2.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^6.0.0", + "minipass": "^3.1.3", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^1.3.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.2", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^6.0.0", + "ssri": "^8.0.0" + } + }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "optional": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "requires": { + "mime-db": "1.52.0" + } + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", + "dev": true + }, + "minipass": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", + "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", + "requires": { + "yallist": "^4.0.0" + } + }, + "minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "optional": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-fetch": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.4.1.tgz", + "integrity": "sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==", + "optional": true, + "requires": { + "encoding": "^0.1.12", + "minipass": "^3.1.0", + "minipass-sized": "^1.0.3", + "minizlib": "^2.0.0" + } + }, + "minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "optional": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "optional": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "optional": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "requires": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + } + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "requires": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "nan": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", + "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==" + }, + "negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" + }, + "node-addon-api": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", + "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" + }, + "node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "requires": { + "whatwg-url": "^5.0.0" + } + }, + "node-gyp": { + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-8.4.1.tgz", + "integrity": "sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w==", + "optional": true, + "requires": { + "env-paths": "^2.2.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^9.1.0", + "nopt": "^5.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "dependencies": { + "are-we-there-yet": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", + "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", + "optional": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + } + }, + "gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "optional": true, + "requires": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + } + }, + "npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "optional": true, + "requires": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + } + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "optional": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "optional": true, + "requires": { + "safe-buffer": "~5.2.0" + } + } + } + }, + "node-gyp-build": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.4.0.tgz", + "integrity": "sha512-amJnQCcgtRVw9SvoebO3BKGESClrfXGCUTX9hSn1OuGQTQBOZmVd0Z0OlecpuRksKvbsUqALE8jls/ErClAPuQ==" + }, + "noms": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/noms/-/noms-0.0.0.tgz", + "integrity": "sha1-2o69nzr51nYJGbJ9nNyAkqczKFk=", + "requires": { + "inherits": "^2.0.1", + "readable-stream": "~1.0.31" + } + }, + "nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "requires": { + "abbrev": "1" + } + }, + "npmlog": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", + "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", + "requires": { + "are-we-there-yet": "^2.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^3.0.0", + "set-blocking": "^2.0.0" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "object-hash": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-1.3.1.tgz", + "integrity": "sha512-OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA==" + }, + "object-inspect": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz", + "integrity": "sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==" + }, + "on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "requires": { + "ee-first": "1.1.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "optional": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "packet-reader": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/packet-reader/-/packet-reader-1.0.0.tgz", + "integrity": "sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ==" + }, + "parse5": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", + "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==" + }, + "parse5-htmlparser2-tree-adapter": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", + "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", + "requires": { + "parse5": "^6.0.1" + }, + "dependencies": { + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + } + } + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + }, + "pg": { + "version": "8.8.0", + "resolved": "https://registry.npmjs.org/pg/-/pg-8.8.0.tgz", + "integrity": "sha512-UXYN0ziKj+AeNNP7VDMwrehpACThH7LUl/p8TDFpEUuSejCUIwGSfxpHsPvtM6/WXFy6SU4E5RG4IJV/TZAGjw==", + "requires": { + "buffer-writer": "2.0.0", + "packet-reader": "1.0.0", + "pg-connection-string": "^2.5.0", + "pg-pool": "^3.5.2", + "pg-protocol": "^1.5.0", + "pg-types": "^2.1.0", + "pgpass": "1.x" + } + }, + "pg-connection-string": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/pg-connection-string/-/pg-connection-string-2.5.0.tgz", + "integrity": "sha512-r5o/V/ORTA6TmUnyWZR9nCj1klXCO2CEKNRlVuJptZe85QuhFayC7WeMic7ndayT5IRIR0S0xFxFi2ousartlQ==" + }, + "pg-int8": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/pg-int8/-/pg-int8-1.0.1.tgz", + "integrity": "sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==" + }, + "pg-pool": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/pg-pool/-/pg-pool-3.5.2.tgz", + "integrity": "sha512-His3Fh17Z4eg7oANLob6ZvH8xIVen3phEZh2QuyrIl4dQSDVEabNducv6ysROKpDNPSD+12tONZVWfSgMvDD9w==", + "requires": {} + }, + "pg-protocol": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/pg-protocol/-/pg-protocol-1.5.0.tgz", + "integrity": "sha512-muRttij7H8TqRNu/DxrAJQITO4Ac7RmX3Klyr/9mJEOBeIpgnF8f9jAfRz5d3XwQZl5qBjF9gLsUtMPJE0vezQ==" + }, + "pg-types": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/pg-types/-/pg-types-2.2.0.tgz", + "integrity": "sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==", + "requires": { + "pg-int8": "1.0.1", + "postgres-array": "~2.0.0", + "postgres-bytea": "~1.0.0", + "postgres-date": "~1.0.4", + "postgres-interval": "^1.1.0" + } + }, + "pgpass": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/pgpass/-/pgpass-1.0.5.tgz", + "integrity": "sha512-FdW9r/jQZhSeohs1Z3sI1yxFQNFvMcnmfuj4WBMUTxOrAyLMaTcE1aAMBiTlbMNaXvBCQuVi0R7hd8udDSP7ug==", + "requires": { + "split2": "^4.1.0" + } + }, + "postgres-array": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postgres-array/-/postgres-array-2.0.0.tgz", + "integrity": "sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==" + }, + "postgres-bytea": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/postgres-bytea/-/postgres-bytea-1.0.0.tgz", + "integrity": "sha512-xy3pmLuQqRBZBXDULy7KbaitYqLcmxigw14Q5sj8QBVLqEwXfeybIKVWiqAXTlcvdvb0+xkOtDbfQMOf4lST1w==" + }, + "postgres-date": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/postgres-date/-/postgres-date-1.0.7.tgz", + "integrity": "sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q==" + }, + "postgres-interval": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/postgres-interval/-/postgres-interval-1.2.0.tgz", + "integrity": "sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==", + "requires": { + "xtend": "^4.0.0" + } + }, + "prettier": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.6.2.tgz", + "integrity": "sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew==" + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", + "optional": true + }, + "promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "optional": true, + "requires": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + } + }, + "protobufjs": { + "version": "6.11.2", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.2.tgz", + "integrity": "sha512-4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw==", + "requires": { + "@protobufjs/aspromise": "^1.1.2", + "@protobufjs/base64": "^1.1.2", + "@protobufjs/codegen": "^2.0.4", + "@protobufjs/eventemitter": "^1.1.0", + "@protobufjs/fetch": "^1.1.0", + "@protobufjs/float": "^1.0.2", + "@protobufjs/inquire": "^1.1.0", + "@protobufjs/path": "^1.1.2", + "@protobufjs/pool": "^1.1.0", + "@protobufjs/utf8": "^1.1.0", + "@types/long": "^4.0.1", + "@types/node": ">=13.7.0", + "long": "^4.0.0" + } + }, + "proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "requires": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + } + }, + "qs": { + "version": "6.10.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", + "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", + "requires": { + "side-channel": "^1.0.4" + } + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" + }, + "raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "requires": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + } + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "reflect-metadata": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", + "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==" + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" + }, + "retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "optional": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "requires": { + "glob": "^7.1.3" + } + }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "optional": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "rxjs": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", + "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", + "requires": { + "tslib": "^2.1.0" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==", + "requires": { + "elliptic": "^6.5.4", + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0" + } + }, + "semver": { + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "requires": { + "lru-cache": "^6.0.0" + } + }, + "send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "requires": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "dependencies": { + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + } + } + }, + "serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + } + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "optional": true + }, + "socks": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", + "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", + "optional": true, + "requires": { + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" + } + }, + "socks-proxy-agent": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.2.1.tgz", + "integrity": "sha512-a6KW9G+6B3nWZ1yB8G7pJwL3ggLy1uTzKAgCb7ttblwqdz9fMGJUuTy3uFzEP48FAs9FLILlmzDlE2JJhVQaXQ==", + "optional": true, + "requires": { + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" + }, + "dependencies": { + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "optional": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "optional": true + } + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "split2": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-4.1.0.tgz", + "integrity": "sha512-VBiJxFkxiXRlUIeyMQi8s4hgvKCSjtknJv/LVYbrgALPwf5zSKmEwV9Lst25AkvMDnvxODugjdl6KZgwKM1WYQ==" + }, + "sqlite3": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/sqlite3/-/sqlite3-5.1.2.tgz", + "integrity": "sha512-D0Reg6pRWAFXFUnZKsszCI67tthFD8fGPewRddDCX6w4cYwz3MbvuwRICbL+YQjBAh9zbw+lJ/V9oC8nG5j6eg==", + "requires": { + "@mapbox/node-pre-gyp": "^1.0.0", + "node-addon-api": "^4.2.0", + "node-gyp": "8.x", + "tar": "^6.1.11" + }, + "dependencies": { + "node-addon-api": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-4.3.0.tgz", + "integrity": "sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==" + } + } + }, + "ssri": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", + "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", + "optional": true, + "requires": { + "minipass": "^3.1.1" + } + }, + "statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "requires": { + "has-flag": "^4.0.0" + } + }, + "tar": { + "version": "6.1.11", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", + "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "requires": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + } + }, + "testyts": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/testyts/-/testyts-1.5.0.tgz", + "integrity": "sha512-ww6zqyf5kN7NFqaJ0ODX4tRTLKs5RNhHPGJCv4tw5qDU9bdhNXSbuqqjbgMe1YSWjBuSDT6o3XTnNCehrJGwPQ==", + "dev": true, + "requires": { + "commander": "^4.1.1", + "glob": "^7.1.6", + "reflect-metadata": "^0.1.12", + "ts-node": "^7.0.1", + "tsconfig-paths": "^3.9.0", + "typescript": "^3.8.3" + }, + "dependencies": { + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + }, + "ts-node": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz", + "integrity": "sha512-BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw==", + "dev": true, + "requires": { + "arrify": "^1.0.0", + "buffer-from": "^1.1.0", + "diff": "^3.1.0", + "make-error": "^1.1.1", + "minimist": "^1.2.0", + "mkdirp": "^0.5.1", + "source-map-support": "^0.5.6", + "yn": "^2.0.0" + } + }, + "typescript": { + "version": "3.9.10", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", + "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", + "dev": true + }, + "yn": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz", + "integrity": "sha1-5a2ryKz0CPY4X8dklWhMiOavaJo=", + "dev": true + } + } + }, + "thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "requires": { + "any-promise": "^1.0.0" + } + }, + "thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "requires": { + "thenify": ">= 3.1.0 < 4" + } + }, + "through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "requires": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" + }, + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" + }, + "ts-node": { + "version": "10.7.0", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.7.0.tgz", + "integrity": "sha512-TbIGS4xgJoX2i3do417KSaep1uRAW/Lu+WAL2doDHC0D6ummjirVOXU5/7aiZotbQ5p1Zp9tP7U6cYhA0O7M8A==", + "devOptional": true, + "requires": { + "@cspotcode/source-map-support": "0.7.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.0", + "yn": "3.1.1" + } + }, + "ts-poet": { + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/ts-poet/-/ts-poet-4.11.0.tgz", + "integrity": "sha512-OaXnCKsRs0yrc0O7LFhnq/US2DB4Wd313cS+qjG2XMksZ74pF/jvMHkJdURXJiAo4kSahL2N4e8JOdwUjOMNdw==", + "requires": { + "lodash": "^4.17.15", + "prettier": "^2.5.1" + } + }, + "ts-proto": { + "version": "1.112.1", + "resolved": "https://registry.npmjs.org/ts-proto/-/ts-proto-1.112.1.tgz", + "integrity": "sha512-pMqPsgehCR5lNHYrSCfaC7Vx5RXLxTk0MQFvC69+9E4x6yvAed3orCLAWZ1VvPug02bBK5J5vV8JJLS3+FnnUA==", + "requires": { + "@types/object-hash": "^1.3.0", + "dataloader": "^1.4.0", + "object-hash": "^1.3.1", + "protobufjs": "^6.8.8", + "ts-poet": "^4.11.0", + "ts-proto-descriptors": "1.6.0" + } + }, + "ts-proto-descriptors": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/ts-proto-descriptors/-/ts-proto-descriptors-1.6.0.tgz", + "integrity": "sha512-Vrhue2Ti99us/o76mGy28nF3W/Uanl1/8detyJw2yyRwiBC5yxy+hEZqQ/ZX2PbZ1vyCpJ51A9L4PnCCnkBMTQ==", + "requires": { + "long": "^4.0.0", + "protobufjs": "^6.8.8" + } + }, + "tsconfig-paths": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", + "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", + "dev": true, + "requires": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" + }, + "type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, + "typeorm": { + "version": "0.3.10", + "resolved": "https://registry.npmjs.org/typeorm/-/typeorm-0.3.10.tgz", + "integrity": "sha512-VMKiM84EpJQ+Mz9xDIPqnfplWhyUy1d8ccaKdMY9obifxJOTFnv8GYVyPsGwG8Lk7Nb8MlttHyHWENGAhBA3WA==", + "requires": { + "@sqltools/formatter": "^1.2.2", + "app-root-path": "^3.0.0", + "buffer": "^6.0.3", + "chalk": "^4.1.0", + "cli-highlight": "^2.1.11", + "date-fns": "^2.28.0", + "debug": "^4.3.3", + "dotenv": "^16.0.0", + "glob": "^7.2.0", + "js-yaml": "^4.1.0", + "mkdirp": "^1.0.4", + "reflect-metadata": "^0.1.13", + "sha.js": "^2.4.11", + "tslib": "^2.3.1", + "uuid": "^8.3.2", + "xml2js": "^0.4.23", + "yargs": "^17.3.1" + }, + "dependencies": { + "cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + } + }, + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "yargs": { + "version": "17.6.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.1.tgz", + "integrity": "sha512-leBuCGrL4dAd6ispNOGsJlhd0uZ6Qehkbu/B9KCR+Pxa/NVdNwi+i31lo0buCm6XxhJQFshXCD0/evfV4xfoUg==", + "requires": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.0.0" + } + }, + "yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==" + } + } + }, + "typescript": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.2.tgz", + "integrity": "sha512-5BlMof9H1yGt0P8/WF+wPNw6GfctgGjXp5hkblpyT+8rkASSmkUKMXrxR0Xg8ThVCi/JnHQiKXeBaEwCeQwMFw==", + "devOptional": true + }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "optional": true, + "requires": { + "unique-slug": "^2.0.0" + } + }, + "unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "optional": true, + "requires": { + "imurmurhash": "^0.1.4" + } + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + }, + "untildify": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", + "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==" + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + }, + "v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "devOptional": true + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + }, + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" + }, + "whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", + "requires": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "optional": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "requires": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "xml2js": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", + "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", + "requires": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + } + }, + "xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" + }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } + }, + "yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" + }, + "yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "devOptional": true } - }, - "ts-poet": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/ts-poet/-/ts-poet-4.11.0.tgz", - "integrity": "sha512-OaXnCKsRs0yrc0O7LFhnq/US2DB4Wd313cS+qjG2XMksZ74pF/jvMHkJdURXJiAo4kSahL2N4e8JOdwUjOMNdw==", - "requires": { - "lodash": "^4.17.15", - "prettier": "^2.5.1" - } - }, - "ts-proto": { - "version": "1.112.1", - "resolved": "https://registry.npmjs.org/ts-proto/-/ts-proto-1.112.1.tgz", - "integrity": "sha512-pMqPsgehCR5lNHYrSCfaC7Vx5RXLxTk0MQFvC69+9E4x6yvAed3orCLAWZ1VvPug02bBK5J5vV8JJLS3+FnnUA==", - "requires": { - "@types/object-hash": "^1.3.0", - "dataloader": "^1.4.0", - "object-hash": "^1.3.1", - "protobufjs": "^6.8.8", - "ts-poet": "^4.11.0", - "ts-proto-descriptors": "1.6.0" - } - }, - "ts-proto-descriptors": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/ts-proto-descriptors/-/ts-proto-descriptors-1.6.0.tgz", - "integrity": "sha512-Vrhue2Ti99us/o76mGy28nF3W/Uanl1/8detyJw2yyRwiBC5yxy+hEZqQ/ZX2PbZ1vyCpJ51A9L4PnCCnkBMTQ==", - "requires": { - "long": "^4.0.0", - "protobufjs": "^6.8.8" - } - }, - "tsconfig-paths": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", - "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", - "dev": true, - "requires": { - "@types/json5": "^0.0.29", - "json5": "^1.0.1", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - }, - "tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" - }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - } - }, - "typescript": { - "version": "4.6.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz", - "integrity": "sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==" - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" - }, - "untildify": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", - "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==" - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" - }, - "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" - }, - "v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==" - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" - }, - "webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" - }, - "whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - } - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" - }, - "yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==" - } - } + } } diff --git a/package.json b/package.json index 07d9eff1..edf745ea 100644 --- a/package.json +++ b/package.json @@ -1,52 +1,62 @@ { - "name": "lightning.pub", - "version": "1.0.0", - "description": "", - "main": "index.js", - "scripts": { - "test": "tsc && testyts", - "start": "tsc && ts-node src/index", - "build_autogenerated": "cd proto && rimraf autogenerated && protoc -I ./service --pub_out=. service/*", - "build_lnd_client_1": "cd proto && protoc -I ./others --plugin=.\\node_modules\\.bin\\protoc-gen-ts_proto.cmd --ts_proto_out=./lnd --ts_proto_opt=esModuleInterop=true others/* ", - "build_lnd_client": "cd proto && rimraf lnd/* && npx protoc --ts_out ./lnd --ts_opt long_type_string --proto_path others others/* " - }, - "repository": { - "type": "git", - "url": "git+https://github.com/shocknet/Lightning.Pub.git" - }, - "author": "", - "license": "ISC", - "bugs": { - "url": "https://github.com/shocknet/Lightning.Pub/issues" - }, - "homepage": "https://github.com/shocknet/Lightning.Pub#readme", - "dependencies": { - "@grpc/grpc-js": "^1.6.7", - "@protobuf-ts/grpc-transport": "^2.5.0", - "@protobuf-ts/plugin": "^2.5.0", - "@protobuf-ts/runtime": "^2.5.0", - "@types/express": "^4.17.13", - "@types/node": "^17.0.31", - "@types/secp256k1": "^4.0.3", - "axios": "^0.27.2", - "copyfiles": "^2.4.1", - "dotenv": "^16.0.0", - "eccrypto": "^1.1.6", - "express": "^4.18.1", - "grpc-tools": "^1.11.2", - "lodash": "^4.17.21", - "rimraf": "^3.0.2", - "rxjs": "^7.5.5", - "secp256k1": "^4.0.3", - "ts-node": "^10.7.0", - "ts-proto": "^1.112.1", - "typescript": "^4.6.4", - "uuid": "^8.3.2" - }, - "devDependencies": { - "@types/eccrypto": "^1.1.3", - "@types/lodash": "^4.14.182", - "@types/uuid": "^8.3.4", - "testyts": "^1.5.0" - } -} + "name": "lightning.pub", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "tsc && testyts", + "start": "ts-node src/index.ts", + "build_autogenerated": "cd proto && rimraf autogenerated && protoc -I ./service --pub_out=. service/*", + "build_lnd_client_1": "cd proto && protoc -I ./others --plugin=.\\node_modules\\.bin\\protoc-gen-ts_proto.cmd --ts_proto_out=./lnd --ts_proto_opt=esModuleInterop=true others/* ", + "build_lnd_client": "cd proto && rimraf lnd/* && npx protoc --ts_out ./lnd --ts_opt long_type_string --proto_path others others/* ", + "typeorm": "typeorm-ts-node-commonjs" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/shocknet/Lightning.Pub.git" + }, + "author": "", + "license": "ISC", + "bugs": { + "url": "https://github.com/shocknet/Lightning.Pub/issues" + }, + "homepage": "https://github.com/shocknet/Lightning.Pub#readme", + "dependencies": { + "@grpc/grpc-js": "^1.6.7", + "@protobuf-ts/grpc-transport": "^2.5.0", + "@protobuf-ts/plugin": "^2.5.0", + "@protobuf-ts/runtime": "^2.5.0", + "@types/express": "^4.17.13", + "@types/node": "^17.0.31", + "@types/secp256k1": "^4.0.3", + "axios": "^0.27.2", + "copyfiles": "^2.4.1", + "cors": "^2.8.5", + "dotenv": "^16.0.0", + "eccrypto": "^1.1.6", + "express": "^4.18.1", + "grpc-tools": "^1.11.2", + "lodash": "^4.17.21", + "reflect-metadata": "^0.1.13", + "rimraf": "^3.0.2", + "rxjs": "^7.5.5", + "secp256k1": "^4.0.3", + "sqlite3": "^5.1.2", + "ts-node": "^10.7.0", + "ts-proto": "^1.112.1", + "typeorm": "0.3.10", + "typescript": "^4.6.4", + "uuid": "^8.3.2", + "pg": "^8.4.0" + }, + "devDependencies": { + "@types/cors": "^2.8.12", + "@types/eccrypto": "^1.1.3", + "@types/lodash": "^4.14.182", + "@types/uuid": "^8.3.4", + "testyts": "^1.5.0", + "ts-node": "10.7.0", + "@types/node": "^16.11.10", + "typescript": "4.5.2" + } +} \ No newline at end of file diff --git a/proto/autogenerated/debug.txt b/proto/autogenerated/debug.txt index 6e914e55..deef9c2a 100644 --- a/proto/autogenerated/debug.txt +++ b/proto/autogenerated/debug.txt @@ -1,5 +1,5 @@ -([]*main.Method) (len=3 cap=4) { - (*main.Method)(0xc00029e730)({ +([]*main.Method) (len=11 cap=16) { + (*main.Method)(0xc0002b6730)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -9,23 +9,23 @@ name: (string) (len=5) "Empty", hasZeroFields: (bool) true }, - opts: (*main.methodOptions)(0xc000039b60)({ - authType: (*main.supportedAuth)(0xc0003a2b40)({ - id: (string) (len=7) "no_auth", - name: (string) (len=6) "NoAuth", + opts: (*main.methodOptions)(0xc0003f2480)({ + authType: (*main.supportedAuth)(0xc0003c3dd0)({ + id: (string) (len=5) "guest", + name: (string) (len=5) "Guest", encrypted: (bool) false, context: (map[string]string) { } }), method: (string) (len=3) "get", route: (main.decodedRoute) { - route: (string) (len=7) "/health", + route: (string) (len=11) "/api/health", params: ([]string) }, query: ([]string) }) }), - (*main.Method)(0xc00029e780)({ + (*main.Method)(0xc0002b6780)({ in: (main.MethodMessage) { name: (string) (len=25) "EncryptionExchangeRequest", hasZeroFields: (bool) false @@ -35,10 +35,10 @@ name: (string) (len=5) "Empty", hasZeroFields: (bool) true }, - opts: (*main.methodOptions)(0xc000039ce0)({ - authType: (*main.supportedAuth)(0xc0003a2c00)({ - id: (string) (len=7) "no_auth", - name: (string) (len=6) "NoAuth", + opts: (*main.methodOptions)(0xc0003f2600)({ + authType: (*main.supportedAuth)(0xc0003c3ec0)({ + id: (string) (len=5) "guest", + name: (string) (len=5) "Guest", encrypted: (bool) false, context: (map[string]string) { } @@ -51,27 +51,242 @@ query: ([]string) }) }), - (*main.Method)(0xc00029e7d0)({ + (*main.Method)(0xc0002b67d0)({ in: (main.MethodMessage) { - name: (string) (len=5) "Empty", - hasZeroFields: (bool) true + name: (string) (len=17) "LndGetInfoRequest", + hasZeroFields: (bool) false }, name: (string) (len=10) "LndGetInfo", out: (main.MethodMessage) { name: (string) (len=18) "LndGetInfoResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc000039e60)({ - authType: (*main.supportedAuth)(0xc0003a2cc0)({ - id: (string) (len=7) "no_auth", - name: (string) (len=6) "NoAuth", + opts: (*main.methodOptions)(0xc0003f2780)({ + authType: (*main.supportedAuth)(0xc0003c3f80)({ + id: (string) (len=5) "admin", + name: (string) (len=5) "Admin", + encrypted: (bool) true, + context: (map[string]string) (len=1) { + (string) (len=8) "admin_id": (string) (len=6) "string" + } + }), + method: (string) (len=4) "post", + route: (main.decodedRoute) { + route: (string) (len=16) "/api/lnd/getinfo", + params: ([]string) + }, + query: ([]string) + }) + }), + (*main.Method)(0xc0002b6820)({ + in: (main.MethodMessage) { + name: (string) (len=14) "AddUserRequest", + hasZeroFields: (bool) false + }, + name: (string) (len=7) "AddUser", + out: (main.MethodMessage) { + name: (string) (len=15) "AddUserResponse", + hasZeroFields: (bool) false + }, + opts: (*main.methodOptions)(0xc0003f2900)({ + authType: (*main.supportedAuth)(0xc0003fe060)({ + id: (string) (len=5) "guest", + name: (string) (len=5) "Guest", encrypted: (bool) false, context: (map[string]string) { } }), - method: (string) (len=3) "get", + method: (string) (len=4) "post", route: (main.decodedRoute) { - route: (string) (len=16) "/api/lnd/getinfo", + route: (string) (len=13) "/api/user/add", + params: ([]string) + }, + query: ([]string) + }) + }), + (*main.Method)(0xc0002b6870)({ + in: (main.MethodMessage) { + name: (string) (len=15) "AuthUserRequest", + hasZeroFields: (bool) false + }, + name: (string) (len=8) "AuthUser", + out: (main.MethodMessage) { + name: (string) (len=16) "AuthUserResponse", + hasZeroFields: (bool) false + }, + opts: (*main.methodOptions)(0xc0003f2a80)({ + authType: (*main.supportedAuth)(0xc0003fe120)({ + id: (string) (len=5) "guest", + name: (string) (len=5) "Guest", + encrypted: (bool) false, + context: (map[string]string) { + } + }), + method: (string) (len=4) "post", + route: (main.decodedRoute) { + route: (string) (len=14) "/api/user/auth", + params: ([]string) + }, + query: ([]string) + }) + }), + (*main.Method)(0xc0002b6910)({ + in: (main.MethodMessage) { + name: (string) (len=5) "Empty", + hasZeroFields: (bool) true + }, + name: (string) (len=10) "NewAddress", + out: (main.MethodMessage) { + name: (string) (len=18) "NewAddressResponse", + hasZeroFields: (bool) false + }, + opts: (*main.methodOptions)(0xc0003f2c00)({ + authType: (*main.supportedAuth)(0xc0003fe1e0)({ + id: (string) (len=4) "user", + name: (string) (len=4) "User", + encrypted: (bool) false, + context: (map[string]string) (len=1) { + (string) (len=7) "user_id": (string) (len=6) "string" + } + }), + method: (string) (len=4) "post", + route: (main.decodedRoute) { + route: (string) (len=19) "/api/user/chain/new", + params: ([]string) + }, + query: ([]string) + }) + }), + (*main.Method)(0xc0002b69b0)({ + in: (main.MethodMessage) { + name: (string) (len=17) "PayAddressRequest", + hasZeroFields: (bool) false + }, + name: (string) (len=10) "PayAddress", + out: (main.MethodMessage) { + name: (string) (len=18) "PayAddressResponse", + hasZeroFields: (bool) false + }, + opts: (*main.methodOptions)(0xc0003f2d80)({ + authType: (*main.supportedAuth)(0xc0003fe2a0)({ + id: (string) (len=4) "user", + name: (string) (len=4) "User", + encrypted: (bool) false, + context: (map[string]string) (len=1) { + (string) (len=7) "user_id": (string) (len=6) "string" + } + }), + method: (string) (len=4) "post", + route: (main.decodedRoute) { + route: (string) (len=19) "/api/user/chain/pay", + params: ([]string) + }, + query: ([]string) + }) + }), + (*main.Method)(0xc0002b6a50)({ + in: (main.MethodMessage) { + name: (string) (len=17) "NewInvoiceRequest", + hasZeroFields: (bool) false + }, + name: (string) (len=10) "NewInvoice", + out: (main.MethodMessage) { + name: (string) (len=18) "NewInvoiceResponse", + hasZeroFields: (bool) false + }, + opts: (*main.methodOptions)(0xc0003f2f00)({ + authType: (*main.supportedAuth)(0xc0003fe360)({ + id: (string) (len=4) "user", + name: (string) (len=4) "User", + encrypted: (bool) false, + context: (map[string]string) (len=1) { + (string) (len=7) "user_id": (string) (len=6) "string" + } + }), + method: (string) (len=4) "post", + route: (main.decodedRoute) { + route: (string) (len=21) "/api/user/invoice/new", + params: ([]string) + }, + query: ([]string) + }) + }), + (*main.Method)(0xc0002b6af0)({ + in: (main.MethodMessage) { + name: (string) (len=17) "PayInvoiceRequest", + hasZeroFields: (bool) false + }, + name: (string) (len=10) "PayInvoice", + out: (main.MethodMessage) { + name: (string) (len=18) "PayInvoiceResponse", + hasZeroFields: (bool) false + }, + opts: (*main.methodOptions)(0xc0003f3080)({ + authType: (*main.supportedAuth)(0xc0003fe420)({ + id: (string) (len=4) "user", + name: (string) (len=4) "User", + encrypted: (bool) false, + context: (map[string]string) (len=1) { + (string) (len=7) "user_id": (string) (len=6) "string" + } + }), + method: (string) (len=4) "post", + route: (main.decodedRoute) { + route: (string) (len=21) "/api/user/invoice/pay", + params: ([]string) + }, + query: ([]string) + }) + }), + (*main.Method)(0xc0002b6b90)({ + in: (main.MethodMessage) { + name: (string) (len=18) "OpenChannelRequest", + hasZeroFields: (bool) false + }, + name: (string) (len=11) "OpenChannel", + out: (main.MethodMessage) { + name: (string) (len=19) "OpenChannelResponse", + hasZeroFields: (bool) false + }, + opts: (*main.methodOptions)(0xc0003f3200)({ + authType: (*main.supportedAuth)(0xc0003fe4e0)({ + id: (string) (len=4) "user", + name: (string) (len=4) "User", + encrypted: (bool) false, + context: (map[string]string) (len=1) { + (string) (len=7) "user_id": (string) (len=6) "string" + } + }), + method: (string) (len=4) "post", + route: (main.decodedRoute) { + route: (string) (len=22) "/api/user/open/channel", + params: ([]string) + }, + query: ([]string) + }) + }), + (*main.Method)(0xc0002b6be0)({ + in: (main.MethodMessage) { + name: (string) (len=5) "Empty", + hasZeroFields: (bool) true + }, + name: (string) (len=19) "GetOpenChannelLNURL", + out: (main.MethodMessage) { + name: (string) (len=27) "GetOpenChannelLNURLResponse", + hasZeroFields: (bool) false + }, + opts: (*main.methodOptions)(0xc0003f3380)({ + authType: (*main.supportedAuth)(0xc0003fe5a0)({ + id: (string) (len=4) "user", + name: (string) (len=4) "User", + encrypted: (bool) false, + context: (map[string]string) (len=1) { + (string) (len=7) "user_id": (string) (len=6) "string" + } + }), + method: (string) (len=4) "post", + route: (main.decodedRoute) { + route: (string) (len=23) "/api/user/lnurl_channel", params: ([]string) }, query: ([]string) @@ -81,36 +296,12 @@ ([]*main.Enum) -(map[string]*main.Message) (len=3) { - (string) (len=25) "EncryptionExchangeRequest": (*main.Message)(0xc000238f40)({ - fullName: (string) (len=25) "EncryptionExchangeRequest", - name: (string) (len=25) "EncryptionExchangeRequest", - fields: ([]*main.Field) (len=2 cap=2) { - (*main.Field)(0xc0003a2390)({ - name: (string) (len=10) "public_key", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false - }), - (*main.Field)(0xc0003a23c0)({ - name: (string) (len=9) "device_id", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false - }) - } - }), - (string) (len=18) "LndGetInfoResponse": (*main.Message)(0xc000238f80)({ +(map[string]*main.Message) (len=18) { + (string) (len=18) "LndGetInfoResponse": (*main.Message)(0xc0002470c0)({ fullName: (string) (len=18) "LndGetInfoResponse", name: (string) (len=18) "LndGetInfoResponse", fields: ([]*main.Field) (len=1 cap=1) { - (*main.Field)(0xc0003a23f0)({ + (*main.Field)(0xc0003c3260)({ name: (string) (len=5) "alias", kind: (string) (len=6) "string", isMap: (bool) false, @@ -121,14 +312,335 @@ }) } }), - (string) (len=5) "Empty": (*main.Message)(0xc000238f00)({ + (string) (len=18) "NewInvoiceResponse": (*main.Message)(0xc000247200)({ + fullName: (string) (len=18) "NewInvoiceResponse", + name: (string) (len=18) "NewInvoiceResponse", + fields: ([]*main.Field) (len=1 cap=1) { + (*main.Field)(0xc0003c3380)({ + name: (string) (len=7) "invoice", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }) + } + }), + (string) (len=17) "PayInvoiceRequest": (*main.Message)(0xc000247240)({ + fullName: (string) (len=17) "PayInvoiceRequest", + name: (string) (len=17) "PayInvoiceRequest", + fields: ([]*main.Field) (len=1 cap=1) { + (*main.Field)(0xc0003c33b0)({ + name: (string) (len=6) "invoce", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }) + } + }), + (string) (len=25) "EncryptionExchangeRequest": (*main.Message)(0xc000247040)({ + fullName: (string) (len=25) "EncryptionExchangeRequest", + name: (string) (len=25) "EncryptionExchangeRequest", + fields: ([]*main.Field) (len=2 cap=2) { + (*main.Field)(0xc0003c31d0)({ + name: (string) (len=10) "public_key", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }), + (*main.Field)(0xc0003c3200)({ + name: (string) (len=9) "device_id", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }) + } + }), + (string) (len=17) "LndGetInfoRequest": (*main.Message)(0xc000247080)({ + fullName: (string) (len=17) "LndGetInfoRequest", + name: (string) (len=17) "LndGetInfoRequest", + fields: ([]*main.Field) (len=1 cap=1) { + (*main.Field)(0xc0003c3230)({ + name: (string) (len=7) "node_id", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }) + } + }), + (string) (len=18) "NewAddressResponse": (*main.Message)(0xc000247100)({ + fullName: (string) (len=18) "NewAddressResponse", + name: (string) (len=18) "NewAddressResponse", + fields: ([]*main.Field) (len=1 cap=1) { + (*main.Field)(0xc0003c3290)({ + name: (string) (len=7) "address", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }) + } + }), + (string) (len=17) "NewInvoiceRequest": (*main.Message)(0xc0002471c0)({ + fullName: (string) (len=17) "NewInvoiceRequest", + name: (string) (len=17) "NewInvoiceRequest", + fields: ([]*main.Field) (len=1 cap=1) { + (*main.Field)(0xc0003c3350)({ + name: (string) (len=11) "amount_sats", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }) + } + }), + (string) (len=18) "OpenChannelRequest": (*main.Message)(0xc0002472c0)({ + fullName: (string) (len=18) "OpenChannelRequest", + name: (string) (len=18) "OpenChannelRequest", + fields: ([]*main.Field) (len=3 cap=4) { + (*main.Field)(0xc0003c3410)({ + name: (string) (len=11) "destination", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }), + (*main.Field)(0xc0003c3440)({ + name: (string) (len=15) "channel_balance", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }), + (*main.Field)(0xc0003c3470)({ + name: (string) (len=11) "push_amount", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }) + } + }), + (string) (len=14) "AddUserRequest": (*main.Message)(0xc000247380)({ + fullName: (string) (len=14) "AddUserRequest", + name: (string) (len=14) "AddUserRequest", + fields: ([]*main.Field) (len=3 cap=4) { + (*main.Field)(0xc0003c3500)({ + name: (string) (len=12) "callback_url", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }), + (*main.Field)(0xc0003c3530)({ + name: (string) (len=4) "name", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }), + (*main.Field)(0xc0003c3560)({ + name: (string) (len=6) "secret", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }) + } + }), + (string) (len=15) "AuthUserRequest": (*main.Message)(0xc000247400)({ + fullName: (string) (len=15) "AuthUserRequest", + name: (string) (len=15) "AuthUserRequest", + fields: ([]*main.Field) (len=2 cap=2) { + (*main.Field)(0xc0003c35f0)({ + name: (string) (len=4) "name", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }), + (*main.Field)(0xc0003c3620)({ + name: (string) (len=6) "secret", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }) + } + }), + (string) (len=17) "PayAddressRequest": (*main.Message)(0xc000247140)({ + fullName: (string) (len=17) "PayAddressRequest", + name: (string) (len=17) "PayAddressRequest", + fields: ([]*main.Field) (len=2 cap=2) { + (*main.Field)(0xc0003c32c0)({ + name: (string) (len=7) "address", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }), + (*main.Field)(0xc0003c32f0)({ + name: (string) (len=10) "amout_sats", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }) + } + }), + (string) (len=18) "PayAddressResponse": (*main.Message)(0xc000247180)({ + fullName: (string) (len=18) "PayAddressResponse", + name: (string) (len=18) "PayAddressResponse", + fields: ([]*main.Field) (len=1 cap=1) { + (*main.Field)(0xc0003c3320)({ + name: (string) (len=5) "tx_id", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }) + } + }), + (string) (len=16) "AuthUserResponse": (*main.Message)(0xc000247440)({ + fullName: (string) (len=16) "AuthUserResponse", + name: (string) (len=16) "AuthUserResponse", + fields: ([]*main.Field) (len=2 cap=2) { + (*main.Field)(0xc0003c3650)({ + name: (string) (len=7) "user_id", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }), + (*main.Field)(0xc0003c3680)({ + name: (string) (len=10) "auth_token", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }) + } + }), + (string) (len=5) "Empty": (*main.Message)(0xc000247000)({ fullName: (string) (len=5) "Empty", name: (string) (len=5) "Empty", fields: ([]*main.Field) + }), + (string) (len=18) "PayInvoiceResponse": (*main.Message)(0xc000247280)({ + fullName: (string) (len=18) "PayInvoiceResponse", + name: (string) (len=18) "PayInvoiceResponse", + fields: ([]*main.Field) (len=1 cap=1) { + (*main.Field)(0xc0003c33e0)({ + name: (string) (len=8) "preimage", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }) + } + }), + (string) (len=19) "OpenChannelResponse": (*main.Message)(0xc000247300)({ + fullName: (string) (len=19) "OpenChannelResponse", + name: (string) (len=19) "OpenChannelResponse", + fields: ([]*main.Field) (len=1 cap=1) { + (*main.Field)(0xc0003c34a0)({ + name: (string) (len=10) "channel_id", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }) + } + }), + (string) (len=27) "GetOpenChannelLNURLResponse": (*main.Message)(0xc000247340)({ + fullName: (string) (len=27) "GetOpenChannelLNURLResponse", + name: (string) (len=27) "GetOpenChannelLNURLResponse", + fields: ([]*main.Field) (len=1 cap=1) { + (*main.Field)(0xc0003c34d0)({ + name: (string) (len=5) "lnurl", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }) + } + }), + (string) (len=15) "AddUserResponse": (*main.Message)(0xc0002473c0)({ + fullName: (string) (len=15) "AddUserResponse", + name: (string) (len=15) "AddUserResponse", + fields: ([]*main.Field) (len=2 cap=2) { + (*main.Field)(0xc0003c3590)({ + name: (string) (len=7) "user_id", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }), + (*main.Field)(0xc0003c35c0)({ + name: (string) (len=10) "auth_token", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false + }) + } }) } -parsing file: structs 3 +parsing file: structs 18 parsing file: methods 2 --> [{no_auth NoAuth false map[]} {guest Guest false map[token:string]} {admin Admin true map[pub:string]}] +-> [{guest Guest false map[]} {user User false map[user_id:string]} {admin Admin true map[admin_id:string]}] diff --git a/proto/autogenerated/ts/express_server.ts b/proto/autogenerated/ts/express_server.ts index 3666711a..f8f135d1 100644 --- a/proto/autogenerated/ts/express_server.ts +++ b/proto/autogenerated/ts/express_server.ts @@ -1,57 +1,180 @@ // This file was autogenerated from a .proto file, DO NOT EDIT! -import express, { Response } from 'express' +import express, { Response, json, urlencoded } from 'express' +import cors from 'cors' import * as Types from './types' export type Logger = { log: (v: any) => void, error: (v: any) => void } export type ServerOptions = { + allowCors?: true + staticFiles?: string allowNotImplementedMethods?: number logger?: Logger throwErrors?: true - NoAuthAuthGuard: (authorizationHeader?: string) => Promise GuestAuthGuard: (authorizationHeader?: string) => Promise + UserAuthGuard: (authorizationHeader?: string) => Promise AdminAuthGuard: (authorizationHeader?: string) => Promise - encryptionCallback: (ctx: Types.AuthContext, body: any) => Promise + decryptCallback: (encryptionDeviceId: string, body: any) => Promise + encryptCallback: (encryptionDeviceId: string, plain: any) => Promise } const logErrorAndReturnResponse = (error: Error, response: string, res: Response, logger: Logger) => { logger.error(error.message || error); res.json({ status: 'ERROR', reason: response }) } export default (methods: Types.ServerMethods, opts: ServerOptions) => { const logger = opts.logger || { log: console.log, error: console.error } const app = express() + if (opts.allowCors) { + app.use(cors()) + } + app.use(json()) + app.use(urlencoded({ extended: true })) if (!opts.allowNotImplementedMethods && !methods.Health) throw new Error('method: Health is not implemented') - app.get('/health', async (req, res) => { + app.get('/api/health', async (req, res) => { try { if (!methods.Health) throw new Error('method: Health is not implemented') - const authContext = await opts.NoAuthAuthGuard(req.headers['authorization']) + const authContext = await opts.GuestAuthGuard(req.headers['authorization']) const query = req.query const params = req.params await methods.Health({ ...authContext, ...query, ...params }) - res.json({ status: 'OK' }) + res.json({status: 'OK'}) } catch (ex) { const e = ex as any; logErrorAndReturnResponse(e, e.message || e, res, logger); if (opts.throwErrors) throw e } }) if (!opts.allowNotImplementedMethods && !methods.EncryptionExchange) throw new Error('method: EncryptionExchange is not implemented') app.post('/api/encryption/exchange', async (req, res) => { try { if (!methods.EncryptionExchange) throw new Error('method: EncryptionExchange is not implemented') - const authContext = await opts.NoAuthAuthGuard(req.headers['authorization']) + const authContext = await opts.GuestAuthGuard(req.headers['authorization']) const request = req.body const error = Types.EncryptionExchangeRequestValidate(request) if (error !== null) return logErrorAndReturnResponse(error, 'invalid request body', res, logger) const query = req.query const params = req.params await methods.EncryptionExchange({ ...authContext, ...query, ...params }, request) - res.json({ status: 'OK' }) + res.json({status: 'OK'}) } catch (ex) { const e = ex as any; logErrorAndReturnResponse(e, e.message || e, res, logger); if (opts.throwErrors) throw e } }) if (!opts.allowNotImplementedMethods && !methods.LndGetInfo) throw new Error('method: LndGetInfo is not implemented') - app.get('/api/lnd/getinfo', async (req, res) => { + app.post('/api/lnd/getinfo', async (req, res) => { try { if (!methods.LndGetInfo) throw new Error('method: LndGetInfo is not implemented') - const authContext = await opts.NoAuthAuthGuard(req.headers['authorization']) + const authContext = await opts.AdminAuthGuard(req.headers['authorization']) + const encryptionDeviceId = req.headers['x-e2ee-device-id-x'] + if (typeof encryptionDeviceId !== 'string' || encryptionDeviceId === '') throw new Error('invalid encryption header provided') + const request = await opts.decryptCallback(encryptionDeviceId, req.body) + const error = Types.LndGetInfoRequestValidate(request) + if (error !== null) return logErrorAndReturnResponse(error, 'invalid request body', res, logger) const query = req.query const params = req.params - const response = await methods.LndGetInfo({ ...authContext, ...query, ...params }) - res.json({ status: 'OK', result: response }) + const response = await methods.LndGetInfo({ ...authContext, ...query, ...params }, request) + res.json({status: 'OK', result: await opts.encryptCallback(encryptionDeviceId, response)}) } catch (ex) { const e = ex as any; logErrorAndReturnResponse(e, e.message || e, res, logger); if (opts.throwErrors) throw e } }) + if (!opts.allowNotImplementedMethods && !methods.AddUser) throw new Error('method: AddUser is not implemented') + app.post('/api/user/add', async (req, res) => { + try { + if (!methods.AddUser) throw new Error('method: AddUser is not implemented') + const authContext = await opts.GuestAuthGuard(req.headers['authorization']) + const request = req.body + const error = Types.AddUserRequestValidate(request) + if (error !== null) return logErrorAndReturnResponse(error, 'invalid request body', res, logger) + const query = req.query + const params = req.params + const response = await methods.AddUser({ ...authContext, ...query, ...params }, request) + res.json({status: 'OK', result: response}) + } catch (ex) { const e = ex as any; logErrorAndReturnResponse(e, e.message || e, res, logger); if (opts.throwErrors) throw e } + }) + if (!opts.allowNotImplementedMethods && !methods.AuthUser) throw new Error('method: AuthUser is not implemented') + app.post('/api/user/auth', async (req, res) => { + try { + if (!methods.AuthUser) throw new Error('method: AuthUser is not implemented') + const authContext = await opts.GuestAuthGuard(req.headers['authorization']) + const request = req.body + const error = Types.AuthUserRequestValidate(request) + if (error !== null) return logErrorAndReturnResponse(error, 'invalid request body', res, logger) + const query = req.query + const params = req.params + const response = await methods.AuthUser({ ...authContext, ...query, ...params }, request) + res.json({status: 'OK', result: response}) + } catch (ex) { const e = ex as any; logErrorAndReturnResponse(e, e.message || e, res, logger); if (opts.throwErrors) throw e } + }) + if (!opts.allowNotImplementedMethods && !methods.NewAddress) throw new Error('method: NewAddress is not implemented') + app.post('/api/user/chain/new', async (req, res) => { + try { + if (!methods.NewAddress) throw new Error('method: NewAddress is not implemented') + const authContext = await opts.UserAuthGuard(req.headers['authorization']) + const query = req.query + const params = req.params + const response = await methods.NewAddress({ ...authContext, ...query, ...params }) + res.json({status: 'OK', result: response}) + } catch (ex) { const e = ex as any; logErrorAndReturnResponse(e, e.message || e, res, logger); if (opts.throwErrors) throw e } + }) + if (!opts.allowNotImplementedMethods && !methods.PayAddress) throw new Error('method: PayAddress is not implemented') + app.post('/api/user/chain/pay', async (req, res) => { + try { + if (!methods.PayAddress) throw new Error('method: PayAddress is not implemented') + const authContext = await opts.UserAuthGuard(req.headers['authorization']) + const request = req.body + const error = Types.PayAddressRequestValidate(request) + if (error !== null) return logErrorAndReturnResponse(error, 'invalid request body', res, logger) + const query = req.query + const params = req.params + const response = await methods.PayAddress({ ...authContext, ...query, ...params }, request) + res.json({status: 'OK', result: response}) + } catch (ex) { const e = ex as any; logErrorAndReturnResponse(e, e.message || e, res, logger); if (opts.throwErrors) throw e } + }) + if (!opts.allowNotImplementedMethods && !methods.NewInvoice) throw new Error('method: NewInvoice is not implemented') + app.post('/api/user/invoice/new', async (req, res) => { + try { + if (!methods.NewInvoice) throw new Error('method: NewInvoice is not implemented') + const authContext = await opts.UserAuthGuard(req.headers['authorization']) + const request = req.body + const error = Types.NewInvoiceRequestValidate(request) + if (error !== null) return logErrorAndReturnResponse(error, 'invalid request body', res, logger) + const query = req.query + const params = req.params + const response = await methods.NewInvoice({ ...authContext, ...query, ...params }, request) + res.json({status: 'OK', result: response}) + } catch (ex) { const e = ex as any; logErrorAndReturnResponse(e, e.message || e, res, logger); if (opts.throwErrors) throw e } + }) + if (!opts.allowNotImplementedMethods && !methods.PayInvoice) throw new Error('method: PayInvoice is not implemented') + app.post('/api/user/invoice/pay', async (req, res) => { + try { + if (!methods.PayInvoice) throw new Error('method: PayInvoice is not implemented') + const authContext = await opts.UserAuthGuard(req.headers['authorization']) + const request = req.body + const error = Types.PayInvoiceRequestValidate(request) + if (error !== null) return logErrorAndReturnResponse(error, 'invalid request body', res, logger) + const query = req.query + const params = req.params + const response = await methods.PayInvoice({ ...authContext, ...query, ...params }, request) + res.json({status: 'OK', result: response}) + } catch (ex) { const e = ex as any; logErrorAndReturnResponse(e, e.message || e, res, logger); if (opts.throwErrors) throw e } + }) + if (!opts.allowNotImplementedMethods && !methods.OpenChannel) throw new Error('method: OpenChannel is not implemented') + app.post('/api/user/open/channel', async (req, res) => { + try { + if (!methods.OpenChannel) throw new Error('method: OpenChannel is not implemented') + const authContext = await opts.UserAuthGuard(req.headers['authorization']) + const request = req.body + const error = Types.OpenChannelRequestValidate(request) + if (error !== null) return logErrorAndReturnResponse(error, 'invalid request body', res, logger) + const query = req.query + const params = req.params + const response = await methods.OpenChannel({ ...authContext, ...query, ...params }, request) + res.json({status: 'OK', result: response}) + } catch (ex) { const e = ex as any; logErrorAndReturnResponse(e, e.message || e, res, logger); if (opts.throwErrors) throw e } + }) + if (!opts.allowNotImplementedMethods && !methods.GetOpenChannelLNURL) throw new Error('method: GetOpenChannelLNURL is not implemented') + app.post('/api/user/lnurl_channel', async (req, res) => { + try { + if (!methods.GetOpenChannelLNURL) throw new Error('method: GetOpenChannelLNURL is not implemented') + const authContext = await opts.UserAuthGuard(req.headers['authorization']) + const query = req.query + const params = req.params + const response = await methods.GetOpenChannelLNURL({ ...authContext, ...query, ...params }) + res.json({status: 'OK', result: response}) + } catch (ex) { const e = ex as any; logErrorAndReturnResponse(e, e.message || e, res, logger); if (opts.throwErrors) throw e } + }) + if (opts.staticFiles) { + app.use(express.static(opts.staticFiles)) + } var server: { close: () => void } | undefined return { Close: () => { if (!server) { throw new Error('tried closing server before starting') } else server.close() }, diff --git a/proto/autogenerated/ts/http_client.ts b/proto/autogenerated/ts/http_client.ts index d87e5dba..4f6ec8aa 100644 --- a/proto/autogenerated/ts/http_client.ts +++ b/proto/autogenerated/ts/http_client.ts @@ -5,15 +5,19 @@ export type ResultError = { status: 'ERROR', reason: string } export type ClientParams = { baseUrl: string - retrieveNoAuthAuth: () => Promise retrieveGuestAuth: () => Promise + retrieveUserAuth: () => Promise retrieveAdminAuth: () => Promise + encryptCallback: (plain: any) => Promise + decryptCallback: (encrypted: any) => Promise + deviceId: string } export default (params: ClientParams) => ({ Health: async (): Promise => { - const auth = await params.retrieveNoAuthAuth() - if (auth === null) throw new Error('retrieveNoAuthAuth() returned null') - const { data } = await axios.get(params.baseUrl + '/health', { headers: { 'authorization': auth } }) + const auth = await params.retrieveGuestAuth() + if (auth === null) throw new Error('retrieveGuestAuth() returned null') + let finalRoute = '/api/health' + const { data } = await axios.get(params.baseUrl + finalRoute, { headers: { 'authorization': auth } }) if (data.status === 'ERROR' && typeof data.reason === 'string') return data if (data.status === 'OK') { return data @@ -21,23 +25,130 @@ export default (params: ClientParams) => ({ return { status: 'ERROR', reason: 'invalid response' } }, EncryptionExchange: async (request: Types.EncryptionExchangeRequest): Promise => { - const auth = await params.retrieveNoAuthAuth() - if (auth === null) throw new Error('retrieveNoAuthAuth() returned null') - const { data } = await axios.post(params.baseUrl + '/api/encryption/exchange', request, { headers: { 'authorization': auth } }) + const auth = await params.retrieveGuestAuth() + if (auth === null) throw new Error('retrieveGuestAuth() returned null') + let finalRoute = '/api/encryption/exchange' + const { data } = await axios.post(params.baseUrl + finalRoute, request, { headers: { 'authorization': auth } }) if (data.status === 'ERROR' && typeof data.reason === 'string') return data if (data.status === 'OK') { return data } return { status: 'ERROR', reason: 'invalid response' } }, - LndGetInfo: async (): Promise => { - const auth = await params.retrieveNoAuthAuth() - if (auth === null) throw new Error('retrieveNoAuthAuth() returned null') - const { data } = await axios.get(params.baseUrl + '/api/lnd/getinfo', { headers: { 'authorization': auth } }) + LndGetInfo: async (request: Types.LndGetInfoRequest): Promise => { + const auth = await params.retrieveAdminAuth() + if (auth === null) throw new Error('retrieveAdminAuth() returned null') + let finalRoute = '/api/lnd/getinfo' + const { data } = await axios.post(params.baseUrl + finalRoute, await params.encryptCallback(request), { headers: { 'authorization': auth, 'x-e2ee-device-id-x': params.deviceId } }) if (data.status === 'ERROR' && typeof data.reason === 'string') return data if (data.status === 'OK') { - const error = Types.LndGetInfoResponseValidate(data.result) - if (error === null) { return data } else return { status: 'ERROR', reason: error.message } + const result = await params.decryptCallback(data.result) + const error = Types.LndGetInfoResponseValidate(result) + if (error === null) { return { status: 'OK', result: result } } else return { status: 'ERROR', reason: error.message } + } + return { status: 'ERROR', reason: 'invalid response' } + }, + AddUser: async (request: Types.AddUserRequest): Promise => { + const auth = await params.retrieveGuestAuth() + if (auth === null) throw new Error('retrieveGuestAuth() returned null') + let finalRoute = '/api/user/add' + const { data } = await axios.post(params.baseUrl + finalRoute, request, { headers: { 'authorization': auth } }) + if (data.status === 'ERROR' && typeof data.reason === 'string') return data + if (data.status === 'OK') { + const result = data.result + const error = Types.AddUserResponseValidate(result) + if (error === null) { return { status: 'OK', result: result } } else return { status: 'ERROR', reason: error.message } + } + return { status: 'ERROR', reason: 'invalid response' } + }, + AuthUser: async (request: Types.AuthUserRequest): Promise => { + const auth = await params.retrieveGuestAuth() + if (auth === null) throw new Error('retrieveGuestAuth() returned null') + let finalRoute = '/api/user/auth' + const { data } = await axios.post(params.baseUrl + finalRoute, request, { headers: { 'authorization': auth } }) + if (data.status === 'ERROR' && typeof data.reason === 'string') return data + if (data.status === 'OK') { + const result = data.result + const error = Types.AuthUserResponseValidate(result) + if (error === null) { return { status: 'OK', result: result } } else return { status: 'ERROR', reason: error.message } + } + return { status: 'ERROR', reason: 'invalid response' } + }, + NewAddress: async (): Promise => { + const auth = await params.retrieveUserAuth() + if (auth === null) throw new Error('retrieveUserAuth() returned null') + let finalRoute = '/api/user/chain/new' + const { data } = await axios.post(params.baseUrl + finalRoute, {}, { headers: { 'authorization': auth } }) + if (data.status === 'ERROR' && typeof data.reason === 'string') return data + if (data.status === 'OK') { + const result = data.result + const error = Types.NewAddressResponseValidate(result) + if (error === null) { return { status: 'OK', result: result } } else return { status: 'ERROR', reason: error.message } + } + return { status: 'ERROR', reason: 'invalid response' } + }, + PayAddress: async (request: Types.PayAddressRequest): Promise => { + const auth = await params.retrieveUserAuth() + if (auth === null) throw new Error('retrieveUserAuth() returned null') + let finalRoute = '/api/user/chain/pay' + const { data } = await axios.post(params.baseUrl + finalRoute, request, { headers: { 'authorization': auth } }) + if (data.status === 'ERROR' && typeof data.reason === 'string') return data + if (data.status === 'OK') { + const result = data.result + const error = Types.PayAddressResponseValidate(result) + if (error === null) { return { status: 'OK', result: result } } else return { status: 'ERROR', reason: error.message } + } + return { status: 'ERROR', reason: 'invalid response' } + }, + NewInvoice: async (request: Types.NewInvoiceRequest): Promise => { + const auth = await params.retrieveUserAuth() + if (auth === null) throw new Error('retrieveUserAuth() returned null') + let finalRoute = '/api/user/invoice/new' + const { data } = await axios.post(params.baseUrl + finalRoute, request, { headers: { 'authorization': auth } }) + if (data.status === 'ERROR' && typeof data.reason === 'string') return data + if (data.status === 'OK') { + const result = data.result + const error = Types.NewInvoiceResponseValidate(result) + if (error === null) { return { status: 'OK', result: result } } else return { status: 'ERROR', reason: error.message } + } + return { status: 'ERROR', reason: 'invalid response' } + }, + PayInvoice: async (request: Types.PayInvoiceRequest): Promise => { + const auth = await params.retrieveUserAuth() + if (auth === null) throw new Error('retrieveUserAuth() returned null') + let finalRoute = '/api/user/invoice/pay' + const { data } = await axios.post(params.baseUrl + finalRoute, request, { headers: { 'authorization': auth } }) + if (data.status === 'ERROR' && typeof data.reason === 'string') return data + if (data.status === 'OK') { + const result = data.result + const error = Types.PayInvoiceResponseValidate(result) + if (error === null) { return { status: 'OK', result: result } } else return { status: 'ERROR', reason: error.message } + } + return { status: 'ERROR', reason: 'invalid response' } + }, + OpenChannel: async (request: Types.OpenChannelRequest): Promise => { + const auth = await params.retrieveUserAuth() + if (auth === null) throw new Error('retrieveUserAuth() returned null') + let finalRoute = '/api/user/open/channel' + const { data } = await axios.post(params.baseUrl + finalRoute, request, { headers: { 'authorization': auth } }) + if (data.status === 'ERROR' && typeof data.reason === 'string') return data + if (data.status === 'OK') { + const result = data.result + const error = Types.OpenChannelResponseValidate(result) + if (error === null) { return { status: 'OK', result: result } } else return { status: 'ERROR', reason: error.message } + } + return { status: 'ERROR', reason: 'invalid response' } + }, + GetOpenChannelLNURL: async (): Promise => { + const auth = await params.retrieveUserAuth() + if (auth === null) throw new Error('retrieveUserAuth() returned null') + let finalRoute = '/api/user/lnurl_channel' + const { data } = await axios.post(params.baseUrl + finalRoute, {}, { headers: { 'authorization': auth } }) + if (data.status === 'ERROR' && typeof data.reason === 'string') return data + if (data.status === 'OK') { + const result = data.result + const error = Types.GetOpenChannelLNURLResponseValidate(result) + if (error === null) { return { status: 'OK', result: result } } else return { status: 'ERROR', reason: error.message } } return { status: 'ERROR', reason: 'invalid response' } }, diff --git a/proto/autogenerated/ts/types.ts b/proto/autogenerated/ts/types.ts index ae434c9f..9a8be344 100644 --- a/proto/autogenerated/ts/types.ts +++ b/proto/autogenerated/ts/types.ts @@ -1,34 +1,82 @@ // This file was autogenerated from a .proto file, DO NOT EDIT! -export type NoAuthContext = { -} export type GuestContext = { - token: string +} +export type UserContext = { + user_id: string } export type AdminContext = { - pub: string + admin_id: string } -export type AuthContext = NoAuthContext | GuestContext | AdminContext +export type AuthContext = GuestContext | UserContext | AdminContext export type Health_Query = { } export type Health_RouteParams = { } -export type Health_Context = Health_Query & Health_RouteParams & NoAuthContext +export type Health_Context = Health_Query & Health_RouteParams & GuestContext export type EncryptionExchange_Query = { } export type EncryptionExchange_RouteParams = { } -export type EncryptionExchange_Context = EncryptionExchange_Query & EncryptionExchange_RouteParams & NoAuthContext +export type EncryptionExchange_Context = EncryptionExchange_Query & EncryptionExchange_RouteParams & GuestContext export type LndGetInfo_Query = { } export type LndGetInfo_RouteParams = { } -export type LndGetInfo_Context = LndGetInfo_Query & LndGetInfo_RouteParams & NoAuthContext +export type LndGetInfo_Context = LndGetInfo_Query & LndGetInfo_RouteParams & AdminContext +export type AddUser_Query = { +} +export type AddUser_RouteParams = { +} +export type AddUser_Context = AddUser_Query & AddUser_RouteParams & GuestContext +export type AuthUser_Query = { +} +export type AuthUser_RouteParams = { +} +export type AuthUser_Context = AuthUser_Query & AuthUser_RouteParams & GuestContext +export type NewAddress_Query = { +} +export type NewAddress_RouteParams = { +} +export type NewAddress_Context = NewAddress_Query & NewAddress_RouteParams & UserContext +export type PayAddress_Query = { +} +export type PayAddress_RouteParams = { +} +export type PayAddress_Context = PayAddress_Query & PayAddress_RouteParams & UserContext +export type NewInvoice_Query = { +} +export type NewInvoice_RouteParams = { +} +export type NewInvoice_Context = NewInvoice_Query & NewInvoice_RouteParams & UserContext +export type PayInvoice_Query = { +} +export type PayInvoice_RouteParams = { +} +export type PayInvoice_Context = PayInvoice_Query & PayInvoice_RouteParams & UserContext +export type OpenChannel_Query = { +} +export type OpenChannel_RouteParams = { +} +export type OpenChannel_Context = OpenChannel_Query & OpenChannel_RouteParams & UserContext +export type GetOpenChannelLNURL_Query = { +} +export type GetOpenChannelLNURL_RouteParams = { +} +export type GetOpenChannelLNURL_Context = GetOpenChannelLNURL_Query & GetOpenChannelLNURL_RouteParams & UserContext export type ServerMethods = { Health?: (ctx: Health_Context) => Promise EncryptionExchange?: (ctx: EncryptionExchange_Context, req: EncryptionExchangeRequest) => Promise - LndGetInfo?: (ctx: LndGetInfo_Context) => Promise + LndGetInfo?: (ctx: LndGetInfo_Context, req: LndGetInfoRequest) => Promise + AddUser?: (ctx: AddUser_Context, req: AddUserRequest) => Promise + AuthUser?: (ctx: AuthUser_Context, req: AuthUserRequest) => Promise + NewAddress?: (ctx: NewAddress_Context) => Promise + PayAddress?: (ctx: PayAddress_Context, req: PayAddressRequest) => Promise + NewInvoice?: (ctx: NewInvoice_Context, req: NewInvoiceRequest) => Promise + PayInvoice?: (ctx: PayInvoice_Context, req: PayInvoiceRequest) => Promise + OpenChannel?: (ctx: OpenChannel_Context, req: OpenChannelRequest) => Promise + GetOpenChannelLNURL?: (ctx: GetOpenChannelLNURL_Context) => Promise } @@ -36,6 +84,178 @@ export type OptionsBaseMessage = { allOptionalsAreSet?: true } +export type AuthUserResponse = { + user_id: string + auth_token: string +} +export const AuthUserResponseOptionalFields: [] = [] +export type AuthUserResponseOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + user_id_CustomCheck?: (v: string) => boolean + auth_token_CustomCheck?: (v: string) => boolean +} +export const AuthUserResponseValidate = (o?: AuthUserResponse, opts: AuthUserResponseOptions = {}, path: string = 'AuthUserResponse::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.user_id !== 'string') return new Error(`${path}.user_id: is not a string`) + if (opts.user_id_CustomCheck && !opts.user_id_CustomCheck(o.user_id)) return new Error(`${path}.user_id: custom check failed`) + + if (typeof o.auth_token !== 'string') return new Error(`${path}.auth_token: is not a string`) + if (opts.auth_token_CustomCheck && !opts.auth_token_CustomCheck(o.auth_token)) return new Error(`${path}.auth_token: custom check failed`) + + return null +} + +export type PayAddressRequest = { + address: string + amout_sats: number +} +export const PayAddressRequestOptionalFields: [] = [] +export type PayAddressRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + address_CustomCheck?: (v: string) => boolean + amout_sats_CustomCheck?: (v: number) => boolean +} +export const PayAddressRequestValidate = (o?: PayAddressRequest, opts: PayAddressRequestOptions = {}, path: string = 'PayAddressRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.address !== 'string') return new Error(`${path}.address: is not a string`) + if (opts.address_CustomCheck && !opts.address_CustomCheck(o.address)) return new Error(`${path}.address: custom check failed`) + + if (typeof o.amout_sats !== 'number') return new Error(`${path}.amout_sats: is not a number`) + if (opts.amout_sats_CustomCheck && !opts.amout_sats_CustomCheck(o.amout_sats)) return new Error(`${path}.amout_sats: custom check failed`) + + return null +} + +export type PayAddressResponse = { + tx_id: string +} +export const PayAddressResponseOptionalFields: [] = [] +export type PayAddressResponseOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + tx_id_CustomCheck?: (v: string) => boolean +} +export const PayAddressResponseValidate = (o?: PayAddressResponse, opts: PayAddressResponseOptions = {}, path: string = 'PayAddressResponse::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.tx_id !== 'string') return new Error(`${path}.tx_id: is not a string`) + if (opts.tx_id_CustomCheck && !opts.tx_id_CustomCheck(o.tx_id)) return new Error(`${path}.tx_id: custom check failed`) + + return null +} + +export type OpenChannelResponse = { + channel_id: string +} +export const OpenChannelResponseOptionalFields: [] = [] +export type OpenChannelResponseOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + channel_id_CustomCheck?: (v: string) => boolean +} +export const OpenChannelResponseValidate = (o?: OpenChannelResponse, opts: OpenChannelResponseOptions = {}, path: string = 'OpenChannelResponse::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.channel_id !== 'string') return new Error(`${path}.channel_id: is not a string`) + if (opts.channel_id_CustomCheck && !opts.channel_id_CustomCheck(o.channel_id)) return new Error(`${path}.channel_id: custom check failed`) + + return null +} + +export type GetOpenChannelLNURLResponse = { + lnurl: string +} +export const GetOpenChannelLNURLResponseOptionalFields: [] = [] +export type GetOpenChannelLNURLResponseOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + lnurl_CustomCheck?: (v: string) => boolean +} +export const GetOpenChannelLNURLResponseValidate = (o?: GetOpenChannelLNURLResponse, opts: GetOpenChannelLNURLResponseOptions = {}, path: string = 'GetOpenChannelLNURLResponse::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.lnurl !== 'string') return new Error(`${path}.lnurl: is not a string`) + if (opts.lnurl_CustomCheck && !opts.lnurl_CustomCheck(o.lnurl)) return new Error(`${path}.lnurl: custom check failed`) + + return null +} + +export type AddUserResponse = { + user_id: string + auth_token: string +} +export const AddUserResponseOptionalFields: [] = [] +export type AddUserResponseOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + user_id_CustomCheck?: (v: string) => boolean + auth_token_CustomCheck?: (v: string) => boolean +} +export const AddUserResponseValidate = (o?: AddUserResponse, opts: AddUserResponseOptions = {}, path: string = 'AddUserResponse::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.user_id !== 'string') return new Error(`${path}.user_id: is not a string`) + if (opts.user_id_CustomCheck && !opts.user_id_CustomCheck(o.user_id)) return new Error(`${path}.user_id: custom check failed`) + + if (typeof o.auth_token !== 'string') return new Error(`${path}.auth_token: is not a string`) + if (opts.auth_token_CustomCheck && !opts.auth_token_CustomCheck(o.auth_token)) return new Error(`${path}.auth_token: custom check failed`) + + return null +} + +export type Empty = { +} +export const EmptyOptionalFields: [] = [] +export type EmptyOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] +} +export const EmptyValidate = (o?: Empty, opts: EmptyOptions = {}, path: string = 'Empty::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + return null +} + +export type PayInvoiceResponse = { + preimage: string +} +export const PayInvoiceResponseOptionalFields: [] = [] +export type PayInvoiceResponseOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + preimage_CustomCheck?: (v: string) => boolean +} +export const PayInvoiceResponseValidate = (o?: PayInvoiceResponse, opts: PayInvoiceResponseOptions = {}, path: string = 'PayInvoiceResponse::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.preimage !== 'string') return new Error(`${path}.preimage: is not a string`) + if (opts.preimage_CustomCheck && !opts.preimage_CustomCheck(o.preimage)) return new Error(`${path}.preimage: custom check failed`) + + return null +} + +export type PayInvoiceRequest = { + invoce: string +} +export const PayInvoiceRequestOptionalFields: [] = [] +export type PayInvoiceRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + invoce_CustomCheck?: (v: string) => boolean +} +export const PayInvoiceRequestValidate = (o?: PayInvoiceRequest, opts: PayInvoiceRequestOptions = {}, path: string = 'PayInvoiceRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.invoce !== 'string') return new Error(`${path}.invoce: is not a string`) + if (opts.invoce_CustomCheck && !opts.invoce_CustomCheck(o.invoce)) return new Error(`${path}.invoce: custom check failed`) + + return null +} + export type LndGetInfoResponse = { alias: string } @@ -54,16 +274,136 @@ export const LndGetInfoResponseValidate = (o?: LndGetInfoResponse, opts: LndGetI return null } -export type Empty = { +export type NewInvoiceResponse = { + invoice: string } -export const EmptyOptionalFields: [] = [] -export type EmptyOptions = OptionsBaseMessage & { +export const NewInvoiceResponseOptionalFields: [] = [] +export type NewInvoiceResponseOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] + invoice_CustomCheck?: (v: string) => boolean } -export const EmptyValidate = (o?: Empty, opts: EmptyOptions = {}, path: string = 'Empty::root.'): Error | null => { +export const NewInvoiceResponseValidate = (o?: NewInvoiceResponse, opts: NewInvoiceResponseOptions = {}, path: string = 'NewInvoiceResponse::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + if (typeof o.invoice !== 'string') return new Error(`${path}.invoice: is not a string`) + if (opts.invoice_CustomCheck && !opts.invoice_CustomCheck(o.invoice)) return new Error(`${path}.invoice: custom check failed`) + + return null +} + +export type NewAddressResponse = { + address: string +} +export const NewAddressResponseOptionalFields: [] = [] +export type NewAddressResponseOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + address_CustomCheck?: (v: string) => boolean +} +export const NewAddressResponseValidate = (o?: NewAddressResponse, opts: NewAddressResponseOptions = {}, path: string = 'NewAddressResponse::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.address !== 'string') return new Error(`${path}.address: is not a string`) + if (opts.address_CustomCheck && !opts.address_CustomCheck(o.address)) return new Error(`${path}.address: custom check failed`) + + return null +} + +export type NewInvoiceRequest = { + amount_sats: number +} +export const NewInvoiceRequestOptionalFields: [] = [] +export type NewInvoiceRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + amount_sats_CustomCheck?: (v: number) => boolean +} +export const NewInvoiceRequestValidate = (o?: NewInvoiceRequest, opts: NewInvoiceRequestOptions = {}, path: string = 'NewInvoiceRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.amount_sats !== 'number') return new Error(`${path}.amount_sats: is not a number`) + if (opts.amount_sats_CustomCheck && !opts.amount_sats_CustomCheck(o.amount_sats)) return new Error(`${path}.amount_sats: custom check failed`) + + return null +} + +export type OpenChannelRequest = { + destination: string + channel_balance: number + push_amount: number +} +export const OpenChannelRequestOptionalFields: [] = [] +export type OpenChannelRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + destination_CustomCheck?: (v: string) => boolean + channel_balance_CustomCheck?: (v: number) => boolean + push_amount_CustomCheck?: (v: number) => boolean +} +export const OpenChannelRequestValidate = (o?: OpenChannelRequest, opts: OpenChannelRequestOptions = {}, path: string = 'OpenChannelRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.destination !== 'string') return new Error(`${path}.destination: is not a string`) + if (opts.destination_CustomCheck && !opts.destination_CustomCheck(o.destination)) return new Error(`${path}.destination: custom check failed`) + + if (typeof o.channel_balance !== 'number') return new Error(`${path}.channel_balance: is not a number`) + if (opts.channel_balance_CustomCheck && !opts.channel_balance_CustomCheck(o.channel_balance)) return new Error(`${path}.channel_balance: custom check failed`) + + if (typeof o.push_amount !== 'number') return new Error(`${path}.push_amount: is not a number`) + if (opts.push_amount_CustomCheck && !opts.push_amount_CustomCheck(o.push_amount)) return new Error(`${path}.push_amount: custom check failed`) + + return null +} + +export type AddUserRequest = { + callback_url: string + name: string + secret: string +} +export const AddUserRequestOptionalFields: [] = [] +export type AddUserRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + callback_url_CustomCheck?: (v: string) => boolean + name_CustomCheck?: (v: string) => boolean + secret_CustomCheck?: (v: string) => boolean +} +export const AddUserRequestValidate = (o?: AddUserRequest, opts: AddUserRequestOptions = {}, path: string = 'AddUserRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.callback_url !== 'string') return new Error(`${path}.callback_url: is not a string`) + if (opts.callback_url_CustomCheck && !opts.callback_url_CustomCheck(o.callback_url)) return new Error(`${path}.callback_url: custom check failed`) + + if (typeof o.name !== 'string') return new Error(`${path}.name: is not a string`) + if (opts.name_CustomCheck && !opts.name_CustomCheck(o.name)) return new Error(`${path}.name: custom check failed`) + + if (typeof o.secret !== 'string') return new Error(`${path}.secret: is not a string`) + if (opts.secret_CustomCheck && !opts.secret_CustomCheck(o.secret)) return new Error(`${path}.secret: custom check failed`) + + return null +} + +export type AuthUserRequest = { + name: string + secret: string +} +export const AuthUserRequestOptionalFields: [] = [] +export type AuthUserRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + name_CustomCheck?: (v: string) => boolean + secret_CustomCheck?: (v: string) => boolean +} +export const AuthUserRequestValidate = (o?: AuthUserRequest, opts: AuthUserRequestOptions = {}, path: string = 'AuthUserRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.name !== 'string') return new Error(`${path}.name: is not a string`) + if (opts.name_CustomCheck && !opts.name_CustomCheck(o.name)) return new Error(`${path}.name: custom check failed`) + + if (typeof o.secret !== 'string') return new Error(`${path}.secret: is not a string`) + if (opts.secret_CustomCheck && !opts.secret_CustomCheck(o.secret)) return new Error(`${path}.secret: custom check failed`) + return null } @@ -90,3 +430,21 @@ export const EncryptionExchangeRequestValidate = (o?: EncryptionExchangeRequest, return null } +export type LndGetInfoRequest = { + node_id: number +} +export const LndGetInfoRequestOptionalFields: [] = [] +export type LndGetInfoRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + node_id_CustomCheck?: (v: number) => boolean +} +export const LndGetInfoRequestValidate = (o?: LndGetInfoRequest, opts: LndGetInfoRequestOptions = {}, path: string = 'LndGetInfoRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.node_id !== 'number') return new Error(`${path}.node_id: is not a number`) + if (opts.node_id_CustomCheck && !opts.node_id_CustomCheck(o.node_id)) return new Error(`${path}.node_id: custom check failed`) + + return null +} + diff --git a/proto/protoc-gen-pub.exe b/proto/protoc-gen-pub.exe index 8f02270a4a2063140749ed7c42dceafc6f0a344b..80ef68cbcc772e56cc2bfc168f873682db63f68f 100644 GIT binary patch delta 2911700 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

dd>DyfUWG(O{OeS}SG= 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�uh(2#;>l1zOAS2qtrXK?t@x%h+ z3JZ^J(+6NS#E3f9R5)SA

li^n~O#y2Q0Uh;dngC`)jEF%pA^_D0 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 wYV>l77XWK5mz-6iVBn7VydmuM9ulfbs=Vm+c| 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

2wpSU*XEKVuya-AfpmG(S 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

@GBWE1FMtgTi+~RSy@tK=X*AJdaY5; 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

  • v}Gf553|O-t`B=1W9n;NebdOgQM*ce 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

    }9 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