From 65a5eeb24ef9c16e39f0df0b8a47a1c1b01f6d95 Mon Sep 17 00:00:00 2001 From: Olaoluwa Osuntokun Date: Wed, 3 Aug 2022 17:27:26 -0700 Subject: [PATCH 1/2] build: make Go 1.18 the min version, update to Go 1.19 As usual, we keep with the last two Go versions, which means the last year of Go release (they release every 6 months or so). This change means we can now use the type params (generics) in the project! --- .github/workflows/main.yml | 2 +- .github/workflows/release.yaml | 2 +- .travis.yml | 2 +- Dockerfile | 2 +- dev.Dockerfile | 2 +- docker/btcd/Dockerfile | 2 +- docker/ltcd/Dockerfile | 2 +- docs/release-notes/release-notes-0.16.0.md | 13 +++++- go.mod | 2 +- go.sum | 53 ---------------------- lnrpc/Dockerfile | 2 +- make/builder.Dockerfile | 2 +- tools/Dockerfile | 2 +- 13 files changed, 22 insertions(+), 66 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index a84ec2ad0..302e7fb8d 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -29,7 +29,7 @@ env: # /dev.Dockerfile # /make/builder.Dockerfile # /.github/workflows/release.yml - GO_VERSION: 1.18.2 + GO_VERSION: 1.19.0 jobs: ######################## diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index f1b5903ed..e4479d0ef 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -16,7 +16,7 @@ env: # /dev.Dockerfile # /make/builder.Dockerfile # /.github/workflows/main.yml - GO_VERSION: 1.18.2 + GO_VERSION: 1.19.0 jobs: main: diff --git a/.travis.yml b/.travis.yml index 94a7c8796..8afd95ffb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -21,7 +21,7 @@ go: # /make/builder.Dockerfile # /.github/workflows/main.yml # /.github/workflows/release.yml - - "1.18.2" + - "1.19.0" env: global: diff --git a/Dockerfile b/Dockerfile index 3a7a06212..e27472d8e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,7 +4,7 @@ # /make/builder.Dockerfile # /.github/workflows/main.yml # /.github/workflows/release.yml -FROM golang:1.18.2-alpine as builder +FROM golang:1.19-alpine as builder # Force Go to use the cgo based DNS resolver. This is required to ensure DNS # queries required to connect to linked containers succeed. diff --git a/dev.Dockerfile b/dev.Dockerfile index 4440dfc4f..9f864071d 100644 --- a/dev.Dockerfile +++ b/dev.Dockerfile @@ -4,7 +4,7 @@ # /make/builder.Dockerfile # /.github/workflows/main.yml # /.github/workflows/release.yml -FROM golang:1.18.2-alpine as builder +FROM golang:1.19-alpine as builder LABEL maintainer="Olaoluwa Osuntokun " diff --git a/docker/btcd/Dockerfile b/docker/btcd/Dockerfile index 7d98e85a9..189a983d5 100644 --- a/docker/btcd/Dockerfile +++ b/docker/btcd/Dockerfile @@ -1,4 +1,4 @@ -FROM golang:1.17.3-alpine as builder +FROM golang:1.19-alpine as builder LABEL maintainer="Olaoluwa Osuntokun " diff --git a/docker/ltcd/Dockerfile b/docker/ltcd/Dockerfile index 6b78cff44..940e7a742 100644 --- a/docker/ltcd/Dockerfile +++ b/docker/ltcd/Dockerfile @@ -1,4 +1,4 @@ -FROM golang:1.17.3-alpine as builder +FROM golang:1.19-alpine as builder LABEL maintainer="Olaoluwa Osuntokun " diff --git a/docs/release-notes/release-notes-0.16.0.md b/docs/release-notes/release-notes-0.16.0.md index 7228cacd1..bd69a0eba 100644 --- a/docs/release-notes/release-notes-0.16.0.md +++ b/docs/release-notes/release-notes-0.16.0.md @@ -1,5 +1,10 @@ # Release Notes +## BOLT Specs + +* Warning messages from peers are now recognized and + [logged](https://github.com/lightningnetwork/lnd/pull/6546) by lnd. + ## RPC The `RegisterConfirmationsNtfn` call of the `chainnotifier` RPC sub-server [now @@ -18,9 +23,13 @@ transaction](https://github.com/lightningnetwork/lnd/pull/6730). * [Add list addresses RPC](https://github.com/lightningnetwork/lnd/pull/6596). +## Build + +[The project has updated to Go +1.19](https://github.com/lightningnetwork/lnd/pull/6795)! Go 1.18 is now the +minimum version needed to build the project. + ## Misc -* Warning messages from peers are now recognized and - [logged](https://github.com/lightningnetwork/lnd/pull/6546) by lnd. * [Fixed error typo](https://github.com/lightningnetwork/lnd/pull/6659). diff --git a/go.mod b/go.mod index caf9e614d..184c6308d 100644 --- a/go.mod +++ b/go.mod @@ -169,6 +169,6 @@ replace github.com/gogo/protobuf => github.com/gogo/protobuf v1.3.2 // If you change this please also update .github/pull_request_template.md and // docs/INSTALL.md. -go 1.17 +go 1.18 retract v0.0.2 diff --git a/go.sum b/go.sum index 05950e526..e6d061394 100644 --- a/go.sum +++ b/go.sum @@ -126,7 +126,6 @@ github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA github.com/certifi/gocertifi v0.0.0-20191021191039-0944d244cd40/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= github.com/certifi/gocertifi v0.0.0-20200922220541-2c3bb06c6054 h1:uH66TXeswKn5PW5zdZ39xEwfS9an067BirqA+P4QaLI= github.com/certifi/gocertifi v0.0.0-20200922220541-2c3bb06c6054/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= -github.com/cespare/xxhash v1.1.0 h1:a6HrQnmkObjyL+Gs60czilIUGqrzKutQD6XZog3p+ko= github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= github.com/cespare/xxhash/v2 v2.1.1 h1:6MnRN8NT7+YBpUIWxHtefFZOKTAPgGjpQSxqLNn0+qY= github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= @@ -318,7 +317,6 @@ github.com/hashicorp/serf v0.8.2/go.mod h1:6hOLApaqBFA1NXqRQAsxw9QxuDEvNxSQRwA/J github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= -github.com/jackc/chunkreader v1.0.0 h1:4s39bBR8ByfqH+DKm8rQA3E1LHZWB9XWcrz8fqaZbe0= github.com/jackc/chunkreader v1.0.0/go.mod h1:RT6O25fNZIuasFJRyZ4R/Y2BbhasbmZXF9QQ7T3kePo= github.com/jackc/chunkreader/v2 v2.0.0/go.mod h1:odVSm741yZoC3dpHEUXIqA9tQRhFrgOHwnPIn9lDKlk= github.com/jackc/chunkreader/v2 v2.0.1 h1:i+RDz65UE+mmpjTfyz0MoVTnzeYxroil2G82ki7MGG8= @@ -339,7 +337,6 @@ github.com/jackc/pgmock v0.0.0-20210724152146-4ad1a8207f65 h1:DadwsjnMwFjfWc9y5W github.com/jackc/pgmock v0.0.0-20210724152146-4ad1a8207f65/go.mod h1:5R2h2EEX+qri8jOWMbJCtaPWkrrNc7OHwsp2TCqp7ak= github.com/jackc/pgpassfile v1.0.0 h1:/6Hmqy13Ss2zCq62VdNG8tM1wchn8zjSGOBJ6icpsIM= github.com/jackc/pgpassfile v1.0.0/go.mod h1:CEx0iS5ambNFdcRtxPj5JhEz+xB6uRky5eyVu/W2HEg= -github.com/jackc/pgproto3 v1.1.0 h1:FYYE4yRw+AgI8wXIinMlNjBbp/UitDJwfj5LqqewP1A= github.com/jackc/pgproto3 v1.1.0/go.mod h1:eR5FA3leWg7p9aeAqi37XOTgTIbkABlvcPB3E5rlc78= github.com/jackc/pgproto3/v2 v2.0.0-alpha1.0.20190420180111-c116219b62db/go.mod h1:bhq50y+xrl9n5mRYyCBFKkpRVTLYJVWeCc+mEAI3yXA= github.com/jackc/pgproto3/v2 v2.0.0-alpha1.0.20190609003834-432c2951c711/go.mod h1:uH0AWtUmuShn0bcesswc4aBTWGvw0cAxIJp+6OB//Wg= @@ -388,48 +385,18 @@ github.com/json-iterator/go v1.1.11/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/ github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= -github.com/juju/ansiterm v0.0.0-20160907234532-b99631de12cf/go.mod h1:UJSiEoRfvx3hP73CvoARgeLjaIOjybY9vj8PUPPFGeU= github.com/juju/ansiterm v0.0.0-20180109212912-720a0952cc2a/go.mod h1:UJSiEoRfvx3hP73CvoARgeLjaIOjybY9vj8PUPPFGeU= github.com/juju/clock v0.0.0-20190205081909-9c5c9712527c h1:3UvYABOQRhJAApj9MdCN+Ydv841ETSoy6xLzdmmr/9A= -github.com/juju/clock v0.0.0-20190205081909-9c5c9712527c/go.mod h1:nD0vlnrUjcjJhqN5WuCWZyzfd5AHZAC9/ajvbSx69xA= -github.com/juju/cmd v0.0.0-20171107070456-e74f39857ca0/go.mod h1:yWJQHl73rdSX4DHVKGqkAip+huBslxRwS8m9CrOLq18= github.com/juju/collections v0.0.0-20200605021417-0d0ec82b7271 h1:4R626WTwa7pRYQFiIRLVPepMhm05eZMEx+wIurRnMLc= -github.com/juju/collections v0.0.0-20200605021417-0d0ec82b7271/go.mod h1:5XgO71dV1JClcOJE+4dzdn4HrI5LiyKd7PlVG6eZYhY= -github.com/juju/errors v0.0.0-20150916125642-1b5e39b83d18/go.mod h1:W54LbzXuIE0boCoNJfwqpmkKJ1O4TCTZMetAt6jGk7Q= -github.com/juju/errors v0.0.0-20200330140219-3fe23663418f/go.mod h1:W54LbzXuIE0boCoNJfwqpmkKJ1O4TCTZMetAt6jGk7Q= github.com/juju/errors v0.0.0-20220203013757-bd733f3c86b9 h1:EJHbsNpQyupmMeWTq7inn+5L/WZ7JfzCVPJ+DP9McCQ= -github.com/juju/errors v0.0.0-20220203013757-bd733f3c86b9/go.mod h1:TRm7EVGA3mQOqSVcBySRY7a9Y1/gyVhh/WTCnc5sD4U= -github.com/juju/gnuflag v0.0.0-20171113085948-2ce1bb71843d/go.mod h1:2PavIy+JPciBPrBUjwbNvtwB6RQlve+hkpll6QSNmOE= -github.com/juju/httpprof v0.0.0-20141217160036-14bf14c30767/go.mod h1:+MaLYz4PumRkkyHYeXJ2G5g5cIW0sli2bOfpmbaMV/g= -github.com/juju/loggo v0.0.0-20170605014607-8232ab8918d9/go.mod h1:vgyd7OREkbtVEN/8IXZe5Ooef3LQePvuBm9UWj6ZL8U= -github.com/juju/loggo v0.0.0-20200526014432-9ce3a2e09b5e/go.mod h1:vgyd7OREkbtVEN/8IXZe5Ooef3LQePvuBm9UWj6ZL8U= github.com/juju/loggo v0.0.0-20210728185423-eebad3a902c4 h1:NO5tuyw++EGLnz56Q8KMyDZRwJwWO8jQnj285J3FOmY= github.com/juju/loggo v0.0.0-20210728185423-eebad3a902c4/go.mod h1:NIXFioti1SmKAlKNuUwbMenNdef59IF52+ZzuOmHYkg= github.com/juju/mgo/v2 v2.0.0-20210302023703-70d5d206e208 h1:/WiCm+Vpj87e4QWuWwPD/bNE9kDrWCLvPBHOQNcG2+A= -github.com/juju/mgo/v2 v2.0.0-20210302023703-70d5d206e208/go.mod h1:0OChplkvPTZ174D2FYZXg4IB9hbEwyHkD+zT+/eK+Fg= -github.com/juju/mutex v0.0.0-20171110020013-1fe2a4bf0a3a/go.mod h1:Y3oOzHH8CQ0Ppt0oCKJ2JFO81/EsWenH5AEqigLH+yY= -github.com/juju/retry v0.0.0-20151029024821-62c620325291/go.mod h1:OohPQGsr4pnxwD5YljhQ+TZnuVRYpa5irjugL1Yuif4= github.com/juju/retry v0.0.0-20180821225755-9058e192b216 h1:/eQL7EJQKFHByJe3DeE8Z36yqManj9UY5zppDoQi4FU= -github.com/juju/retry v0.0.0-20180821225755-9058e192b216/go.mod h1:OohPQGsr4pnxwD5YljhQ+TZnuVRYpa5irjugL1Yuif4= -github.com/juju/testing v0.0.0-20180402130637-44801989f0f7/go.mod h1:63prj8cnj0tU0S9OHjGJn+b1h0ZghCndfnbQolrYTwA= -github.com/juju/testing v0.0.0-20190723135506-ce30eb24acd2/go.mod h1:63prj8cnj0tU0S9OHjGJn+b1h0ZghCndfnbQolrYTwA= -github.com/juju/testing v0.0.0-20210302031854-2c7ee8570c07/go.mod h1:7lxZW0B50+xdGFkvhAb8bwAGt6IU87JB1H9w4t8MNVM= -github.com/juju/testing v0.0.0-20220202055744-1ad0816210a6/go.mod h1:QgWc2UdIPJ8t3rnvv95tFNOsQDfpXYEZDbP281o3b2c= github.com/juju/testing v0.0.0-20220203020004-a0ff61f03494 h1:XEDzpuZb8Ma7vLja3+5hzUqVTvAqm5Y+ygvnDs5iTMM= github.com/juju/testing v0.0.0-20220203020004-a0ff61f03494/go.mod h1:rUquetT0ALL48LHZhyRGvjjBH8xZaZ8dFClulKK5wK4= -github.com/juju/utils v0.0.0-20180424094159-2000ea4ff043/go.mod h1:6/KLg8Wz/y2KVGWEpkK9vMNGkOnu4k/cqs8Z1fKjTOk= -github.com/juju/utils v0.0.0-20200116185830-d40c2fe10647 h1:wQpkHVbIIpz1PCcLYku9KFWsJ7aEMQXHBBmLy3tRBTk= -github.com/juju/utils v0.0.0-20200116185830-d40c2fe10647/go.mod h1:6/KLg8Wz/y2KVGWEpkK9vMNGkOnu4k/cqs8Z1fKjTOk= -github.com/juju/utils/v2 v2.0.0-20200923005554-4646bfea2ef1/go.mod h1:fdlDtQlzundleLLz/ggoYinEt/LmnrpNKcNTABQATNI= github.com/juju/utils/v3 v3.0.0-20220130232349-cd7ecef0e94a h1:5ZWDCeCF0RaITrZGemzmDFIhjR/MVSvBUqgSyaeTMbE= -github.com/juju/utils/v3 v3.0.0-20220130232349-cd7ecef0e94a/go.mod h1:LzwbbEN7buYjySp4nqnti6c6olSqRXUk6RkbSUUP1n8= -github.com/juju/version v0.0.0-20161031051906-1f41e27e54f2/go.mod h1:kE8gK5X0CImdr7qpSKl3xB2PmpySSmfj7zVbkZFs81U= -github.com/juju/version v0.0.0-20180108022336-b64dbd566305/go.mod h1:kE8gK5X0CImdr7qpSKl3xB2PmpySSmfj7zVbkZFs81U= -github.com/juju/version v0.0.0-20191219164919-81c1be00b9a6 h1:nrqc9b4YKpKV4lPI3GPPFbo5FUuxkWxgZE2Z8O4lgaw= -github.com/juju/version v0.0.0-20191219164919-81c1be00b9a6/go.mod h1:kE8gK5X0CImdr7qpSKl3xB2PmpySSmfj7zVbkZFs81U= github.com/juju/version/v2 v2.0.0-20211007103408-2e8da085dc23 h1:wtEPbidt1VyHlb8RSztU6ySQj29FLsOQiI9XiJhXDM4= -github.com/juju/version/v2 v2.0.0-20211007103408-2e8da085dc23/go.mod h1:Ljlbryh9sYaUSGXucslAEDf0A2XUSGvDbHJgW8ps6nc= -github.com/julienschmidt/httprouter v1.1.1-0.20151013225520-77a895ad01eb/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= @@ -500,10 +467,6 @@ github.com/ltcsuite/ltcd v0.0.0-20190101042124-f37f8bf35796/go.mod h1:3p7ZTf9V1s github.com/ltcsuite/ltcutil v0.0.0-20181217130922-17f3b04680b6/go.mod h1:8Vg/LTOO0KYa/vlHWJ6XZAevPQThGH5sufO0Hrou/lA= github.com/lunixbochs/vtclean v0.0.0-20160125035106-4fbf7632a2c6/go.mod h1:pHhQNgMf3btfWnGBVipUOjRYhoOsdGqdm/+2c2E2WMI= github.com/magiconair/properties v1.8.1/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= -github.com/masterzen/azure-sdk-for-go v3.2.0-beta.0.20161014135628-ee4f0065d00c+incompatible/go.mod h1:mf8fjOu33zCqxUjuiU3I8S1lJMyEAlH+0F2+M5xl3hE= -github.com/masterzen/simplexml v0.0.0-20160608183007-4572e39b1ab9/go.mod h1:kCEbxUJlNDEBNbdQMkPSp6yaKcRXVI6f4ddk8Riv4bc= -github.com/masterzen/winrm v0.0.0-20161014151040-7a535cd943fc/go.mod h1:CfZSN7zwz5gJiFhZJz49Uzk7mEBHIceWmbFmYx7Hf7E= -github.com/masterzen/xmlpath v0.0.0-20140218185901-13f4951698ad/go.mod h1:A0zPC53iKKKcXYxr4ROjpQRQ5FgJXtelNdSmHHuq/tY= github.com/mattn/go-colorable v0.0.6/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ= @@ -538,7 +501,6 @@ github.com/modern-go/reflect2 v1.0.1 h1:9f412s+6RmYXLWZSEzVVgPGK7C2PphHj5RJrvfx9 github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= -github.com/nu7hatch/gouuid v0.0.0-20131221200532-179d4d0c4d8d/go.mod h1:YUTz3bUH2ZwIWBy3CJBeOBEugqcmXREj14T+iG/4k4U= github.com/nwaples/rardecode v1.1.0/go.mod h1:5DzqNKiOdpKKBH87u8VlvAnPZMXcGRhxWkRpHbbfGS0= github.com/nwaples/rardecode v1.1.2 h1:Cj0yZY6T1Zx1R7AhTbyGSALm44/Mmq+BAPc4B/p/d3M= github.com/nwaples/rardecode v1.1.2/go.mod h1:5DzqNKiOdpKKBH87u8VlvAnPZMXcGRhxWkRpHbbfGS0= @@ -665,7 +627,6 @@ github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9de github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= -github.com/yuin/goldmark v1.4.1/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= github.com/zenazn/goji v0.9.0/go.mod h1:7S9M489iMyHBNxwZnk9/EHS098H4/F6TATF2mIxtB1Q= gitlab.com/yawning/bsaes.git v0.0.0-20190805113838-0a714cd429ec h1:FpfFs4EhNehiVfzQttTuxanPIT43FtkkCFypIod8LHo= gitlab.com/yawning/bsaes.git v0.0.0-20190805113838-0a714cd429ec/go.mod h1:BZ1RAoRPbCxum9Grlv5aeksu2H8BiKehBYooU2LFiOQ= @@ -734,7 +695,6 @@ go.uber.org/zap v1.13.0/go.mod h1:zwrFLgMcdUuIBviXEYEH1YKNaOBnKXsx2IPda5bBwHM= go.uber.org/zap v1.17.0 h1:MTjgFu6ZLKvY6Pvaqk97GlxNBuMpV4Hy/3P6tRGlI2U= go.uber.org/zap v1.17.0/go.mod h1:MXVU+bhUf/A7Xi2HNOnopQOrmycQ5Ih87HtOu4q5SSo= golang.org/x/crypto v0.0.0-20170930174604-9419663f5a44/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= -golang.org/x/crypto v0.0.0-20180214000028-650f4a345ab4/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181029021203-45a5f77698d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190211182817-74369b46fc67/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= @@ -745,7 +705,6 @@ golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8U golang.org/x/crypto v0.0.0-20190820162420-60c769a6c586/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20201002170205-7f63de1d35b0/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20201203163018-be400aefbc4c/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= @@ -786,8 +745,6 @@ golang.org/x/mod v0.1.1-0.20191107180719-034126e5016b/go.mod h1:QqPTAvyqsEbceGzB golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.5.1/go.mod h1:5OXOZSfqPIIbmVBIIKWRFfZjPR0E5r58TLhUjH0a2Ro= -golang.org/x/net v0.0.0-20180406214816-61147c48b25b/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180719180050-a680a1efc54d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -826,7 +783,6 @@ golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81R golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20200813134508-3edf25e44fcc/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= -golang.org/x/net v0.0.0-20200904194848-62affa334b73/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= @@ -911,7 +867,6 @@ golang.org/x/sys v0.0.0-20210426080607-c94f62235c83/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20211019181941-9d821ace8654/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a h1:dGzPydgVsqGcTRVwiLJ1jVbufYwmzD3LfVPLKsKg+0k= golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= @@ -1092,27 +1047,21 @@ gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8 gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= -gopkg.in/errgo.v1 v1.0.0-20161222125816-442357a80af5/go.mod h1:u0ALmqvLRxLI95fkdCEWrE6mhWYZW1aMOJHp5YXLHTg= gopkg.in/errgo.v1 v1.0.1 h1:oQFRXzZ7CkBGdm1XZm/EbQYaYNNEElNBOd09M6cqNso= gopkg.in/errgo.v1 v1.0.1/go.mod h1:3NjfXwocQRYAPTq4/fzX+CwUhPRcR/azYRhj8G+LqMo= gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= -gopkg.in/httprequest.v1 v1.1.1/go.mod h1:/CkavNL+g3qLOrpFHVrEx4NKepeqR4XTZWNj4sGGjz0= gopkg.in/inconshreveable/log15.v2 v2.0.0-20180818164646-67afb5ed74ec/go.mod h1:aPpfJ7XW+gOuirDoZ8gHhLh3kZ1B08FtV2bbmy7Jv3s= gopkg.in/ini.v1 v1.51.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= gopkg.in/macaroon-bakery.v2 v2.0.1 h1:0N1TlEdfLP4HXNCg7MQUMp5XwvOoxk+oe9Owr2cpvsc= gopkg.in/macaroon-bakery.v2 v2.0.1/go.mod h1:B4/T17l+ZWGwxFSZQmlBwp25x+og7OkhETfr3S9MbIA= gopkg.in/macaroon.v2 v2.0.0 h1:LVWycAfeJBUjCIqfR9gqlo7I8vmiXRr51YEOZ1suop8= gopkg.in/macaroon.v2 v2.0.0/go.mod h1:+I6LnTMkm/uV5ew/0nsulNjL16SK4+C8yDmRUzHR17I= -gopkg.in/mgo.v2 v2.0.0-20160818015218-f2b6f6c918c4/go.mod h1:yeKp02qBN3iKW1OzL3MGk2IdtZzaj7SFntXj72NppTA= -gopkg.in/mgo.v2 v2.0.0-20190816093944-a6b53ec6cb22/go.mod h1:yeKp02qBN3iKW1OzL3MGk2IdtZzaj7SFntXj72NppTA= gopkg.in/natefinch/lumberjack.v2 v2.0.0 h1:1Lc07Kr7qY4U2YPouBjpCLxpiyxIVoxqXgkXLknAOE8= gopkg.in/natefinch/lumberjack.v2 v2.0.0/go.mod h1:l0ndWWf7gzL7RNwBG7wST/UCcT4T24xpD6X8LsfU/+k= gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= -gopkg.in/tomb.v2 v2.0.0-20161208151619-d5d1b5820637/go.mod h1:BHsqpu/nsuzkT5BpiH1EMZPLyqSMM8JbIavyFACoFNk= -gopkg.in/yaml.v2 v2.0.0-20170712054546-1be3d31502d6/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74= gopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74= gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= @@ -1134,8 +1083,6 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= -launchpad.net/gocheck v0.0.0-20140225173054-000000000087/go.mod h1:hj7XX3B/0A+80Vse0e+BUHsHMTEhd0O4cpUHr/e/BUM= -launchpad.net/xmlpath v0.0.0-20130614043138-000000000004/go.mod h1:vqyExLOM3qBx7mvYRkoxjSCF945s0mbe7YynlKYXtsA= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= diff --git a/lnrpc/Dockerfile b/lnrpc/Dockerfile index 1152740d1..7f8bb4b5c 100644 --- a/lnrpc/Dockerfile +++ b/lnrpc/Dockerfile @@ -1,4 +1,4 @@ -FROM golang:1.17.3-buster +FROM golang:1.19-buster RUN apt-get update && apt-get install -y \ git \ diff --git a/make/builder.Dockerfile b/make/builder.Dockerfile index 8d23acc7d..fd636706d 100644 --- a/make/builder.Dockerfile +++ b/make/builder.Dockerfile @@ -4,7 +4,7 @@ # /dev.Dockerfile # /.github/workflows/main.yml # /.github/workflows/release.yml -FROM golang:1.18.2-buster +FROM golang:1.19-buster MAINTAINER Olaoluwa Osuntokun diff --git a/tools/Dockerfile b/tools/Dockerfile index d122abed7..1bec60a4e 100644 --- a/tools/Dockerfile +++ b/tools/Dockerfile @@ -1,4 +1,4 @@ -FROM golang:1.18.2-buster +FROM golang:1.19-buster RUN apt-get update && apt-get install -y git ENV GOCACHE=/tmp/build/.cache From b3998ddb5c6a65521f6ce27ee2ddefc47950282b Mon Sep 17 00:00:00 2001 From: Olaoluwa Osuntokun Date: Wed, 24 Aug 2022 11:42:34 -0500 Subject: [PATCH 2/2] lnrpc: re-compile protos w/ Go 1.19 --- lnrpc/autopilotrpc/autopilot.pb.go | 5 +- lnrpc/autopilotrpc/autopilot_grpc.pb.go | 40 +- lnrpc/chainrpc/chainnotifier.pb.go | 89 +- lnrpc/chainrpc/chainnotifier_grpc.pb.go | 90 +- lnrpc/devrpc/dev_grpc.pb.go | 10 +- lnrpc/invoicesrpc/invoices.pb.go | 69 +- lnrpc/invoicesrpc/invoices_grpc.pb.go | 58 +- lnrpc/lightning.pb.go | 1955 +++++++++------------ lnrpc/lightning_grpc.pb.go | 1074 ++++++----- lnrpc/neutrinorpc/neutrino_grpc.pb.go | 64 +- lnrpc/peersrpc/peers.pb.go | 27 +- lnrpc/peersrpc/peers_grpc.pb.go | 8 +- lnrpc/routerrpc/router.pb.go | 359 ++-- lnrpc/routerrpc/router_grpc.pb.go | 222 ++- lnrpc/signrpc/signer.pb.go | 359 ++-- lnrpc/signrpc/signer_grpc.pb.go | 338 ++-- lnrpc/verrpc/verrpc_grpc.pb.go | 8 +- lnrpc/walletrpc/walletkit.pb.go | 424 ++--- lnrpc/walletrpc/walletkit_grpc.pb.go | 568 +++--- lnrpc/walletunlocker.pb.go | 287 ++- lnrpc/walletunlocker_grpc.pb.go | 88 +- lnrpc/watchtowerrpc/watchtower_grpc.pb.go | 12 +- lnrpc/wtclientrpc/wtclient.pb.go | 64 +- lnrpc/wtclientrpc/wtclient_grpc.pb.go | 36 +- 24 files changed, 2773 insertions(+), 3481 deletions(-) diff --git a/lnrpc/autopilotrpc/autopilot.pb.go b/lnrpc/autopilotrpc/autopilot.pb.go index 65faad4a1..6b7c2957b 100644 --- a/lnrpc/autopilotrpc/autopilot.pb.go +++ b/lnrpc/autopilotrpc/autopilot.pb.go @@ -302,9 +302,8 @@ type SetScoresRequest struct { // The name of the heuristic to provide scores to. Heuristic string `protobuf:"bytes,1,opt,name=heuristic,proto3" json:"heuristic,omitempty"` - // - //A map from hex-encoded public keys to scores. Scores must be in the range - //[0.0, 1.0]. + // A map from hex-encoded public keys to scores. Scores must be in the range + // [0.0, 1.0]. Scores map[string]float64 `protobuf:"bytes,2,rep,name=scores,proto3" json:"scores,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"fixed64,2,opt,name=value,proto3"` } diff --git a/lnrpc/autopilotrpc/autopilot_grpc.pb.go b/lnrpc/autopilotrpc/autopilot_grpc.pb.go index 20d8113a6..67694b94f 100644 --- a/lnrpc/autopilotrpc/autopilot_grpc.pb.go +++ b/lnrpc/autopilotrpc/autopilot_grpc.pb.go @@ -18,21 +18,17 @@ const _ = grpc.SupportPackageIsVersion7 // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type AutopilotClient interface { - // - //Status returns whether the daemon's autopilot agent is active. + // Status returns whether the daemon's autopilot agent is active. Status(ctx context.Context, in *StatusRequest, opts ...grpc.CallOption) (*StatusResponse, error) - // - //ModifyStatus is used to modify the status of the autopilot agent, like - //enabling or disabling it. + // ModifyStatus is used to modify the status of the autopilot agent, like + // enabling or disabling it. ModifyStatus(ctx context.Context, in *ModifyStatusRequest, opts ...grpc.CallOption) (*ModifyStatusResponse, error) - // - //QueryScores queries all available autopilot heuristics, in addition to any - //active combination of these heruristics, for the scores they would give to - //the given nodes. + // QueryScores queries all available autopilot heuristics, in addition to any + // active combination of these heruristics, for the scores they would give to + // the given nodes. QueryScores(ctx context.Context, in *QueryScoresRequest, opts ...grpc.CallOption) (*QueryScoresResponse, error) - // - //SetScores attempts to set the scores used by the running autopilot agent, - //if the external scoring heuristic is enabled. + // SetScores attempts to set the scores used by the running autopilot agent, + // if the external scoring heuristic is enabled. SetScores(ctx context.Context, in *SetScoresRequest, opts ...grpc.CallOption) (*SetScoresResponse, error) } @@ -84,21 +80,17 @@ func (c *autopilotClient) SetScores(ctx context.Context, in *SetScoresRequest, o // All implementations must embed UnimplementedAutopilotServer // for forward compatibility type AutopilotServer interface { - // - //Status returns whether the daemon's autopilot agent is active. + // Status returns whether the daemon's autopilot agent is active. Status(context.Context, *StatusRequest) (*StatusResponse, error) - // - //ModifyStatus is used to modify the status of the autopilot agent, like - //enabling or disabling it. + // ModifyStatus is used to modify the status of the autopilot agent, like + // enabling or disabling it. ModifyStatus(context.Context, *ModifyStatusRequest) (*ModifyStatusResponse, error) - // - //QueryScores queries all available autopilot heuristics, in addition to any - //active combination of these heruristics, for the scores they would give to - //the given nodes. + // QueryScores queries all available autopilot heuristics, in addition to any + // active combination of these heruristics, for the scores they would give to + // the given nodes. QueryScores(context.Context, *QueryScoresRequest) (*QueryScoresResponse, error) - // - //SetScores attempts to set the scores used by the running autopilot agent, - //if the external scoring heuristic is enabled. + // SetScores attempts to set the scores used by the running autopilot agent, + // if the external scoring heuristic is enabled. SetScores(context.Context, *SetScoresRequest) (*SetScoresResponse, error) mustEmbedUnimplementedAutopilotServer() } diff --git a/lnrpc/chainrpc/chainnotifier.pb.go b/lnrpc/chainrpc/chainnotifier.pb.go index 4480b3137..26f70f8b3 100644 --- a/lnrpc/chainrpc/chainnotifier.pb.go +++ b/lnrpc/chainrpc/chainnotifier.pb.go @@ -25,29 +25,24 @@ type ConfRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The transaction hash for which we should request a confirmation notification - //for. If set to a hash of all zeros, then the confirmation notification will - //be requested for the script instead. + // The transaction hash for which we should request a confirmation notification + // for. If set to a hash of all zeros, then the confirmation notification will + // be requested for the script instead. Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"` - // - //An output script within a transaction with the hash above which will be used - //by light clients to match block filters. If the transaction hash is set to a - //hash of all zeros, then a confirmation notification will be requested for - //this script instead. + // An output script within a transaction with the hash above which will be used + // by light clients to match block filters. If the transaction hash is set to a + // hash of all zeros, then a confirmation notification will be requested for + // this script instead. Script []byte `protobuf:"bytes,2,opt,name=script,proto3" json:"script,omitempty"` - // - //The number of desired confirmations the transaction/output script should - //reach before dispatching a confirmation notification. + // The number of desired confirmations the transaction/output script should + // reach before dispatching a confirmation notification. NumConfs uint32 `protobuf:"varint,3,opt,name=num_confs,json=numConfs,proto3" json:"num_confs,omitempty"` - // - //The earliest height in the chain for which the transaction/output script - //could have been included in a block. This should in most cases be set to the - //broadcast height of the transaction/output script. + // The earliest height in the chain for which the transaction/output script + // could have been included in a block. This should in most cases be set to the + // broadcast height of the transaction/output script. HeightHint uint32 `protobuf:"varint,4,opt,name=height_hint,json=heightHint,proto3" json:"height_hint,omitempty"` - // - //If true, then the block that mines the specified txid/script will be - //included in eventual the notification event. + // If true, then the block that mines the specified txid/script will be + // included in eventual the notification event. IncludeBlock bool `protobuf:"varint,5,opt,name=include_block,json=includeBlock,proto3" json:"include_block,omitempty"` } @@ -132,9 +127,8 @@ type ConfDetails struct { BlockHeight uint32 `protobuf:"varint,3,opt,name=block_height,json=blockHeight,proto3" json:"block_height,omitempty"` // The index of the confirmed transaction within the transaction. TxIndex uint32 `protobuf:"varint,4,opt,name=tx_index,json=txIndex,proto3" json:"tx_index,omitempty"` - // - //The raw bytes of the block that mined the transaction. Only included if - //include_block was set in the request. + // The raw bytes of the block that mined the transaction. Only included if + // include_block was set in the request. RawBlock []byte `protobuf:"bytes,5,opt,name=raw_block,json=rawBlock,proto3" json:"raw_block,omitempty"` } @@ -249,6 +243,7 @@ type ConfEvent struct { unknownFields protoimpl.UnknownFields // Types that are assignable to Event: + // // *ConfEvent_Conf // *ConfEvent_Reorg Event isConfEvent_Event `protobuf_oneof:"event"` @@ -312,16 +307,14 @@ type isConfEvent_Event interface { } type ConfEvent_Conf struct { - // - //An event that includes the confirmation details of the request - //(txid/ouput script). + // An event that includes the confirmation details of the request + // (txid/ouput script). Conf *ConfDetails `protobuf:"bytes,1,opt,name=conf,proto3,oneof"` } type ConfEvent_Reorg struct { - // - //An event send when the transaction of the request is reorged out of the - //chain. + // An event send when the transaction of the request is reorged out of the + // chain. Reorg *Reorg `protobuf:"bytes,2,opt,name=reorg,proto3,oneof"` } @@ -391,24 +384,21 @@ type SpendRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The outpoint for which we should request a spend notification for. If set to - //a zero outpoint, then the spend notification will be requested for the - //script instead. A zero or nil outpoint is not supported for Taproot spends - //because the output script cannot reliably be computed from the witness alone - //and the spent output script is not always available in the rescan context. - //So an outpoint must _always_ be specified when registering a spend - //notification for a Taproot output. + // The outpoint for which we should request a spend notification for. If set to + // a zero outpoint, then the spend notification will be requested for the + // script instead. A zero or nil outpoint is not supported for Taproot spends + // because the output script cannot reliably be computed from the witness alone + // and the spent output script is not always available in the rescan context. + // So an outpoint must _always_ be specified when registering a spend + // notification for a Taproot output. Outpoint *Outpoint `protobuf:"bytes,1,opt,name=outpoint,proto3" json:"outpoint,omitempty"` - // - //The output script for the outpoint above. This will be used by light clients - //to match block filters. If the outpoint is set to a zero outpoint, then a - //spend notification will be requested for this script instead. + // The output script for the outpoint above. This will be used by light clients + // to match block filters. If the outpoint is set to a zero outpoint, then a + // spend notification will be requested for this script instead. Script []byte `protobuf:"bytes,2,opt,name=script,proto3" json:"script,omitempty"` - // - //The earliest height in the chain for which the outpoint/output script could - //have been spent. This should in most cases be set to the broadcast height of - //the outpoint/output script. + // The earliest height in the chain for which the outpoint/output script could + // have been spent. This should in most cases be set to the broadcast height of + // the outpoint/output script. HeightHint uint32 `protobuf:"varint,3,opt,name=height_hint,json=heightHint,proto3" json:"height_hint,omitempty"` } @@ -555,6 +545,7 @@ type SpendEvent struct { unknownFields protoimpl.UnknownFields // Types that are assignable to Event: + // // *SpendEvent_Spend // *SpendEvent_Reorg Event isSpendEvent_Event `protobuf_oneof:"event"` @@ -618,16 +609,14 @@ type isSpendEvent_Event interface { } type SpendEvent_Spend struct { - // - //An event that includes the details of the spending transaction of the - //request (outpoint/output script). + // An event that includes the details of the spending transaction of the + // request (outpoint/output script). Spend *SpendDetails `protobuf:"bytes,1,opt,name=spend,proto3,oneof"` } type SpendEvent_Reorg struct { - // - //An event sent when the spending transaction of the request was - //reorged out of the chain. + // An event sent when the spending transaction of the request was + // reorged out of the chain. Reorg *Reorg `protobuf:"bytes,2,opt,name=reorg,proto3,oneof"` } diff --git a/lnrpc/chainrpc/chainnotifier_grpc.pb.go b/lnrpc/chainrpc/chainnotifier_grpc.pb.go index 9b96db4c9..a50ac59ab 100644 --- a/lnrpc/chainrpc/chainnotifier_grpc.pb.go +++ b/lnrpc/chainrpc/chainnotifier_grpc.pb.go @@ -18,35 +18,32 @@ const _ = grpc.SupportPackageIsVersion7 // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type ChainNotifierClient interface { + // RegisterConfirmationsNtfn is a synchronous response-streaming RPC that + // registers an intent for a client to be notified once a confirmation request + // has reached its required number of confirmations on-chain. // - //RegisterConfirmationsNtfn is a synchronous response-streaming RPC that - //registers an intent for a client to be notified once a confirmation request - //has reached its required number of confirmations on-chain. - // - //A confirmation request must have a valid output script. It is also possible - //to give a transaction ID. If the transaction ID is not set, a notification - //is sent once the output script confirms. If the transaction ID is also set, - //a notification is sent once the output script confirms in the given - //transaction. + // A confirmation request must have a valid output script. It is also possible + // to give a transaction ID. If the transaction ID is not set, a notification + // is sent once the output script confirms. If the transaction ID is also set, + // a notification is sent once the output script confirms in the given + // transaction. RegisterConfirmationsNtfn(ctx context.Context, in *ConfRequest, opts ...grpc.CallOption) (ChainNotifier_RegisterConfirmationsNtfnClient, error) + // RegisterSpendNtfn is a synchronous response-streaming RPC that registers an + // intent for a client to be notification once a spend request has been spent + // by a transaction that has confirmed on-chain. // - //RegisterSpendNtfn is a synchronous response-streaming RPC that registers an - //intent for a client to be notification once a spend request has been spent - //by a transaction that has confirmed on-chain. - // - //A client can specify whether the spend request should be for a particular - //outpoint or for an output script by specifying a zero outpoint. + // A client can specify whether the spend request should be for a particular + // outpoint or for an output script by specifying a zero outpoint. RegisterSpendNtfn(ctx context.Context, in *SpendRequest, opts ...grpc.CallOption) (ChainNotifier_RegisterSpendNtfnClient, error) + // RegisterBlockEpochNtfn is a synchronous response-streaming RPC that + // registers an intent for a client to be notified of blocks in the chain. The + // stream will return a hash and height tuple of a block for each new/stale + // block in the chain. It is the client's responsibility to determine whether + // the tuple returned is for a new or stale block in the chain. // - //RegisterBlockEpochNtfn is a synchronous response-streaming RPC that - //registers an intent for a client to be notified of blocks in the chain. The - //stream will return a hash and height tuple of a block for each new/stale - //block in the chain. It is the client's responsibility to determine whether - //the tuple returned is for a new or stale block in the chain. - // - //A client can also request a historical backlog of blocks from a particular - //point. This allows clients to be idempotent by ensuring that they do not - //missing processing a single block within the chain. + // A client can also request a historical backlog of blocks from a particular + // point. This allows clients to be idempotent by ensuring that they do not + // missing processing a single block within the chain. RegisterBlockEpochNtfn(ctx context.Context, in *BlockEpoch, opts ...grpc.CallOption) (ChainNotifier_RegisterBlockEpochNtfnClient, error) } @@ -158,35 +155,32 @@ func (x *chainNotifierRegisterBlockEpochNtfnClient) Recv() (*BlockEpoch, error) // All implementations must embed UnimplementedChainNotifierServer // for forward compatibility type ChainNotifierServer interface { + // RegisterConfirmationsNtfn is a synchronous response-streaming RPC that + // registers an intent for a client to be notified once a confirmation request + // has reached its required number of confirmations on-chain. // - //RegisterConfirmationsNtfn is a synchronous response-streaming RPC that - //registers an intent for a client to be notified once a confirmation request - //has reached its required number of confirmations on-chain. - // - //A confirmation request must have a valid output script. It is also possible - //to give a transaction ID. If the transaction ID is not set, a notification - //is sent once the output script confirms. If the transaction ID is also set, - //a notification is sent once the output script confirms in the given - //transaction. + // A confirmation request must have a valid output script. It is also possible + // to give a transaction ID. If the transaction ID is not set, a notification + // is sent once the output script confirms. If the transaction ID is also set, + // a notification is sent once the output script confirms in the given + // transaction. RegisterConfirmationsNtfn(*ConfRequest, ChainNotifier_RegisterConfirmationsNtfnServer) error + // RegisterSpendNtfn is a synchronous response-streaming RPC that registers an + // intent for a client to be notification once a spend request has been spent + // by a transaction that has confirmed on-chain. // - //RegisterSpendNtfn is a synchronous response-streaming RPC that registers an - //intent for a client to be notification once a spend request has been spent - //by a transaction that has confirmed on-chain. - // - //A client can specify whether the spend request should be for a particular - //outpoint or for an output script by specifying a zero outpoint. + // A client can specify whether the spend request should be for a particular + // outpoint or for an output script by specifying a zero outpoint. RegisterSpendNtfn(*SpendRequest, ChainNotifier_RegisterSpendNtfnServer) error + // RegisterBlockEpochNtfn is a synchronous response-streaming RPC that + // registers an intent for a client to be notified of blocks in the chain. The + // stream will return a hash and height tuple of a block for each new/stale + // block in the chain. It is the client's responsibility to determine whether + // the tuple returned is for a new or stale block in the chain. // - //RegisterBlockEpochNtfn is a synchronous response-streaming RPC that - //registers an intent for a client to be notified of blocks in the chain. The - //stream will return a hash and height tuple of a block for each new/stale - //block in the chain. It is the client's responsibility to determine whether - //the tuple returned is for a new or stale block in the chain. - // - //A client can also request a historical backlog of blocks from a particular - //point. This allows clients to be idempotent by ensuring that they do not - //missing processing a single block within the chain. + // A client can also request a historical backlog of blocks from a particular + // point. This allows clients to be idempotent by ensuring that they do not + // missing processing a single block within the chain. RegisterBlockEpochNtfn(*BlockEpoch, ChainNotifier_RegisterBlockEpochNtfnServer) error mustEmbedUnimplementedChainNotifierServer() } diff --git a/lnrpc/devrpc/dev_grpc.pb.go b/lnrpc/devrpc/dev_grpc.pb.go index f76a459cc..fc6b509d4 100644 --- a/lnrpc/devrpc/dev_grpc.pb.go +++ b/lnrpc/devrpc/dev_grpc.pb.go @@ -19,9 +19,8 @@ const _ = grpc.SupportPackageIsVersion7 // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type DevClient interface { - // - //ImportGraph imports a ChannelGraph into the graph database. Should only be - //used for development. + // ImportGraph imports a ChannelGraph into the graph database. Should only be + // used for development. ImportGraph(ctx context.Context, in *lnrpc.ChannelGraph, opts ...grpc.CallOption) (*ImportGraphResponse, error) } @@ -46,9 +45,8 @@ func (c *devClient) ImportGraph(ctx context.Context, in *lnrpc.ChannelGraph, opt // All implementations must embed UnimplementedDevServer // for forward compatibility type DevServer interface { - // - //ImportGraph imports a ChannelGraph into the graph database. Should only be - //used for development. + // ImportGraph imports a ChannelGraph into the graph database. Should only be + // used for development. ImportGraph(context.Context, *lnrpc.ChannelGraph) (*ImportGraphResponse, error) mustEmbedUnimplementedDevServer() } diff --git a/lnrpc/invoicesrpc/invoices.pb.go b/lnrpc/invoicesrpc/invoices.pb.go index 77d157064..f4f56dccf 100644 --- a/lnrpc/invoicesrpc/invoices.pb.go +++ b/lnrpc/invoicesrpc/invoices.pb.go @@ -26,15 +26,13 @@ type LookupModifier int32 const ( // The default look up modifier, no look up behavior is changed. LookupModifier_DEFAULT LookupModifier = 0 - // - //Indicates that when a look up is done based on a set_id, then only that set - //of HTLCs related to that set ID should be returned. + // Indicates that when a look up is done based on a set_id, then only that set + // of HTLCs related to that set ID should be returned. LookupModifier_HTLC_SET_ONLY LookupModifier = 1 - // - //Indicates that when a look up is done using a payment_addr, then no HTLCs - //related to the payment_addr should be returned. This is useful when one - //wants to be able to obtain the set of associated setIDs with a given - //invoice, then look up the sub-invoices "projected" by that set ID. + // Indicates that when a look up is done using a payment_addr, then no HTLCs + // related to the payment_addr should be returned. This is useful when one + // wants to be able to obtain the set of associated setIDs with a given + // invoice, then look up the sub-invoices "projected" by that set ID. LookupModifier_HTLC_SET_BLANK LookupModifier = 2 ) @@ -171,28 +169,24 @@ type AddHoldInvoiceRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //An optional memo to attach along with the invoice. Used for record keeping - //purposes for the invoice's creator, and will also be set in the description - //field of the encoded payment request if the description_hash field is not - //being used. + // An optional memo to attach along with the invoice. Used for record keeping + // purposes for the invoice's creator, and will also be set in the description + // field of the encoded payment request if the description_hash field is not + // being used. Memo string `protobuf:"bytes,1,opt,name=memo,proto3" json:"memo,omitempty"` // The hash of the preimage Hash []byte `protobuf:"bytes,2,opt,name=hash,proto3" json:"hash,omitempty"` + // The value of this invoice in satoshis // - //The value of this invoice in satoshis - // - //The fields value and value_msat are mutually exclusive. + // The fields value and value_msat are mutually exclusive. Value int64 `protobuf:"varint,3,opt,name=value,proto3" json:"value,omitempty"` + // The value of this invoice in millisatoshis // - //The value of this invoice in millisatoshis - // - //The fields value and value_msat are mutually exclusive. + // The fields value and value_msat are mutually exclusive. ValueMsat int64 `protobuf:"varint,10,opt,name=value_msat,json=valueMsat,proto3" json:"value_msat,omitempty"` - // - //Hash (SHA-256) of a description of the payment. Used if the description of - //payment (memo) is too long to naturally fit within the description field - //of an encoded payment request. + // Hash (SHA-256) of a description of the payment. Used if the description of + // payment (memo) is too long to naturally fit within the description field + // of an encoded payment request. DescriptionHash []byte `protobuf:"bytes,4,opt,name=description_hash,json=descriptionHash,proto3" json:"description_hash,omitempty"` // Payment request expiry time in seconds. Default is 3600 (1 hour). Expiry int64 `protobuf:"varint,5,opt,name=expiry,proto3" json:"expiry,omitempty"` @@ -200,9 +194,8 @@ type AddHoldInvoiceRequest struct { FallbackAddr string `protobuf:"bytes,6,opt,name=fallback_addr,json=fallbackAddr,proto3" json:"fallback_addr,omitempty"` // Delta to use for the time-lock of the CLTV extended to the final hop. CltvExpiry uint64 `protobuf:"varint,7,opt,name=cltv_expiry,json=cltvExpiry,proto3" json:"cltv_expiry,omitempty"` - // - //Route hints that can each be individually used to assist in reaching the - //invoice's destination. + // Route hints that can each be individually used to assist in reaching the + // invoice's destination. RouteHints []*lnrpc.RouteHint `protobuf:"bytes,8,rep,name=route_hints,json=routeHints,proto3" json:"route_hints,omitempty"` // Whether this invoice should include routing hints for private channels. Private bool `protobuf:"varint,9,opt,name=private,proto3" json:"private,omitempty"` @@ -315,21 +308,18 @@ type AddHoldInvoiceResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //A bare-bones invoice for a payment within the Lightning Network. With the - //details of the invoice, the sender has all the data necessary to send a - //payment to the recipient. + // A bare-bones invoice for a payment within the Lightning Network. With the + // details of the invoice, the sender has all the data necessary to send a + // payment to the recipient. PaymentRequest string `protobuf:"bytes,1,opt,name=payment_request,json=paymentRequest,proto3" json:"payment_request,omitempty"` - // - //The "add" index of this invoice. Each newly created invoice will increment - //this index making it monotonically increasing. Callers to the - //SubscribeInvoices call can use this to instantly get notified of all added - //invoices with an add_index greater than this one. + // The "add" index of this invoice. Each newly created invoice will increment + // this index making it monotonically increasing. Callers to the + // SubscribeInvoices call can use this to instantly get notified of all added + // invoices with an add_index greater than this one. AddIndex uint64 `protobuf:"varint,2,opt,name=add_index,json=addIndex,proto3" json:"add_index,omitempty"` - // - //The payment address of the generated invoice. This value should be used - //in all payments for this invoice as we require it for end to end - //security. + // The payment address of the generated invoice. This value should be used + // in all payments for this invoice as we require it for end to end + // security. PaymentAddr []byte `protobuf:"bytes,3,opt,name=payment_addr,json=paymentAddr,proto3" json:"payment_addr,omitempty"` } @@ -528,6 +518,7 @@ type LookupInvoiceMsg struct { unknownFields protoimpl.UnknownFields // Types that are assignable to InvoiceRef: + // // *LookupInvoiceMsg_PaymentHash // *LookupInvoiceMsg_PaymentAddr // *LookupInvoiceMsg_SetId diff --git a/lnrpc/invoicesrpc/invoices_grpc.pb.go b/lnrpc/invoicesrpc/invoices_grpc.pb.go index 979beb71d..9284d4b0b 100644 --- a/lnrpc/invoicesrpc/invoices_grpc.pb.go +++ b/lnrpc/invoicesrpc/invoices_grpc.pb.go @@ -19,27 +19,22 @@ const _ = grpc.SupportPackageIsVersion7 // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type InvoicesClient interface { - // - //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. + // 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. SubscribeSingleInvoice(ctx context.Context, in *SubscribeSingleInvoiceRequest, opts ...grpc.CallOption) (Invoices_SubscribeSingleInvoiceClient, error) - // - //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. + // 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. CancelInvoice(ctx context.Context, in *CancelInvoiceMsg, opts ...grpc.CallOption) (*CancelInvoiceResp, error) - // - //AddHoldInvoice creates a hold invoice. It ties the invoice to the hash - //supplied in the request. + // AddHoldInvoice creates a hold invoice. It ties the invoice to the hash + // supplied in the request. AddHoldInvoice(ctx context.Context, in *AddHoldInvoiceRequest, opts ...grpc.CallOption) (*AddHoldInvoiceResp, error) - // - //SettleInvoice settles an accepted invoice. If the invoice is already - //settled, this call will succeed. + // SettleInvoice settles an accepted invoice. If the invoice is already + // settled, this call will succeed. SettleInvoice(ctx context.Context, in *SettleInvoiceMsg, opts ...grpc.CallOption) (*SettleInvoiceResp, error) - // - //LookupInvoiceV2 attempts to look up at invoice. An invoice can be refrenced - //using either its payment hash, payment address, or set ID. + // LookupInvoiceV2 attempts to look up at invoice. An invoice can be refrenced + // using either its payment hash, payment address, or set ID. LookupInvoiceV2(ctx context.Context, in *LookupInvoiceMsg, opts ...grpc.CallOption) (*lnrpc.Invoice, error) } @@ -123,27 +118,22 @@ func (c *invoicesClient) LookupInvoiceV2(ctx context.Context, in *LookupInvoiceM // All implementations must embed UnimplementedInvoicesServer // for forward compatibility type InvoicesServer interface { - // - //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. + // 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. SubscribeSingleInvoice(*SubscribeSingleInvoiceRequest, Invoices_SubscribeSingleInvoiceServer) error - // - //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. + // 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. CancelInvoice(context.Context, *CancelInvoiceMsg) (*CancelInvoiceResp, error) - // - //AddHoldInvoice creates a hold invoice. It ties the invoice to the hash - //supplied in the request. + // AddHoldInvoice creates a hold invoice. It ties the invoice to the hash + // supplied in the request. AddHoldInvoice(context.Context, *AddHoldInvoiceRequest) (*AddHoldInvoiceResp, error) - // - //SettleInvoice settles an accepted invoice. If the invoice is already - //settled, this call will succeed. + // SettleInvoice settles an accepted invoice. If the invoice is already + // settled, this call will succeed. SettleInvoice(context.Context, *SettleInvoiceMsg) (*SettleInvoiceResp, error) - // - //LookupInvoiceV2 attempts to look up at invoice. An invoice can be refrenced - //using either its payment hash, payment address, or set ID. + // LookupInvoiceV2 attempts to look up at invoice. An invoice can be refrenced + // using either its payment hash, payment address, or set ID. LookupInvoiceV2(context.Context, *LookupInvoiceMsg) (*lnrpc.Invoice, error) mustEmbedUnimplementedInvoicesServer() } diff --git a/lnrpc/lightning.pb.go b/lnrpc/lightning.pb.go index ff1073173..fd5af70c8 100644 --- a/lnrpc/lightning.pb.go +++ b/lnrpc/lightning.pb.go @@ -87,12 +87,11 @@ func (OutputScriptType) EnumDescriptor() ([]byte, []int) { return file_lightning_proto_rawDescGZIP(), []int{0} } +// `AddressType` has to be one of: // -//`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) -//- `p2tr`: Pay to taproot pubkey (`TAPROOT_PUBKEY` = 4) +// - `p2wkh`: Pay to witness key hash (`WITNESS_PUBKEY_HASH` = 0) +// - `np2wkh`: Pay to nested witness key hash (`NESTED_PUBKEY_HASH` = 1) +// - `p2tr`: Pay to taproot pubkey (`TAPROOT_PUBKEY` = 4) type AddressType int32 const ( @@ -154,30 +153,25 @@ func (AddressType) EnumDescriptor() ([]byte, []int) { type CommitmentType int32 const ( - // - //Returned when the commitment type isn't known or unavailable. + // Returned when the commitment type isn't known or unavailable. CommitmentType_UNKNOWN_COMMITMENT_TYPE CommitmentType = 0 - // - //A channel using the legacy commitment format having tweaked to_remote - //keys. + // A channel using the legacy commitment format having tweaked to_remote + // keys. CommitmentType_LEGACY CommitmentType = 1 - // - //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. + // 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. CommitmentType_STATIC_REMOTE_KEY CommitmentType = 2 - // - //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. + // 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. CommitmentType_ANCHORS CommitmentType = 3 - // - //A channel that uses a commitment type that builds upon the anchors - //commitment format, but in addition requires a CLTV clause to spend outputs - //paying to the channel initiator. This is intended for use on leased channels - //to guarantee that the channel initiator has no incentives to close a leased - //channel before its maturity date. + // A channel that uses a commitment type that builds upon the anchors + // commitment format, but in addition requires a CLTV clause to spend outputs + // paying to the channel initiator. This is intended for use on leased channels + // to guarantee that the channel initiator has no incentives to close a leased + // channel before its maturity date. CommitmentType_SCRIPT_ENFORCED_LEASE CommitmentType = 4 ) @@ -284,15 +278,13 @@ const ( ResolutionType_TYPE_UNKNOWN ResolutionType = 0 // We resolved an anchor output. ResolutionType_ANCHOR ResolutionType = 1 - // - //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. + // 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. ResolutionType_INCOMING_HTLC ResolutionType = 2 - // - //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. + // 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. ResolutionType_OUTGOING_HTLC ResolutionType = 3 // We force closed and need to sweep our time locked commitment output. ResolutionType_COMMIT ResolutionType = 4 @@ -352,16 +344,14 @@ const ( ResolutionOutcome_CLAIMED ResolutionOutcome = 1 // An output was left unclaimed on chain. ResolutionOutcome_UNCLAIMED ResolutionOutcome = 2 - // - //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. + // 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. ResolutionOutcome_ABANDONED ResolutionOutcome = 3 - // - //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. + // 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. ResolutionOutcome_FIRST_STAGE ResolutionOutcome = 4 // A htlc was timed out on chain. ResolutionOutcome_TIMEOUT ResolutionOutcome = 5 @@ -512,25 +502,19 @@ func (InvoiceHTLCState) EnumDescriptor() ([]byte, []int) { type PaymentFailureReason int32 const ( - // - //Payment isn't failed (yet). + // Payment isn't failed (yet). PaymentFailureReason_FAILURE_REASON_NONE PaymentFailureReason = 0 - // - //There are more routes to try, but the payment timeout was exceeded. + // There are more routes to try, but the payment timeout was exceeded. PaymentFailureReason_FAILURE_REASON_TIMEOUT PaymentFailureReason = 1 - // - //All possible routes were tried and failed permanently. Or were no - //routes to the destination at all. + // All possible routes were tried and failed permanently. Or were no + // routes to the destination at all. PaymentFailureReason_FAILURE_REASON_NO_ROUTE PaymentFailureReason = 2 - // - //A non-recoverable error has occured. + // A non-recoverable error has occured. PaymentFailureReason_FAILURE_REASON_ERROR PaymentFailureReason = 3 - // - //Payment details incorrect (unknown hash, invalid amt or - //invalid final cltv delta) + // Payment details incorrect (unknown hash, invalid amt or + // invalid final cltv delta) PaymentFailureReason_FAILURE_REASON_INCORRECT_PAYMENT_DETAILS PaymentFailureReason = 4 - // - //Insufficient local balance. + // Insufficient local balance. PaymentFailureReason_FAILURE_REASON_INSUFFICIENT_BALANCE PaymentFailureReason = 5 ) @@ -812,17 +796,13 @@ func (ChannelCloseSummary_ClosureType) EnumDescriptor() ([]byte, []int) { type Peer_SyncType int32 const ( - // - //Denotes that we cannot determine the peer's current sync type. + // Denotes that we cannot determine the peer's current sync type. Peer_UNKNOWN_SYNC Peer_SyncType = 0 - // - //Denotes that we are actively receiving new graph updates from the peer. + // Denotes that we are actively receiving new graph updates from the peer. Peer_ACTIVE_SYNC Peer_SyncType = 1 - // - //Denotes that we are not receiving new graph updates from the peer. + // Denotes that we are not receiving new graph updates from the peer. Peer_PASSIVE_SYNC Peer_SyncType = 2 - // - //Denotes that this peer is pinned into an active sync. + // Denotes that this peer is pinned into an active sync. Peer_PINNED_SYNC Peer_SyncType = 3 ) @@ -1178,10 +1158,9 @@ func (HTLCAttempt_HTLCStatus) EnumDescriptor() ([]byte, []int) { type Failure_FailureCode int32 const ( - // - //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. + // 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. Failure_RESERVED Failure_FailureCode = 0 Failure_INCORRECT_OR_UNKNOWN_PAYMENT_DETAILS Failure_FailureCode = 1 Failure_INCORRECT_PAYMENT_AMOUNT Failure_FailureCode = 2 @@ -1207,15 +1186,12 @@ const ( Failure_EXPIRY_TOO_FAR Failure_FailureCode = 22 Failure_MPP_TIMEOUT Failure_FailureCode = 23 Failure_INVALID_ONION_PAYLOAD Failure_FailureCode = 24 - // - //An internal error occurred. + // An internal error occurred. Failure_INTERNAL_FAILURE Failure_FailureCode = 997 - // - //The error source is known, but the failure itself couldn't be decoded. + // The error source is known, but the failure itself couldn't be decoded. Failure_UNKNOWN_FAILURE Failure_FailureCode = 998 - // - //An unreadable failure result is returned if the received failure message - //cannot be decrypted. In that case the error source is unknown. + // An unreadable failure result is returned if the received failure message + // cannot be decrypted. In that case the error source is unknown. Failure_UNREADABLE_FAILURE Failure_FailureCode = 999 ) @@ -1860,16 +1836,14 @@ type GetTransactionsRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The height from which to list transactions, inclusive. If this value is - //greater than end_height, transactions will be read in reverse. + // The height from which to list transactions, inclusive. If this value is + // greater than end_height, transactions will be read in reverse. StartHeight int32 `protobuf:"varint,1,opt,name=start_height,json=startHeight,proto3" json:"start_height,omitempty"` - // - //The height until which to list transactions, inclusive. To include - //unconfirmed transactions, this value should be set to -1, which will - //return transactions from start_height until the current chain tip and - //unconfirmed transactions. If no end_height is provided, the call will - //default to this option. + // The height until which to list transactions, inclusive. To include + // unconfirmed transactions, this value should be set to -1, which will + // return transactions from start_height until the current chain tip and + // unconfirmed transactions. If no end_height is provided, the call will + // default to this option. EndHeight int32 `protobuf:"varint,2,opt,name=end_height,json=endHeight,proto3" json:"end_height,omitempty"` // An optional filter to only include transactions relevant to an account. Account string `protobuf:"bytes,3,opt,name=account,proto3" json:"account,omitempty"` @@ -1982,6 +1956,7 @@ type FeeLimit struct { unknownFields protoimpl.UnknownFields // Types that are assignable to Limit: + // // *FeeLimit_Fixed // *FeeLimit_FixedMsat // *FeeLimit_Percent @@ -2053,18 +2028,16 @@ type isFeeLimit_Limit interface { } type FeeLimit_Fixed struct { + // The fee limit expressed as a fixed amount of satoshis. // - //The fee limit expressed as a fixed amount of satoshis. - // - //The fields fixed and fixed_msat are mutually exclusive. + // The fields fixed and fixed_msat are mutually exclusive. Fixed int64 `protobuf:"varint,1,opt,name=fixed,proto3,oneof"` } type FeeLimit_FixedMsat struct { + // The fee limit expressed as a fixed amount of millisatoshis. // - //The fee limit expressed as a fixed amount of millisatoshis. - // - //The fields fixed and fixed_msat are mutually exclusive. + // The fields fixed and fixed_msat are mutually exclusive. FixedMsat int64 `protobuf:"varint,3,opt,name=fixed_msat,json=fixedMsat,proto3,oneof"` } @@ -2084,82 +2057,67 @@ type SendRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The identity pubkey of the payment recipient. When using REST, this field - //must be encoded as base64. + // The identity pubkey of the payment recipient. When using REST, this field + // must be encoded as base64. Dest []byte `protobuf:"bytes,1,opt,name=dest,proto3" json:"dest,omitempty"` - // - //The hex-encoded identity pubkey of the payment recipient. Deprecated now - //that the REST gateway supports base64 encoding of bytes fields. + // The hex-encoded identity pubkey of the payment recipient. Deprecated now + // that the REST gateway supports base64 encoding of bytes fields. // // Deprecated: Do not use. DestString string `protobuf:"bytes,2,opt,name=dest_string,json=destString,proto3" json:"dest_string,omitempty"` + // The amount to send expressed in satoshis. // - //The amount to send expressed in satoshis. - // - //The fields amt and amt_msat are mutually exclusive. + // The fields amt and amt_msat are mutually exclusive. Amt int64 `protobuf:"varint,3,opt,name=amt,proto3" json:"amt,omitempty"` + // The amount to send expressed in millisatoshis. // - //The amount to send expressed in millisatoshis. - // - //The fields amt and amt_msat are mutually exclusive. + // The fields amt and amt_msat are mutually exclusive. AmtMsat int64 `protobuf:"varint,12,opt,name=amt_msat,json=amtMsat,proto3" json:"amt_msat,omitempty"` - // - //The hash to use within the payment's HTLC. When using REST, this field - //must be encoded as base64. + // The hash to use within the payment's HTLC. When using REST, this field + // must be encoded as base64. PaymentHash []byte `protobuf:"bytes,4,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"` - // - //The hex-encoded hash to use within the payment's HTLC. Deprecated now - //that the REST gateway supports base64 encoding of bytes fields. + // The hex-encoded hash to use within the payment's HTLC. Deprecated now + // that the REST gateway supports base64 encoding of bytes fields. // // Deprecated: Do not use. PaymentHashString string `protobuf:"bytes,5,opt,name=payment_hash_string,json=paymentHashString,proto3" json:"payment_hash_string,omitempty"` - // - //A bare-bones invoice for a payment within the Lightning Network. With the - //details of the invoice, the sender has all the data necessary to send a - //payment to the recipient. + // A bare-bones invoice for a payment within the Lightning Network. With the + // details of the invoice, the sender has all the data necessary to send a + // payment to the recipient. PaymentRequest string `protobuf:"bytes,6,opt,name=payment_request,json=paymentRequest,proto3" json:"payment_request,omitempty"` - // - //The CLTV delta from the current height that should be used to set the - //timelock for the final hop. + // The CLTV delta from the current height that should be used to set the + // timelock for the final hop. FinalCltvDelta int32 `protobuf:"varint,7,opt,name=final_cltv_delta,json=finalCltvDelta,proto3" json:"final_cltv_delta,omitempty"` - // - //The maximum number of satoshis that will be paid as a fee of the payment. - //This value can be represented either as a percentage of the amount being - //sent, or as a fixed amount of the maximum fee the user is willing the pay to - //send the payment. If not specified, lnd will use a default value of 100% - //fees for small amounts (<=1k sat) or 5% fees for larger amounts. + // The maximum number of satoshis that will be paid as a fee of the payment. + // This value can be represented either as a percentage of the amount being + // sent, or as a fixed amount of the maximum fee the user is willing the pay to + // send the payment. If not specified, lnd will use a default value of 100% + // fees for small amounts (<=1k sat) or 5% fees for larger amounts. FeeLimit *FeeLimit `protobuf:"bytes,8,opt,name=fee_limit,json=feeLimit,proto3" json:"fee_limit,omitempty"` - // - //The channel id of the channel that must be taken to the first hop. If zero, - //any channel may be used. + // The channel id of the channel that must be taken to the first hop. If zero, + // any channel may be used. OutgoingChanId uint64 `protobuf:"varint,9,opt,name=outgoing_chan_id,json=outgoingChanId,proto3" json:"outgoing_chan_id,omitempty"` - // - //The pubkey of the last hop of the route. If empty, any hop may be used. + // The pubkey of the last hop of the route. If empty, any hop may be used. LastHopPubkey []byte `protobuf:"bytes,13,opt,name=last_hop_pubkey,json=lastHopPubkey,proto3" json:"last_hop_pubkey,omitempty"` - // - //An optional maximum total time lock for the route. This should not exceed - //lnd's `--max-cltv-expiry` setting. If zero, then the value of - //`--max-cltv-expiry` is enforced. + // An optional maximum total time lock for the route. This should not exceed + // lnd's `--max-cltv-expiry` setting. If zero, then the value of + // `--max-cltv-expiry` is enforced. CltvLimit uint32 `protobuf:"varint,10,opt,name=cltv_limit,json=cltvLimit,proto3" json:"cltv_limit,omitempty"` - // - //An optional field that can be used to pass an arbitrary set of TLV records - //to a peer which understands the new records. This can be used to pass - //application specific data during the payment attempt. Record types are - //required to be in the custom range >= 65536. When using REST, the values - //must be encoded as base64. + // An optional field that can be used to pass an arbitrary set of TLV records + // to a peer which understands the new records. This can be used to pass + // application specific data during the payment attempt. Record types are + // required to be in the custom range >= 65536. When using REST, the values + // must be encoded as base64. DestCustomRecords map[uint64][]byte `protobuf:"bytes,11,rep,name=dest_custom_records,json=destCustomRecords,proto3" json:"dest_custom_records,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // If set, circular payments to self are permitted. AllowSelfPayment bool `protobuf:"varint,14,opt,name=allow_self_payment,json=allowSelfPayment,proto3" json:"allow_self_payment,omitempty"` - // - //Features assumed to be supported by the final node. All transitive feature - //dependencies must also be set properly. For a given feature bit pair, either - //optional or remote may be set, but not both. If this field is nil or empty, - //the router will try to load destination features from the graph as a - //fallback. + // Features assumed to be supported by the final node. All transitive feature + // dependencies must also be set properly. For a given feature bit pair, either + // optional or remote may be set, but not both. If this field is nil or empty, + // the router will try to load destination features from the graph as a + // fallback. DestFeatures []FeatureBit `protobuf:"varint,15,rep,packed,name=dest_features,json=destFeatures,proto3,enum=lnrpc.FeatureBit" json:"dest_features,omitempty"` - // - //The payment address of the generated invoice. + // The payment address of the generated invoice. PaymentAddr []byte `protobuf:"bytes,16,opt,name=payment_addr,json=paymentAddr,proto3" json:"payment_addr,omitempty"` } @@ -2385,13 +2343,11 @@ type SendToRouteRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The payment hash to use for the HTLC. When using REST, this field must be - //encoded as base64. + // The payment hash to use for the HTLC. When using REST, this field must be + // encoded as base64. PaymentHash []byte `protobuf:"bytes,1,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"` - // - //An optional hex-encoded payment hash to be used for the HTLC. Deprecated now - //that the REST gateway supports base64 encoding of bytes fields. + // An optional hex-encoded payment hash to be used for the HTLC. Deprecated now + // that the REST gateway supports base64 encoding of bytes fields. // // Deprecated: Do not use. PaymentHashString string `protobuf:"bytes,2,opt,name=payment_hash_string,json=paymentHashString,proto3" json:"payment_hash_string,omitempty"` @@ -2482,9 +2438,8 @@ type ChannelAcceptRequest struct { // The initial fee rate that the initiator suggests for both commitment // transactions. FeePerKw uint64 `protobuf:"varint,10,opt,name=fee_per_kw,json=feePerKw,proto3" json:"fee_per_kw,omitempty"` - // - //The number of blocks to use for the relative time lock in the pay-to-self - //output of both commitment transactions. + // The number of blocks to use for the relative time lock in the pay-to-self + // output of both commitment transactions. CsvDelay uint32 `protobuf:"varint,11,opt,name=csv_delay,json=csvDelay,proto3" json:"csv_delay,omitempty"` // The total number of incoming HTLC's that the initiator will accept. MaxAcceptedHtlcs uint32 `protobuf:"varint,12,opt,name=max_accepted_htlcs,json=maxAcceptedHtlcs,proto3" json:"max_accepted_htlcs,omitempty"` @@ -2654,46 +2609,37 @@ type ChannelAcceptResponse struct { Accept bool `protobuf:"varint,1,opt,name=accept,proto3" json:"accept,omitempty"` // The pending channel id to which this response applies. PendingChanId []byte `protobuf:"bytes,2,opt,name=pending_chan_id,json=pendingChanId,proto3" json:"pending_chan_id,omitempty"` - // - //An optional error to send the initiating party to indicate why the channel - //was rejected. This field *should not* contain sensitive information, it will - //be sent to the initiating party. This field should only be set if accept is - //false, the channel will be rejected if an error is set with accept=true - //because the meaning of this response is ambiguous. Limited to 500 - //characters. + // An optional error to send the initiating party to indicate why the channel + // was rejected. This field *should not* contain sensitive information, it will + // be sent to the initiating party. This field should only be set if accept is + // false, the channel will be rejected if an error is set with accept=true + // because the meaning of this response is ambiguous. Limited to 500 + // characters. Error string `protobuf:"bytes,3,opt,name=error,proto3" json:"error,omitempty"` - // - //The upfront shutdown address to use if the initiating peer supports option - //upfront shutdown script (see ListPeers for the features supported). Note - //that the channel open will fail if this value is set for a peer that does - //not support this feature bit. + // The upfront shutdown address to use if the initiating peer supports option + // upfront shutdown script (see ListPeers for the features supported). Note + // that the channel open will fail if this value is set for a peer that does + // not support this feature bit. UpfrontShutdown string `protobuf:"bytes,4,opt,name=upfront_shutdown,json=upfrontShutdown,proto3" json:"upfront_shutdown,omitempty"` - // - //The csv delay (in blocks) that we require for the remote party. + // The csv delay (in blocks) that we require for the remote party. CsvDelay uint32 `protobuf:"varint,5,opt,name=csv_delay,json=csvDelay,proto3" json:"csv_delay,omitempty"` - // - //The reserve amount in satoshis that we require the remote peer to adhere to. - //We require that the remote peer always have some reserve amount allocated to - //them so that there is always a disincentive to broadcast old state (if they - //hold 0 sats on their side of the channel, there is nothing to lose). + // The reserve amount in satoshis that we require the remote peer to adhere to. + // We require that the remote peer always have some reserve amount allocated to + // them so that there is always a disincentive to broadcast old state (if they + // hold 0 sats on their side of the channel, there is nothing to lose). ReserveSat uint64 `protobuf:"varint,6,opt,name=reserve_sat,json=reserveSat,proto3" json:"reserve_sat,omitempty"` - // - //The maximum amount of funds in millisatoshis that we allow the remote peer - //to have in outstanding htlcs. + // The maximum amount of funds in millisatoshis that we allow the remote peer + // to have in outstanding htlcs. InFlightMaxMsat uint64 `protobuf:"varint,7,opt,name=in_flight_max_msat,json=inFlightMaxMsat,proto3" json:"in_flight_max_msat,omitempty"` - // - //The maximum number of htlcs that the remote peer can offer us. + // The maximum number of htlcs that the remote peer can offer us. MaxHtlcCount uint32 `protobuf:"varint,8,opt,name=max_htlc_count,json=maxHtlcCount,proto3" json:"max_htlc_count,omitempty"` - // - //The minimum value in millisatoshis for incoming htlcs on the channel. + // The minimum value in millisatoshis for incoming htlcs on the channel. MinHtlcIn uint64 `protobuf:"varint,9,opt,name=min_htlc_in,json=minHtlcIn,proto3" json:"min_htlc_in,omitempty"` - // - //The number of confirmations we require before we consider the channel open. + // The number of confirmations we require before we consider the channel open. MinAcceptDepth uint32 `protobuf:"varint,10,opt,name=min_accept_depth,json=minAcceptDepth,proto3" json:"min_accept_depth,omitempty"` - // - //Whether the responder wants this to be a zero-conf channel. This will fail - //if either side does not have the scid-alias feature bit set. The minimum - //depth field must be zero if this is true. + // Whether the responder wants this to be a zero-conf channel. This will fail + // if either side does not have the scid-alias feature bit set. The minimum + // depth field must be zero if this is true. ZeroConf bool `protobuf:"varint,11,opt,name=zero_conf,json=zeroConf,proto3" json:"zero_conf,omitempty"` } @@ -2812,6 +2758,7 @@ type ChannelPoint struct { unknownFields protoimpl.UnknownFields // Types that are assignable to FundingTxid: + // // *ChannelPoint_FundingTxidBytes // *ChannelPoint_FundingTxidStr FundingTxid isChannelPoint_FundingTxid `protobuf_oneof:"funding_txid"` @@ -2884,16 +2831,14 @@ type isChannelPoint_FundingTxid interface { } type ChannelPoint_FundingTxidBytes struct { - // - //Txid of the funding transaction. When using REST, this field must be - //encoded as base64. + // Txid of the funding transaction. When using REST, this field must be + // encoded as base64. FundingTxidBytes []byte `protobuf:"bytes,1,opt,name=funding_txid_bytes,json=fundingTxidBytes,proto3,oneof"` } type ChannelPoint_FundingTxidStr struct { - // - //Hex-encoded string representing the byte-reversed hash of the funding - //transaction. + // Hex-encoded string representing the byte-reversed hash of the funding + // transaction. FundingTxidStr string `protobuf:"bytes,2,opt,name=funding_txid_str,json=fundingTxidStr,proto3,oneof"` } @@ -3409,10 +3354,9 @@ type SendCoinsRequest struct { // // Deprecated: Do not use. SatPerByte int64 `protobuf:"varint,5,opt,name=sat_per_byte,json=satPerByte,proto3" json:"sat_per_byte,omitempty"` - // - //If set, then the amount field will be ignored, and lnd will attempt to - //send all the coins under control of the internal wallet to the specified - //address. + // If set, then the amount field will be ignored, and lnd will attempt to + // send all the coins under control of the internal wallet to the specified + // address. SendAll bool `protobuf:"varint,6,opt,name=send_all,json=sendAll,proto3" json:"send_all,omitempty"` // An optional label for the transaction, limited to 500 characters. Label string `protobuf:"bytes,7,opt,name=label,proto3" json:"label,omitempty"` @@ -3688,9 +3632,8 @@ type NewAddressRequest struct { // The type of address to generate. Type AddressType `protobuf:"varint,1,opt,name=type,proto3,enum=lnrpc.AddressType" json:"type,omitempty"` - // - //The name of the account to generate a new address for. If empty, the - //default wallet account is used. + // The name of the account to generate a new address for. If empty, the + // default wallet account is used. Account string `protobuf:"bytes,2,opt,name=account,proto3" json:"account,omitempty"` } @@ -3793,13 +3736,11 @@ type SignMessageRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The message to be signed. When using REST, this field must be encoded as - //base64. + // The message to be signed. When using REST, this field must be encoded as + // base64. Msg []byte `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"` - // - //Instead of the default double-SHA256 hashing of the message before signing, - //only use one round of hashing instead. + // Instead of the default double-SHA256 hashing of the message before signing, + // only use one round of hashing instead. SingleHash bool `protobuf:"varint,2,opt,name=single_hash,json=singleHash,proto3" json:"single_hash,omitempty"` } @@ -3902,9 +3843,8 @@ type VerifyMessageRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The message over which the signature is to be verified. When using REST, - //this field must be encoded as base64. + // The message over which the signature is to be verified. When using REST, + // this field must be encoded as base64. Msg []byte `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"` // The signature to be verified over the given message Signature string `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"` @@ -4018,16 +3958,13 @@ type ConnectPeerRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //Lightning address of the peer to connect to. + // Lightning address of the peer to connect to. Addr *LightningAddress `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"` - // - //If set, the daemon will attempt to persistently connect to the target - //peer. Otherwise, the call will be synchronous. + // If set, the daemon will attempt to persistently connect to the target + // peer. Otherwise, the call will be synchronous. Perm bool `protobuf:"varint,2,opt,name=perm,proto3" json:"perm,omitempty"` - // - //The connection timeout value (in seconds) for this request. It won't affect - //other requests. + // The connection timeout value (in seconds) for this request. It won't affect + // other requests. Timeout uint64 `protobuf:"varint,3,opt,name=timeout,proto3" json:"timeout,omitempty"` } @@ -4317,9 +4254,8 @@ type ChannelConstraints struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The CSV delay expressed in relative blocks. If the channel is force closed, - //we will need to wait for this many blocks before we can regain our funds. + // The CSV delay expressed in relative blocks. If the channel is force closed, + // we will need to wait for this many blocks before we can regain our funds. CsvDelay uint32 `protobuf:"varint,1,opt,name=csv_delay,json=csvDelay,proto3" json:"csv_delay,omitempty"` // The minimum satoshis this node is required to reserve in its balance. ChanReserveSat uint64 `protobuf:"varint,2,opt,name=chan_reserve_sat,json=chanReserveSat,proto3" json:"chan_reserve_sat,omitempty"` @@ -4417,15 +4353,13 @@ type Channel struct { Active bool `protobuf:"varint,1,opt,name=active,proto3" json:"active,omitempty"` // The identity pubkey of the remote node RemotePubkey string `protobuf:"bytes,2,opt,name=remote_pubkey,json=remotePubkey,proto3" json:"remote_pubkey,omitempty"` - // - //The outpoint (txid:index) of the funding transaction. With this value, Bob - //will be able to generate a signature for Alice's version of the commitment - //transaction. + // The outpoint (txid:index) of the funding transaction. With this value, Bob + // will be able to generate a signature for Alice's version of the commitment + // transaction. ChannelPoint string `protobuf:"bytes,3,opt,name=channel_point,json=channelPoint,proto3" json:"channel_point,omitempty"` - // - //The unique channel ID for the channel. The first 3 bytes are the block - //height, the next 3 the index within the block, and the last 2 bytes are the - //output index for the channel. + // The unique channel ID for the channel. The first 3 bytes are the block + // height, the next 3 the index within the block, and the last 2 bytes are the + // output index for the channel. ChanId uint64 `protobuf:"varint,4,opt,name=chan_id,json=chanId,proto3" json:"chan_id,omitempty"` // The total amount of funds held in this channel Capacity int64 `protobuf:"varint,5,opt,name=capacity,proto3" json:"capacity,omitempty"` @@ -4433,37 +4367,30 @@ type Channel struct { LocalBalance int64 `protobuf:"varint,6,opt,name=local_balance,json=localBalance,proto3" json:"local_balance,omitempty"` // The counterparty's current balance in this channel RemoteBalance int64 `protobuf:"varint,7,opt,name=remote_balance,json=remoteBalance,proto3" json:"remote_balance,omitempty"` - // - //The amount calculated to be paid in fees for the current set of commitment - //transactions. The fee amount is persisted with the channel in order to - //allow the fee amount to be removed and recalculated with each channel state - //update, including updates that happen after a system restart. + // The amount calculated to be paid in fees for the current set of commitment + // transactions. The fee amount is persisted with the channel in order to + // allow the fee amount to be removed and recalculated with each channel state + // update, including updates that happen after a system restart. CommitFee int64 `protobuf:"varint,8,opt,name=commit_fee,json=commitFee,proto3" json:"commit_fee,omitempty"` // The weight of the commitment transaction CommitWeight int64 `protobuf:"varint,9,opt,name=commit_weight,json=commitWeight,proto3" json:"commit_weight,omitempty"` - // - //The required number of satoshis per kilo-weight that the requester will pay - //at all times, for both the funding transaction and commitment transaction. - //This value can later be updated once the channel is open. + // The required number of satoshis per kilo-weight that the requester will pay + // at all times, for both the funding transaction and commitment transaction. + // This value can later be updated once the channel is open. FeePerKw int64 `protobuf:"varint,10,opt,name=fee_per_kw,json=feePerKw,proto3" json:"fee_per_kw,omitempty"` // The unsettled balance in this channel UnsettledBalance int64 `protobuf:"varint,11,opt,name=unsettled_balance,json=unsettledBalance,proto3" json:"unsettled_balance,omitempty"` - // - //The total number of satoshis we've sent within this channel. + // The total number of satoshis we've sent within this channel. TotalSatoshisSent int64 `protobuf:"varint,12,opt,name=total_satoshis_sent,json=totalSatoshisSent,proto3" json:"total_satoshis_sent,omitempty"` - // - //The total number of satoshis we've received within this channel. + // The total number of satoshis we've received within this channel. TotalSatoshisReceived int64 `protobuf:"varint,13,opt,name=total_satoshis_received,json=totalSatoshisReceived,proto3" json:"total_satoshis_received,omitempty"` - // - //The total number of updates conducted within this channel. + // The total number of updates conducted within this channel. NumUpdates uint64 `protobuf:"varint,14,opt,name=num_updates,json=numUpdates,proto3" json:"num_updates,omitempty"` - // - //The list of active, uncleared HTLCs currently pending within the channel. + // The list of active, uncleared HTLCs currently pending within the channel. PendingHtlcs []*HTLC `protobuf:"bytes,15,rep,name=pending_htlcs,json=pendingHtlcs,proto3" json:"pending_htlcs,omitempty"` - // - //Deprecated. The CSV delay expressed in relative blocks. If the channel is - //force closed, we will need to wait for this many blocks before we can regain - //our funds. + // Deprecated. The CSV delay expressed in relative blocks. If the channel is + // force closed, we will need to wait for this many blocks before we can regain + // our funds. // // Deprecated: Do not use. CsvDelay uint32 `protobuf:"varint,16,opt,name=csv_delay,json=csvDelay,proto3" json:"csv_delay,omitempty"` @@ -4478,9 +4405,8 @@ type Channel struct { // // Deprecated: Do not use. LocalChanReserveSat int64 `protobuf:"varint,20,opt,name=local_chan_reserve_sat,json=localChanReserveSat,proto3" json:"local_chan_reserve_sat,omitempty"` - // - //Deprecated. The minimum satoshis the other node is required to reserve in - //its balance. + // Deprecated. The minimum satoshis the other node is required to reserve in + // its balance. // // Deprecated: Do not use. RemoteChanReserveSat int64 `protobuf:"varint,21,opt,name=remote_chan_reserve_sat,json=remoteChanReserveSat,proto3" json:"remote_chan_reserve_sat,omitempty"` @@ -4490,46 +4416,40 @@ type Channel struct { StaticRemoteKey bool `protobuf:"varint,22,opt,name=static_remote_key,json=staticRemoteKey,proto3" json:"static_remote_key,omitempty"` // The commitment type used by this channel. CommitmentType CommitmentType `protobuf:"varint,26,opt,name=commitment_type,json=commitmentType,proto3,enum=lnrpc.CommitmentType" json:"commitment_type,omitempty"` - // - //The number of seconds that the channel has been monitored by the channel - //scoring system. Scores are currently not persisted, so this value may be - //less than the lifetime of the channel [EXPERIMENTAL]. + // The number of seconds that the channel has been monitored by the channel + // scoring system. Scores are currently not persisted, so this value may be + // less than the lifetime of the channel [EXPERIMENTAL]. Lifetime int64 `protobuf:"varint,23,opt,name=lifetime,proto3" json:"lifetime,omitempty"` - // - //The number of seconds that the remote peer has been observed as being online - //by the channel scoring system over the lifetime of the channel - //[EXPERIMENTAL]. + // The number of seconds that the remote peer has been observed as being online + // by the channel scoring system over the lifetime of the channel + // [EXPERIMENTAL]. Uptime int64 `protobuf:"varint,24,opt,name=uptime,proto3" json:"uptime,omitempty"` - // - //Close address is the address that we will enforce payout to on cooperative - //close if the channel was opened utilizing option upfront shutdown. This - //value can be set on channel open by setting close_address in an open channel - //request. If this value is not set, you can still choose a payout address by - //cooperatively closing with the delivery_address field set. + // Close address is the address that we will enforce payout to on cooperative + // close if the channel was opened utilizing option upfront shutdown. This + // value can be set on channel open by setting close_address in an open channel + // request. If this value is not set, you can still choose a payout address by + // cooperatively closing with the delivery_address field set. CloseAddress string `protobuf:"bytes,25,opt,name=close_address,json=closeAddress,proto3" json:"close_address,omitempty"` - // - //The amount that the initiator of the channel optionally pushed to the remote - //party on channel open. This amount will be zero if the channel initiator did - //not push any funds to the remote peer. If the initiator field is true, we - //pushed this amount to our peer, if it is false, the remote peer pushed this - //amount to us. + // The amount that the initiator of the channel optionally pushed to the remote + // party on channel open. This amount will be zero if the channel initiator did + // not push any funds to the remote peer. If the initiator field is true, we + // pushed this amount to our peer, if it is false, the remote peer pushed this + // amount to us. PushAmountSat uint64 `protobuf:"varint,27,opt,name=push_amount_sat,json=pushAmountSat,proto3" json:"push_amount_sat,omitempty"` - // - //This uint32 indicates if this channel is to be considered 'frozen'. A - //frozen channel doest not allow a cooperative channel close by the - //initiator. The thaw_height is the height that this restriction stops - //applying to the channel. This field is optional, not setting it or using a - //value of zero will mean the channel has no additional restrictions. The - //height can be interpreted in two ways: as a relative height if the value is - //less than 500,000, or as an absolute height otherwise. + // This uint32 indicates if this channel is to be considered 'frozen'. A + // frozen channel doest not allow a cooperative channel close by the + // initiator. The thaw_height is the height that this restriction stops + // applying to the channel. This field is optional, not setting it or using a + // value of zero will mean the channel has no additional restrictions. The + // height can be interpreted in two ways: as a relative height if the value is + // less than 500,000, or as an absolute height otherwise. ThawHeight uint32 `protobuf:"varint,28,opt,name=thaw_height,json=thawHeight,proto3" json:"thaw_height,omitempty"` // List constraints for the local node. LocalConstraints *ChannelConstraints `protobuf:"bytes,29,opt,name=local_constraints,json=localConstraints,proto3" json:"local_constraints,omitempty"` // List constraints for the remote node. RemoteConstraints *ChannelConstraints `protobuf:"bytes,30,opt,name=remote_constraints,json=remoteConstraints,proto3" json:"remote_constraints,omitempty"` - // - //This lists out the set of alias short channel ids that exist for a channel. - //This may be empty. + // This lists out the set of alias short channel ids that exist for a channel. + // This may be empty. AliasScids []uint64 `protobuf:"varint,31,rep,packed,name=alias_scids,json=aliasScids,proto3" json:"alias_scids,omitempty"` // Whether or not this is a zero-conf channel. ZeroConf bool `protobuf:"varint,32,opt,name=zero_conf,json=zeroConf,proto3" json:"zero_conf,omitempty"` @@ -4813,9 +4733,8 @@ type ListChannelsRequest struct { InactiveOnly bool `protobuf:"varint,2,opt,name=inactive_only,json=inactiveOnly,proto3" json:"inactive_only,omitempty"` PublicOnly bool `protobuf:"varint,3,opt,name=public_only,json=publicOnly,proto3" json:"public_only,omitempty"` PrivateOnly bool `protobuf:"varint,4,opt,name=private_only,json=privateOnly,proto3" json:"private_only,omitempty"` - // - //Filters the response for channels with a target peer's pubkey. If peer is - //empty, all channels will be returned. + // Filters the response for channels with a target peer's pubkey. If peer is + // empty, all channels will be returned. Peer []byte `protobuf:"bytes,5,opt,name=peer,proto3" json:"peer,omitempty"` } @@ -4939,9 +4858,8 @@ type AliasMap struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //For non-zero-conf channels, this is the confirmed SCID. Otherwise, this is - //the first assigned "base" alias. + // For non-zero-conf channels, this is the confirmed SCID. Otherwise, this is + // the first assigned "base" alias. BaseScid uint64 `protobuf:"varint,1,opt,name=base_scid,json=baseScid,proto3" json:"base_scid,omitempty"` // The set of all aliases stored for the base SCID. Aliases []uint64 `protobuf:"varint,2,rep,packed,name=aliases,proto3" json:"aliases,omitempty"` @@ -5085,7 +5003,7 @@ type ChannelCloseSummary struct { // The outpoint (txid:index) of the funding transaction. ChannelPoint string `protobuf:"bytes,1,opt,name=channel_point,json=channelPoint,proto3" json:"channel_point,omitempty"` - // The unique channel ID for the channel. + // The unique channel ID for the channel. ChanId uint64 `protobuf:"varint,2,opt,name=chan_id,json=chanId,proto3" json:"chan_id,omitempty"` // The hash of the genesis block that this channel resides within. ChainHash string `protobuf:"bytes,3,opt,name=chain_hash,json=chainHash,proto3" json:"chain_hash,omitempty"` @@ -5103,24 +5021,21 @@ type ChannelCloseSummary struct { TimeLockedBalance int64 `protobuf:"varint,9,opt,name=time_locked_balance,json=timeLockedBalance,proto3" json:"time_locked_balance,omitempty"` // Details on how the channel was closed. CloseType ChannelCloseSummary_ClosureType `protobuf:"varint,10,opt,name=close_type,json=closeType,proto3,enum=lnrpc.ChannelCloseSummary_ClosureType" json:"close_type,omitempty"` - // - //Open initiator is the party that initiated opening the channel. Note that - //this value may be unknown if the channel was closed before we migrated to - //store open channel information after close. + // Open initiator is the party that initiated opening the channel. Note that + // this value may be unknown if the channel was closed before we migrated to + // store open channel information after close. OpenInitiator Initiator `protobuf:"varint,11,opt,name=open_initiator,json=openInitiator,proto3,enum=lnrpc.Initiator" json:"open_initiator,omitempty"` - // - //Close initiator indicates which party initiated the close. This value will - //be unknown for channels that were cooperatively closed before we started - //tracking cooperative close initiators. Note that this indicates which party - //initiated a close, and it is possible for both to initiate cooperative or - //force closes, although only one party's close will be confirmed on chain. + // Close initiator indicates which party initiated the close. This value will + // be unknown for channels that were cooperatively closed before we started + // tracking cooperative close initiators. Note that this indicates which party + // initiated a close, and it is possible for both to initiate cooperative or + // force closes, although only one party's close will be confirmed on chain. CloseInitiator Initiator `protobuf:"varint,12,opt,name=close_initiator,json=closeInitiator,proto3,enum=lnrpc.Initiator" json:"close_initiator,omitempty"` Resolutions []*Resolution `protobuf:"bytes,13,rep,name=resolutions,proto3" json:"resolutions,omitempty"` - // - //This lists out the set of alias short channel ids that existed for the - //closed channel. This may be empty. + // This lists out the set of alias short channel ids that existed for the + // closed channel. This may be empty. AliasScids []uint64 `protobuf:"varint,14,rep,packed,name=alias_scids,json=aliasScids,proto3" json:"alias_scids,omitempty"` - // The confirmed SCID for a zero-conf channel. + // The confirmed SCID for a zero-conf channel. ZeroConfConfirmedScid uint64 `protobuf:"varint,15,opt,name=zero_conf_confirmed_scid,json=zeroConfConfirmedScid,proto3" json:"zero_conf_confirmed_scid,omitempty"` } @@ -5505,25 +5420,21 @@ type Peer struct { SyncType Peer_SyncType `protobuf:"varint,10,opt,name=sync_type,json=syncType,proto3,enum=lnrpc.Peer_SyncType" json:"sync_type,omitempty"` // Features advertised by the remote peer in their init message. Features map[uint32]*Feature `protobuf:"bytes,11,rep,name=features,proto3" json:"features,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - // - //The latest errors received from our peer with timestamps, limited to the 10 - //most recent errors. These errors are tracked across peer connections, but - //are not persisted across lnd restarts. Note that these errors are only - //stored for peers that we have channels open with, to prevent peers from - //spamming us with errors at no cost. + // The latest errors received from our peer with timestamps, limited to the 10 + // most recent errors. These errors are tracked across peer connections, but + // are not persisted across lnd restarts. Note that these errors are only + // stored for peers that we have channels open with, to prevent peers from + // spamming us with errors at no cost. Errors []*TimestampedError `protobuf:"bytes,12,rep,name=errors,proto3" json:"errors,omitempty"` - // - //The number of times we have recorded this peer going offline or coming - //online, recorded across restarts. Note that this value is decreased over - //time if the peer has not recently flapped, so that we can forgive peers - //with historically high flap counts. + // The number of times we have recorded this peer going offline or coming + // online, recorded across restarts. Note that this value is decreased over + // time if the peer has not recently flapped, so that we can forgive peers + // with historically high flap counts. FlapCount int32 `protobuf:"varint,13,opt,name=flap_count,json=flapCount,proto3" json:"flap_count,omitempty"` - // - //The timestamp of the last flap we observed for this peer. If this value is - //zero, we have not observed any flaps for this peer. + // The timestamp of the last flap we observed for this peer. If this value is + // zero, we have not observed any flaps for this peer. LastFlapNs int64 `protobuf:"varint,14,opt,name=last_flap_ns,json=lastFlapNs,proto3" json:"last_flap_ns,omitempty"` - // - //The last ping payload the peer has sent to us. + // The last ping payload the peer has sent to us. LastPingPayload []byte `protobuf:"bytes,15,opt,name=last_ping_payload,json=lastPingPayload,proto3" json:"last_ping_payload,omitempty"` } @@ -5719,10 +5630,9 @@ type ListPeersRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //If true, only the last error that our peer sent us will be returned with - //the peer's information, rather than the full set of historic errors we have - //stored. + // If true, only the last error that our peer sent us will be returned with + // the peer's information, rather than the full set of historic errors we have + // stored. LatestError bool `protobuf:"varint,1,opt,name=latest_error,json=latestError,proto3" json:"latest_error,omitempty"` } @@ -5978,9 +5888,8 @@ type GetInfoResponse struct { SyncedToChain bool `protobuf:"varint,9,opt,name=synced_to_chain,json=syncedToChain,proto3" json:"synced_to_chain,omitempty"` // Whether we consider ourselves synced with the public channel graph. SyncedToGraph bool `protobuf:"varint,18,opt,name=synced_to_graph,json=syncedToGraph,proto3" json:"synced_to_graph,omitempty"` - // - //Whether the current node is connected to testnet. This field is - //deprecated and the network field should be used instead + // Whether the current node is connected to testnet. This field is + // deprecated and the network field should be used instead // // Deprecated: Do not use. Testnet bool `protobuf:"varint,10,opt,name=testnet,proto3" json:"testnet,omitempty"` @@ -5988,12 +5897,10 @@ type GetInfoResponse struct { Chains []*Chain `protobuf:"bytes,16,rep,name=chains,proto3" json:"chains,omitempty"` // The URIs of the current node. Uris []string `protobuf:"bytes,12,rep,name=uris,proto3" json:"uris,omitempty"` - // - //Features that our node has advertised in our init message, node - //announcements and invoices. + // Features that our node has advertised in our init message, node + // announcements and invoices. Features map[uint32]*Feature `protobuf:"bytes,19,rep,name=features,proto3" json:"features,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - // - //Indicates whether the HTLC interceptor API is in always-on mode. + // Indicates whether the HTLC interceptor API is in always-on mode. RequireHtlcInterceptor bool `protobuf:"varint,21,opt,name=require_htlc_interceptor,json=requireHtlcInterceptor,proto3" json:"require_htlc_interceptor,omitempty"` } @@ -6494,10 +6401,9 @@ type CloseChannelRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The outpoint (txid:index) of the funding transaction. With this value, Bob - //will be able to generate a signature for Alice's version of the commitment - //transaction. + // The outpoint (txid:index) of the funding transaction. With this value, Bob + // will be able to generate a signature for Alice's version of the commitment + // transaction. ChannelPoint *ChannelPoint `protobuf:"bytes,1,opt,name=channel_point,json=channelPoint,proto3" json:"channel_point,omitempty"` // If true, then the channel will be closed forcibly. This means the // current commitment transaction will be signed and broadcast. @@ -6511,11 +6417,10 @@ type CloseChannelRequest struct { // // Deprecated: Do not use. SatPerByte int64 `protobuf:"varint,4,opt,name=sat_per_byte,json=satPerByte,proto3" json:"sat_per_byte,omitempty"` - // - //An optional address to send funds to in the case of a cooperative close. - //If the channel was opened with an upfront shutdown script and this field - //is set, the request to close will fail because the channel must pay out - //to the upfront shutdown addresss. + // An optional address to send funds to in the case of a cooperative close. + // If the channel was opened with an upfront shutdown script and this field + // is set, the request to close will fail because the channel must pay out + // to the upfront shutdown addresss. DeliveryAddress string `protobuf:"bytes,5,opt,name=delivery_address,json=deliveryAddress,proto3" json:"delivery_address,omitempty"` // A manual fee rate set in sat/vbyte that should be used when crafting the // closure transaction. @@ -6614,6 +6519,7 @@ type CloseStatusUpdate struct { unknownFields protoimpl.UnknownFields // Types that are assignable to Update: + // // *CloseStatusUpdate_ClosePending // *CloseStatusUpdate_ChanClose Update isCloseStatusUpdate_Update `protobuf_oneof:"update"` @@ -6748,19 +6654,16 @@ type ReadyForPsbtFunding struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The P2WSH address of the channel funding multisig address that the below - //specified amount in satoshis needs to be sent to. + // The P2WSH address of the channel funding multisig address that the below + // specified amount in satoshis needs to be sent to. FundingAddress string `protobuf:"bytes,1,opt,name=funding_address,json=fundingAddress,proto3" json:"funding_address,omitempty"` - // - //The exact amount in satoshis that needs to be sent to the above address to - //fund the pending channel. + // The exact amount in satoshis that needs to be sent to the above address to + // fund the pending channel. FundingAmount int64 `protobuf:"varint,2,opt,name=funding_amount,json=fundingAmount,proto3" json:"funding_amount,omitempty"` - // - //A raw PSBT that contains the pending channel output. If a base PSBT was - //provided in the PsbtShim, this is the base PSBT with one additional output. - //If no base PSBT was specified, this is an otherwise empty PSBT with exactly - //one output. + // A raw PSBT that contains the pending channel output. If a base PSBT was + // provided in the PsbtShim, this is the base PSBT with one additional output. + // If no base PSBT was specified, this is an otherwise empty PSBT with exactly + // one output. Psbt []byte `protobuf:"bytes,3,opt,name=psbt,proto3" json:"psbt,omitempty"` } @@ -6936,24 +6839,21 @@ type BatchOpenChannel struct { // The delay we require on the remote's commitment transaction. If this is // not set, it will be scaled automatically with the channel size. RemoteCsvDelay uint32 `protobuf:"varint,6,opt,name=remote_csv_delay,json=remoteCsvDelay,proto3" json:"remote_csv_delay,omitempty"` + // Close address is an optional address which specifies the address to which + // funds should be paid out to upon cooperative close. This field may only be + // set if the peer supports the option upfront feature bit (call listpeers + // to check). The remote peer will only accept cooperative closes to this + // address if it is set. // - //Close address is an optional address which specifies the address to which - //funds should be paid out to upon cooperative close. This field may only be - //set if the peer supports the option upfront feature bit (call listpeers - //to check). The remote peer will only accept cooperative closes to this - //address if it is set. - // - //Note: If this value is set on channel creation, you will *not* be able to - //cooperatively close out to a different address. + // Note: If this value is set on channel creation, you will *not* be able to + // cooperatively close out to a different address. CloseAddress string `protobuf:"bytes,7,opt,name=close_address,json=closeAddress,proto3" json:"close_address,omitempty"` - // - //An optional, unique identifier of 32 random bytes that will be used as the - //pending channel ID to identify the channel while it is in the pre-pending - //state. + // An optional, unique identifier of 32 random bytes that will be used as the + // pending channel ID to identify the channel while it is in the pre-pending + // state. PendingChanId []byte `protobuf:"bytes,8,opt,name=pending_chan_id,json=pendingChanId,proto3" json:"pending_chan_id,omitempty"` - // - //The explicit commitment type to use. Note this field will only be used if - //the remote peer supports explicit channel negotiation. + // The explicit commitment type to use. Note this field will only be used if + // the remote peer supports explicit channel negotiation. CommitmentType CommitmentType `protobuf:"varint,9,opt,name=commitment_type,json=commitmentType,proto3,enum=lnrpc.CommitmentType" json:"commitment_type,omitempty"` } @@ -7107,13 +7007,11 @@ type OpenChannelRequest struct { // A manual fee rate set in sat/vbyte that should be used when crafting the // funding transaction. SatPerVbyte uint64 `protobuf:"varint,1,opt,name=sat_per_vbyte,json=satPerVbyte,proto3" json:"sat_per_vbyte,omitempty"` - // - //The pubkey of the node to open a channel with. When using REST, this field - //must be encoded as base64. + // The pubkey of the node to open a channel with. When using REST, this field + // must be encoded as base64. NodePubkey []byte `protobuf:"bytes,2,opt,name=node_pubkey,json=nodePubkey,proto3" json:"node_pubkey,omitempty"` - // - //The hex encoded pubkey of the node to open a channel with. Deprecated now - //that the REST gateway supports base64 encoding of bytes fields. + // The hex encoded pubkey of the node to open a channel with. Deprecated now + // that the REST gateway supports base64 encoding of bytes fields. // // Deprecated: Do not use. NodePubkeyString string `protobuf:"bytes,3,opt,name=node_pubkey_string,json=nodePubkeyString,proto3" json:"node_pubkey_string,omitempty"` @@ -7146,45 +7044,37 @@ type OpenChannelRequest struct { // Whether unconfirmed outputs should be used as inputs for the funding // transaction. SpendUnconfirmed bool `protobuf:"varint,12,opt,name=spend_unconfirmed,json=spendUnconfirmed,proto3" json:"spend_unconfirmed,omitempty"` + // Close address is an optional address which specifies the address to which + // funds should be paid out to upon cooperative close. This field may only be + // set if the peer supports the option upfront feature bit (call listpeers + // to check). The remote peer will only accept cooperative closes to this + // address if it is set. // - //Close address is an optional address which specifies the address to which - //funds should be paid out to upon cooperative close. This field may only be - //set if the peer supports the option upfront feature bit (call listpeers - //to check). The remote peer will only accept cooperative closes to this - //address if it is set. - // - //Note: If this value is set on channel creation, you will *not* be able to - //cooperatively close out to a different address. + // Note: If this value is set on channel creation, you will *not* be able to + // cooperatively close out to a different address. CloseAddress string `protobuf:"bytes,13,opt,name=close_address,json=closeAddress,proto3" json:"close_address,omitempty"` - // - //Funding shims are an optional argument that allow the caller to intercept - //certain funding functionality. For example, a shim can be provided to use a - //particular key for the commitment key (ideally cold) rather than use one - //that is generated by the wallet as normal, or signal that signing will be - //carried out in an interactive manner (PSBT based). + // Funding shims are an optional argument that allow the caller to intercept + // certain funding functionality. For example, a shim can be provided to use a + // particular key for the commitment key (ideally cold) rather than use one + // that is generated by the wallet as normal, or signal that signing will be + // carried out in an interactive manner (PSBT based). FundingShim *FundingShim `protobuf:"bytes,14,opt,name=funding_shim,json=fundingShim,proto3" json:"funding_shim,omitempty"` - // - //The maximum amount of coins in millisatoshi that can be pending within - //the channel. It only applies to the remote party. + // The maximum amount of coins in millisatoshi that can be pending within + // the channel. It only applies to the remote party. RemoteMaxValueInFlightMsat uint64 `protobuf:"varint,15,opt,name=remote_max_value_in_flight_msat,json=remoteMaxValueInFlightMsat,proto3" json:"remote_max_value_in_flight_msat,omitempty"` - // - //The maximum number of concurrent HTLCs we will allow the remote party to add - //to the commitment transaction. + // The maximum number of concurrent HTLCs we will allow the remote party to add + // to the commitment transaction. RemoteMaxHtlcs uint32 `protobuf:"varint,16,opt,name=remote_max_htlcs,json=remoteMaxHtlcs,proto3" json:"remote_max_htlcs,omitempty"` - // - //Max local csv is the maximum csv delay we will allow for our own commitment - //transaction. + // Max local csv is the maximum csv delay we will allow for our own commitment + // transaction. MaxLocalCsv uint32 `protobuf:"varint,17,opt,name=max_local_csv,json=maxLocalCsv,proto3" json:"max_local_csv,omitempty"` - // - //The explicit commitment type to use. Note this field will only be used if - //the remote peer supports explicit channel negotiation. + // The explicit commitment type to use. Note this field will only be used if + // the remote peer supports explicit channel negotiation. CommitmentType CommitmentType `protobuf:"varint,18,opt,name=commitment_type,json=commitmentType,proto3,enum=lnrpc.CommitmentType" json:"commitment_type,omitempty"` - // - //If this is true, then a zero-conf channel open will be attempted. + // If this is true, then a zero-conf channel open will be attempted. ZeroConf bool `protobuf:"varint,19,opt,name=zero_conf,json=zeroConf,proto3" json:"zero_conf,omitempty"` - // - //If this is true, then an option-scid-alias channel-type open will be - //attempted. + // If this is true, then an option-scid-alias channel-type open will be + // attempted. ScidAlias bool `protobuf:"varint,20,opt,name=scid_alias,json=scidAlias,proto3" json:"scid_alias,omitempty"` } @@ -7368,13 +7258,13 @@ type OpenStatusUpdate struct { unknownFields protoimpl.UnknownFields // Types that are assignable to Update: + // // *OpenStatusUpdate_ChanPending // *OpenStatusUpdate_ChanOpen // *OpenStatusUpdate_PsbtFund Update isOpenStatusUpdate_Update `protobuf_oneof:"update"` - // - //The pending channel ID of the created channel. This value may be used to - //further the funding flow manually via the FundingStateStep method. + // The pending channel ID of the created channel. This value may be used to + // further the funding flow manually via the FundingStateStep method. PendingChanId []byte `protobuf:"bytes,4,opt,name=pending_chan_id,json=pendingChanId,proto3" json:"pending_chan_id,omitempty"` } @@ -7450,23 +7340,20 @@ type isOpenStatusUpdate_Update interface { } type OpenStatusUpdate_ChanPending struct { - // - //Signals that the channel is now fully negotiated and the funding - //transaction published. + // Signals that the channel is now fully negotiated and the funding + // transaction published. ChanPending *PendingUpdate `protobuf:"bytes,1,opt,name=chan_pending,json=chanPending,proto3,oneof"` } type OpenStatusUpdate_ChanOpen struct { - // - //Signals that the channel's funding transaction has now reached the - //required number of confirmations on chain and can be used. + // Signals that the channel's funding transaction has now reached the + // required number of confirmations on chain and can be used. ChanOpen *ChannelOpenUpdate `protobuf:"bytes,3,opt,name=chan_open,json=chanOpen,proto3,oneof"` } type OpenStatusUpdate_PsbtFund struct { - // - //Signals that the funding process has been suspended and the construction - //of a PSBT that funds the channel PK script is now required. + // Signals that the funding process has been suspended and the construction + // of a PSBT that funds the channel PK script is now required. PsbtFund *ReadyForPsbtFunding `protobuf:"bytes,5,opt,name=psbt_fund,json=psbtFund,proto3,oneof"` } @@ -7538,11 +7425,9 @@ type KeyDescriptor struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The raw bytes of the key being identified. + // The raw bytes of the key being identified. RawKeyBytes []byte `protobuf:"bytes,1,opt,name=raw_key_bytes,json=rawKeyBytes,proto3" json:"raw_key_bytes,omitempty"` - // - //The key locator that identifies which key to use for signing. + // The key locator that identifies which key to use for signing. KeyLoc *KeyLocator `protobuf:"bytes,2,opt,name=key_loc,json=keyLoc,proto3" json:"key_loc,omitempty"` } @@ -7597,9 +7482,8 @@ type ChanPointShim struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The size of the pre-crafted output to be used as the channel point for this - //channel funding. + // The size of the pre-crafted output to be used as the channel point for this + // channel funding. Amt int64 `protobuf:"varint,1,opt,name=amt,proto3" json:"amt,omitempty"` // The target channel point to refrence in created commitment transactions. ChanPoint *ChannelPoint `protobuf:"bytes,2,opt,name=chan_point,json=chanPoint,proto3" json:"chan_point,omitempty"` @@ -7607,18 +7491,16 @@ type ChanPointShim struct { LocalKey *KeyDescriptor `protobuf:"bytes,3,opt,name=local_key,json=localKey,proto3" json:"local_key,omitempty"` // The key of the remote party to use when creating the multi-sig output. RemoteKey []byte `protobuf:"bytes,4,opt,name=remote_key,json=remoteKey,proto3" json:"remote_key,omitempty"` - // - //If non-zero, then this will be used as the pending channel ID on the wire - //protocol to initate the funding request. This is an optional field, and - //should only be set if the responder is already expecting a specific pending - //channel ID. + // If non-zero, then this will be used as the pending channel ID on the wire + // protocol to initate the funding request. This is an optional field, and + // should only be set if the responder is already expecting a specific pending + // channel ID. PendingChanId []byte `protobuf:"bytes,5,opt,name=pending_chan_id,json=pendingChanId,proto3" json:"pending_chan_id,omitempty"` - // - //This uint32 indicates if this channel is to be considered 'frozen'. A frozen - //channel does not allow a cooperative channel close by the initiator. The - //thaw_height is the height that this restriction stops applying to the - //channel. The height can be interpreted in two ways: as a relative height if - //the value is less than 500,000, or as an absolute height otherwise. + // This uint32 indicates if this channel is to be considered 'frozen'. A frozen + // channel does not allow a cooperative channel close by the initiator. The + // thaw_height is the height that this restriction stops applying to the + // channel. The height can be interpreted in two ways: as a relative height if + // the value is less than 500,000, or as an absolute height otherwise. ThawHeight uint32 `protobuf:"varint,6,opt,name=thaw_height,json=thawHeight,proto3" json:"thaw_height,omitempty"` } @@ -7701,22 +7583,19 @@ type PsbtShim struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //A unique identifier of 32 random bytes that will be used as the pending - //channel ID to identify the PSBT state machine when interacting with it and - //on the wire protocol to initiate the funding request. + // A unique identifier of 32 random bytes that will be used as the pending + // channel ID to identify the PSBT state machine when interacting with it and + // on the wire protocol to initiate the funding request. PendingChanId []byte `protobuf:"bytes,1,opt,name=pending_chan_id,json=pendingChanId,proto3" json:"pending_chan_id,omitempty"` - // - //An optional base PSBT the new channel output will be added to. If this is - //non-empty, it must be a binary serialized PSBT. + // An optional base PSBT the new channel output will be added to. If this is + // non-empty, it must be a binary serialized PSBT. BasePsbt []byte `protobuf:"bytes,2,opt,name=base_psbt,json=basePsbt,proto3" json:"base_psbt,omitempty"` - // - //If a channel should be part of a batch (multiple channel openings in one - //transaction), it can be dangerous if the whole batch transaction is - //published too early before all channel opening negotiations are completed. - //This flag prevents this particular channel from broadcasting the transaction - //after the negotiation with the remote peer. In a batch of channel openings - //this flag should be set to true for every channel but the very last. + // If a channel should be part of a batch (multiple channel openings in one + // transaction), it can be dangerous if the whole batch transaction is + // published too early before all channel opening negotiations are completed. + // This flag prevents this particular channel from broadcasting the transaction + // after the negotiation with the remote peer. In a batch of channel openings + // this flag should be set to true for every channel but the very last. NoPublish bool `protobuf:"varint,3,opt,name=no_publish,json=noPublish,proto3" json:"no_publish,omitempty"` } @@ -7779,6 +7658,7 @@ type FundingShim struct { unknownFields protoimpl.UnknownFields // Types that are assignable to Shim: + // // *FundingShim_ChanPointShim // *FundingShim_PsbtShim Shim isFundingShim_Shim `protobuf_oneof:"shim"` @@ -7842,16 +7722,14 @@ type isFundingShim_Shim interface { } type FundingShim_ChanPointShim struct { - // - //A channel shim where the channel point was fully constructed outside - //of lnd's wallet and the transaction might already be published. + // A channel shim where the channel point was fully constructed outside + // of lnd's wallet and the transaction might already be published. ChanPointShim *ChanPointShim `protobuf:"bytes,1,opt,name=chan_point_shim,json=chanPointShim,proto3,oneof"` } type FundingShim_PsbtShim struct { - // - //A channel shim that uses a PSBT to fund and sign the channel funding - //transaction. + // A channel shim that uses a PSBT to fund and sign the channel funding + // transaction. PsbtShim *PsbtShim `protobuf:"bytes,2,opt,name=psbt_shim,json=psbtShim,proto3,oneof"` } @@ -7912,24 +7790,22 @@ type FundingPsbtVerify struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The funded but not yet signed PSBT that sends the exact channel capacity - //amount to the PK script returned in the open channel message in a previous - //step. + // The funded but not yet signed PSBT that sends the exact channel capacity + // amount to the PK script returned in the open channel message in a previous + // step. FundedPsbt []byte `protobuf:"bytes,1,opt,name=funded_psbt,json=fundedPsbt,proto3" json:"funded_psbt,omitempty"` // The pending channel ID of the channel to get the PSBT for. PendingChanId []byte `protobuf:"bytes,2,opt,name=pending_chan_id,json=pendingChanId,proto3" json:"pending_chan_id,omitempty"` - // - //Can only be used if the no_publish flag was set to true in the OpenChannel - //call meaning that the caller is solely responsible for publishing the final - //funding transaction. If skip_finalize is set to true then lnd will not wait - //for a FundingPsbtFinalize state step and instead assumes that a transaction - //with the same TXID as the passed in PSBT will eventually confirm. - //IT IS ABSOLUTELY IMPERATIVE that the TXID of the transaction that is - //eventually published does have the _same TXID_ as the verified PSBT. That - //means no inputs or outputs can change, only signatures can be added. If the - //TXID changes between this call and the publish step then the channel will - //never be created and the funds will be in limbo. + // Can only be used if the no_publish flag was set to true in the OpenChannel + // call meaning that the caller is solely responsible for publishing the final + // funding transaction. If skip_finalize is set to true then lnd will not wait + // for a FundingPsbtFinalize state step and instead assumes that a transaction + // with the same TXID as the passed in PSBT will eventually confirm. + // IT IS ABSOLUTELY IMPERATIVE that the TXID of the transaction that is + // eventually published does have the _same TXID_ as the verified PSBT. That + // means no inputs or outputs can change, only signatures can be added. If the + // TXID changes between this call and the publish step then the channel will + // never be created and the funds will be in limbo. SkipFinalize bool `protobuf:"varint,3,opt,name=skip_finalize,json=skipFinalize,proto3" json:"skip_finalize,omitempty"` } @@ -7991,17 +7867,15 @@ type FundingPsbtFinalize struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The funded PSBT that contains all witness data to send the exact channel - //capacity amount to the PK script returned in the open channel message in a - //previous step. Cannot be set at the same time as final_raw_tx. + // The funded PSBT that contains all witness data to send the exact channel + // capacity amount to the PK script returned in the open channel message in a + // previous step. Cannot be set at the same time as final_raw_tx. SignedPsbt []byte `protobuf:"bytes,1,opt,name=signed_psbt,json=signedPsbt,proto3" json:"signed_psbt,omitempty"` // The pending channel ID of the channel to get the PSBT for. PendingChanId []byte `protobuf:"bytes,2,opt,name=pending_chan_id,json=pendingChanId,proto3" json:"pending_chan_id,omitempty"` - // - //As an alternative to the signed PSBT with all witness data, the final raw - //wire format transaction can also be specified directly. Cannot be set at the - //same time as signed_psbt. + // As an alternative to the signed PSBT with all witness data, the final raw + // wire format transaction can also be specified directly. Cannot be set at the + // same time as signed_psbt. FinalRawTx []byte `protobuf:"bytes,3,opt,name=final_raw_tx,json=finalRawTx,proto3" json:"final_raw_tx,omitempty"` } @@ -8064,6 +7938,7 @@ type FundingTransitionMsg struct { unknownFields protoimpl.UnknownFields // Types that are assignable to Trigger: + // // *FundingTransitionMsg_ShimRegister // *FundingTransitionMsg_ShimCancel // *FundingTransitionMsg_PsbtVerify @@ -8143,10 +8018,9 @@ type isFundingTransitionMsg_Trigger interface { } type FundingTransitionMsg_ShimRegister struct { - // - //The funding shim to register. This should be used before any - //channel funding has began by the remote party, as it is intended as a - //preparatory step for the full channel funding. + // The funding shim to register. This should be used before any + // channel funding has began by the remote party, as it is intended as a + // preparatory step for the full channel funding. ShimRegister *FundingShim `protobuf:"bytes,1,opt,name=shim_register,json=shimRegister,proto3,oneof"` } @@ -8156,19 +8030,17 @@ type FundingTransitionMsg_ShimCancel struct { } type FundingTransitionMsg_PsbtVerify struct { - // - //Used to continue a funding flow that was initiated to be executed - //through a PSBT. This step verifies that the PSBT contains the correct - //outputs to fund the channel. + // Used to continue a funding flow that was initiated to be executed + // through a PSBT. This step verifies that the PSBT contains the correct + // outputs to fund the channel. PsbtVerify *FundingPsbtVerify `protobuf:"bytes,3,opt,name=psbt_verify,json=psbtVerify,proto3,oneof"` } type FundingTransitionMsg_PsbtFinalize struct { - // - //Used to continue a funding flow that was initiated to be executed - //through a PSBT. This step finalizes the funded and signed PSBT, finishes - //negotiation with the peer and finally publishes the resulting funding - //transaction. + // Used to continue a funding flow that was initiated to be executed + // through a PSBT. This step finalizes the funded and signed PSBT, finishes + // negotiation with the peer and finally publishes the resulting funding + // transaction. PsbtFinalize *FundingPsbtFinalize `protobuf:"bytes,4,opt,name=psbt_finalize,json=psbtFinalize,proto3,oneof"` } @@ -8231,10 +8103,9 @@ type PendingHTLC struct { Outpoint string `protobuf:"bytes,3,opt,name=outpoint,proto3" json:"outpoint,omitempty"` // The next block height at which we can spend the current stage MaturityHeight uint32 `protobuf:"varint,4,opt,name=maturity_height,json=maturityHeight,proto3" json:"maturity_height,omitempty"` - // - //The number of blocks remaining until the current stage can be swept. - //Negative values indicate how many blocks have passed since becoming - //mature. + // The number of blocks remaining until the current stage can be swept. + // Negative values indicate how many blocks have passed since becoming + // mature. BlocksTilMaturity int32 `protobuf:"varint,5,opt,name=blocks_til_maturity,json=blocksTilMaturity,proto3" json:"blocks_til_maturity,omitempty"` // Indicates whether the htlc is in its first or second stage of recovery Stage uint32 `protobuf:"varint,6,opt,name=stage,proto3" json:"stage,omitempty"` @@ -8361,10 +8232,9 @@ type PendingChannelsResponse struct { TotalLimboBalance int64 `protobuf:"varint,1,opt,name=total_limbo_balance,json=totalLimboBalance,proto3" json:"total_limbo_balance,omitempty"` // Channels pending opening PendingOpenChannels []*PendingChannelsResponse_PendingOpenChannel `protobuf:"bytes,2,rep,name=pending_open_channels,json=pendingOpenChannels,proto3" json:"pending_open_channels,omitempty"` - // - //Deprecated: Channels pending closing previously contained cooperatively - //closed channels with a single confirmation. These channels are now - //considered closed from the time we see them on chain. + // Deprecated: Channels pending closing previously contained cooperatively + // closed channels with a single confirmation. These channels are now + // considered closed from the time we see them on chain. // // Deprecated: Do not use. PendingClosingChannels []*PendingChannelsResponse_ClosedChannel `protobuf:"bytes,3,rep,name=pending_closing_channels,json=pendingClosingChannels,proto3" json:"pending_closing_channels,omitempty"` @@ -8486,6 +8356,7 @@ type ChannelEventUpdate struct { unknownFields protoimpl.UnknownFields // Types that are assignable to Channel: + // // *ChannelEventUpdate_OpenChannel // *ChannelEventUpdate_ClosedChannel // *ChannelEventUpdate_ActiveChannel @@ -9032,83 +8903,67 @@ type QueryRoutesRequest struct { // The 33-byte hex-encoded public key for the payment destination PubKey string `protobuf:"bytes,1,opt,name=pub_key,json=pubKey,proto3" json:"pub_key,omitempty"` + // The amount to send expressed in satoshis. // - //The amount to send expressed in satoshis. - // - //The fields amt and amt_msat are mutually exclusive. + // The fields amt and amt_msat are mutually exclusive. Amt int64 `protobuf:"varint,2,opt,name=amt,proto3" json:"amt,omitempty"` + // The amount to send expressed in millisatoshis. // - //The amount to send expressed in millisatoshis. - // - //The fields amt and amt_msat are mutually exclusive. + // The fields amt and amt_msat are mutually exclusive. AmtMsat int64 `protobuf:"varint,12,opt,name=amt_msat,json=amtMsat,proto3" json:"amt_msat,omitempty"` - // - //An optional CLTV delta from the current height that should be used for the - //timelock of the final hop. Note that unlike SendPayment, QueryRoutes does - //not add any additional block padding on top of final_ctlv_delta. This - //padding of a few blocks needs to be added manually or otherwise failures may - //happen when a block comes in while the payment is in flight. + // An optional CLTV delta from the current height that should be used for the + // timelock of the final hop. Note that unlike SendPayment, QueryRoutes does + // not add any additional block padding on top of final_ctlv_delta. This + // padding of a few blocks needs to be added manually or otherwise failures may + // happen when a block comes in while the payment is in flight. FinalCltvDelta int32 `protobuf:"varint,4,opt,name=final_cltv_delta,json=finalCltvDelta,proto3" json:"final_cltv_delta,omitempty"` - // - //The maximum number of satoshis that will be paid as a fee of the payment. - //This value can be represented either as a percentage of the amount being - //sent, or as a fixed amount of the maximum fee the user is willing the pay to - //send the payment. If not specified, lnd will use a default value of 100% - //fees for small amounts (<=1k sat) or 5% fees for larger amounts. + // The maximum number of satoshis that will be paid as a fee of the payment. + // This value can be represented either as a percentage of the amount being + // sent, or as a fixed amount of the maximum fee the user is willing the pay to + // send the payment. If not specified, lnd will use a default value of 100% + // fees for small amounts (<=1k sat) or 5% fees for larger amounts. FeeLimit *FeeLimit `protobuf:"bytes,5,opt,name=fee_limit,json=feeLimit,proto3" json:"fee_limit,omitempty"` - // - //A list of nodes to ignore during path finding. When using REST, these fields - //must be encoded as base64. + // A list of nodes to ignore during path finding. When using REST, these fields + // must be encoded as base64. IgnoredNodes [][]byte `protobuf:"bytes,6,rep,name=ignored_nodes,json=ignoredNodes,proto3" json:"ignored_nodes,omitempty"` - // - //Deprecated. A list of edges to ignore during path finding. + // Deprecated. A list of edges to ignore during path finding. // // Deprecated: Do not use. IgnoredEdges []*EdgeLocator `protobuf:"bytes,7,rep,name=ignored_edges,json=ignoredEdges,proto3" json:"ignored_edges,omitempty"` - // - //The source node where the request route should originated from. If empty, - //self is assumed. + // The source node where the request route should originated from. If empty, + // self is assumed. SourcePubKey string `protobuf:"bytes,8,opt,name=source_pub_key,json=sourcePubKey,proto3" json:"source_pub_key,omitempty"` - // - //If set to true, edge probabilities from mission control will be used to get - //the optimal route. + // If set to true, edge probabilities from mission control will be used to get + // the optimal route. UseMissionControl bool `protobuf:"varint,9,opt,name=use_mission_control,json=useMissionControl,proto3" json:"use_mission_control,omitempty"` - // - //A list of directed node pairs that will be ignored during path finding. + // A list of directed node pairs that will be ignored during path finding. IgnoredPairs []*NodePair `protobuf:"bytes,10,rep,name=ignored_pairs,json=ignoredPairs,proto3" json:"ignored_pairs,omitempty"` - // - //An optional maximum total time lock for the route. If the source is empty or - //ourselves, this should not exceed lnd's `--max-cltv-expiry` setting. If - //zero, then the value of `--max-cltv-expiry` is used as the limit. + // An optional maximum total time lock for the route. If the source is empty or + // ourselves, this should not exceed lnd's `--max-cltv-expiry` setting. If + // zero, then the value of `--max-cltv-expiry` is used as the limit. CltvLimit uint32 `protobuf:"varint,11,opt,name=cltv_limit,json=cltvLimit,proto3" json:"cltv_limit,omitempty"` - // - //An optional field that can be used to pass an arbitrary set of TLV records - //to a peer which understands the new records. This can be used to pass - //application specific data during the payment attempt. If the destination - //does not support the specified records, an error will be returned. - //Record types are required to be in the custom range >= 65536. When using - //REST, the values must be encoded as base64. + // An optional field that can be used to pass an arbitrary set of TLV records + // to a peer which understands the new records. This can be used to pass + // application specific data during the payment attempt. If the destination + // does not support the specified records, an error will be returned. + // Record types are required to be in the custom range >= 65536. When using + // REST, the values must be encoded as base64. DestCustomRecords map[uint64][]byte `protobuf:"bytes,13,rep,name=dest_custom_records,json=destCustomRecords,proto3" json:"dest_custom_records,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - // - //The channel id of the channel that must be taken to the first hop. If zero, - //any channel may be used. + // The channel id of the channel that must be taken to the first hop. If zero, + // any channel may be used. OutgoingChanId uint64 `protobuf:"varint,14,opt,name=outgoing_chan_id,json=outgoingChanId,proto3" json:"outgoing_chan_id,omitempty"` - // - //The pubkey of the last hop of the route. If empty, any hop may be used. + // The pubkey of the last hop of the route. If empty, any hop may be used. LastHopPubkey []byte `protobuf:"bytes,15,opt,name=last_hop_pubkey,json=lastHopPubkey,proto3" json:"last_hop_pubkey,omitempty"` - // - //Optional route hints to reach the destination through private channels. + // Optional route hints to reach the destination through private channels. RouteHints []*RouteHint `protobuf:"bytes,16,rep,name=route_hints,json=routeHints,proto3" json:"route_hints,omitempty"` - // - //Features assumed to be supported by the final node. All transitive feature - //dependencies must also be set properly. For a given feature bit pair, either - //optional or remote may be set, but not both. If this field is nil or empty, - //the router will try to load destination features from the graph as a - //fallback. + // Features assumed to be supported by the final node. All transitive feature + // dependencies must also be set properly. For a given feature bit pair, either + // optional or remote may be set, but not both. If this field is nil or empty, + // the router will try to load destination features from the graph as a + // fallback. DestFeatures []FeatureBit `protobuf:"varint,17,rep,packed,name=dest_features,json=destFeatures,proto3,enum=lnrpc.FeatureBit" json:"dest_features,omitempty"` - // - //The time preference for this payment. Set to -1 to optimize for fees - //only, to 1 to optimize for reliability only or a value inbetween for a mix. + // The time preference for this payment. Set to -1 to optimize for fees + // only, to 1 to optimize for reliability only or a value inbetween for a mix. TimePref float64 `protobuf:"fixed64,18,opt,name=time_pref,json=timePref,proto3" json:"time_pref,omitempty"` } @@ -9269,13 +9124,11 @@ type NodePair struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The sending node of the pair. When using REST, this field must be encoded as - //base64. + // The sending node of the pair. When using REST, this field must be encoded as + // base64. From []byte `protobuf:"bytes,1,opt,name=from,proto3" json:"from,omitempty"` - // - //The receiving node of the pair. When using REST, this field must be encoded - //as base64. + // The receiving node of the pair. When using REST, this field must be encoded + // as base64. To []byte `protobuf:"bytes,2,opt,name=to,proto3" json:"to,omitempty"` } @@ -9332,11 +9185,10 @@ type EdgeLocator struct { // The short channel id of this edge. ChannelId uint64 `protobuf:"varint,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"` - // - //The direction of this edge. If direction_reverse is false, the direction - //of this edge is from the channel endpoint with the lexicographically smaller - //pub key to the endpoint with the larger pub key. If direction_reverse is - //is true, the edge goes the other way. + // The direction of this edge. If direction_reverse is false, the direction + // of this edge is from the channel endpoint with the lexicographically smaller + // pub key to the endpoint with the larger pub key. If direction_reverse is + // is true, the edge goes the other way. DirectionReverse bool `protobuf:"varint,2,opt,name=direction_reverse,json=directionReverse,proto3" json:"direction_reverse,omitempty"` } @@ -9391,13 +9243,11 @@ type QueryRoutesResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The route that results from the path finding operation. This is still a - //repeated field to retain backwards compatibility. + // The route that results from the path finding operation. This is still a + // repeated field to retain backwards compatibility. Routes []*Route `protobuf:"bytes,1,rep,name=routes,proto3" json:"routes,omitempty"` - // - //The success probability of the returned route based on the current mission - //control state. [EXPERIMENTAL] + // The success probability of the returned route based on the current mission + // control state. [EXPERIMENTAL] SuccessProb float64 `protobuf:"fixed64,2,opt,name=success_prob,json=successProb,proto3" json:"success_prob,omitempty"` } @@ -9452,10 +9302,9 @@ type Hop struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The unique channel ID for the channel. The first 3 bytes are the block - //height, the next 3 the index within the block, and the last 2 bytes are the - //output index for the channel. + // The unique channel ID for the channel. The first 3 bytes are the block + // height, the next 3 the index within the block, and the last 2 bytes are the + // output index for the channel. ChanId uint64 `protobuf:"varint,1,opt,name=chan_id,json=chanId,proto3" json:"chan_id,omitempty"` // Deprecated: Do not use. ChanCapacity int64 `protobuf:"varint,2,opt,name=chan_capacity,json=chanCapacity,proto3" json:"chan_capacity,omitempty"` @@ -9466,35 +9315,30 @@ type Hop struct { Expiry uint32 `protobuf:"varint,5,opt,name=expiry,proto3" json:"expiry,omitempty"` AmtToForwardMsat int64 `protobuf:"varint,6,opt,name=amt_to_forward_msat,json=amtToForwardMsat,proto3" json:"amt_to_forward_msat,omitempty"` FeeMsat int64 `protobuf:"varint,7,opt,name=fee_msat,json=feeMsat,proto3" json:"fee_msat,omitempty"` - // - //An optional public key of the hop. If the public key is given, the payment - //can be executed without relying on a copy of the channel graph. + // An optional public key of the hop. If the public key is given, the payment + // can be executed without relying on a copy of the channel graph. PubKey string `protobuf:"bytes,8,opt,name=pub_key,json=pubKey,proto3" json:"pub_key,omitempty"` - // - //If set to true, then this hop will be encoded using the new variable length - //TLV format. Note that if any custom tlv_records below are specified, then - //this field MUST be set to true for them to be encoded properly. + // If set to true, then this hop will be encoded using the new variable length + // TLV format. Note that if any custom tlv_records below are specified, then + // this field MUST be set to true for them to be encoded properly. // // Deprecated: Do not use. TlvPayload bool `protobuf:"varint,9,opt,name=tlv_payload,json=tlvPayload,proto3" json:"tlv_payload,omitempty"` - // - //An optional TLV record that signals the use of an MPP payment. If present, - //the receiver will enforce that the same mpp_record is included in the final - //hop payload of all non-zero payments in the HTLC set. If empty, a regular - //single-shot payment is or was attempted. + // An optional TLV record that signals the use of an MPP payment. If present, + // the receiver will enforce that the same mpp_record is included in the final + // hop payload of all non-zero payments in the HTLC set. If empty, a regular + // single-shot payment is or was attempted. MppRecord *MPPRecord `protobuf:"bytes,10,opt,name=mpp_record,json=mppRecord,proto3" json:"mpp_record,omitempty"` - // - //An optional TLV record that signals the use of an AMP payment. If present, - //the receiver will treat all received payments including the same - //(payment_addr, set_id) pair as being part of one logical payment. The - //payment will be settled by XORing the root_share's together and deriving the - //child hashes and preimages according to BOLT XX. Must be used in conjunction - //with mpp_record. + // An optional TLV record that signals the use of an AMP payment. If present, + // the receiver will treat all received payments including the same + // (payment_addr, set_id) pair as being part of one logical payment. The + // payment will be settled by XORing the root_share's together and deriving the + // child hashes and preimages according to BOLT XX. Must be used in conjunction + // with mpp_record. AmpRecord *AMPRecord `protobuf:"bytes,12,opt,name=amp_record,json=ampRecord,proto3" json:"amp_record,omitempty"` - // - //An optional set of key-value TLV records. This is useful within the context - //of the SendToRoute call as it allows callers to specify arbitrary K-V pairs - //to drop off at each hop within the onion. + // An optional set of key-value TLV records. This is useful within the context + // of the SendToRoute call as it allows callers to specify arbitrary K-V pairs + // to drop off at each hop within the onion. CustomRecords map[uint64][]byte `protobuf:"bytes,11,rep,name=custom_records,json=customRecords,proto3" json:"custom_records,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // The payment metadata to send along with the payment to the payee. Metadata []byte `protobuf:"bytes,13,opt,name=metadata,proto3" json:"metadata,omitempty"` @@ -9632,17 +9476,15 @@ type MPPRecord struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //A unique, random identifier used to authenticate the sender as the intended - //payer of a multi-path payment. The payment_addr must be the same for all - //subpayments, and match the payment_addr provided in the receiver's invoice. - //The same payment_addr must be used on all subpayments. + // A unique, random identifier used to authenticate the sender as the intended + // payer of a multi-path payment. The payment_addr must be the same for all + // subpayments, and match the payment_addr provided in the receiver's invoice. + // The same payment_addr must be used on all subpayments. PaymentAddr []byte `protobuf:"bytes,11,opt,name=payment_addr,json=paymentAddr,proto3" json:"payment_addr,omitempty"` - // - //The total amount in milli-satoshis being sent as part of a larger multi-path - //payment. The caller is responsible for ensuring subpayments to the same node - //and payment_hash sum exactly to total_amt_msat. The same - //total_amt_msat must be used on all subpayments. + // The total amount in milli-satoshis being sent as part of a larger multi-path + // payment. The caller is responsible for ensuring subpayments to the same node + // and payment_hash sum exactly to total_amt_msat. The same + // total_amt_msat must be used on all subpayments. TotalAmtMsat int64 `protobuf:"varint,10,opt,name=total_amt_msat,json=totalAmtMsat,proto3" json:"total_amt_msat,omitempty"` } @@ -9755,47 +9597,40 @@ func (x *AMPRecord) GetChildIndex() uint32 { return 0 } -// -//A path through the channel graph which runs over one or more channels in -//succession. This struct carries all the information required to craft the -//Sphinx onion packet, and send the payment along the first hop in the path. A -//route is only selected as valid if all the channels have sufficient capacity to -//carry the initial payment amount after fees are accounted for. +// A path through the channel graph which runs over one or more channels in +// succession. This struct carries all the information required to craft the +// Sphinx onion packet, and send the payment along the first hop in the path. A +// route is only selected as valid if all the channels have sufficient capacity to +// carry the initial payment amount after fees are accounted for. type Route struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The cumulative (final) time lock across the entire route. This is the CLTV - //value that should be extended to the first hop in the route. All other hops - //will decrement the time-lock as advertised, leaving enough time for all - //hops to wait for or present the payment preimage to complete the payment. + // The cumulative (final) time lock across the entire route. This is the CLTV + // value that should be extended to the first hop in the route. All other hops + // will decrement the time-lock as advertised, leaving enough time for all + // hops to wait for or present the payment preimage to complete the payment. TotalTimeLock uint32 `protobuf:"varint,1,opt,name=total_time_lock,json=totalTimeLock,proto3" json:"total_time_lock,omitempty"` - // - //The sum of the fees paid at each hop within the final route. In the case - //of a one-hop payment, this value will be zero as we don't need to pay a fee - //to ourselves. + // The sum of the fees paid at each hop within the final route. In the case + // of a one-hop payment, this value will be zero as we don't need to pay a fee + // to ourselves. // // Deprecated: Do not use. TotalFees int64 `protobuf:"varint,2,opt,name=total_fees,json=totalFees,proto3" json:"total_fees,omitempty"` - // - //The total amount of funds required to complete a payment over this route. - //This value includes the cumulative fees at each hop. As a result, the HTLC - //extended to the first-hop in the route will need to have at least this many - //satoshis, otherwise the route will fail at an intermediate node due to an - //insufficient amount of fees. + // The total amount of funds required to complete a payment over this route. + // This value includes the cumulative fees at each hop. As a result, the HTLC + // extended to the first-hop in the route will need to have at least this many + // satoshis, otherwise the route will fail at an intermediate node due to an + // insufficient amount of fees. // // Deprecated: Do not use. TotalAmt int64 `protobuf:"varint,3,opt,name=total_amt,json=totalAmt,proto3" json:"total_amt,omitempty"` - // - //Contains details concerning the specific forwarding details at each hop. + // Contains details concerning the specific forwarding details at each hop. Hops []*Hop `protobuf:"bytes,4,rep,name=hops,proto3" json:"hops,omitempty"` - // - //The total fees in millisatoshis. + // The total fees in millisatoshis. TotalFeesMsat int64 `protobuf:"varint,5,opt,name=total_fees_msat,json=totalFeesMsat,proto3" json:"total_fees_msat,omitempty"` - // - //The total amount in millisatoshis. + // The total amount in millisatoshis. TotalAmtMsat int64 `protobuf:"varint,6,opt,name=total_amt_msat,json=totalAmtMsat,proto3" json:"total_amt_msat,omitempty"` } @@ -9937,11 +9772,10 @@ type NodeInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //An individual vertex/node within the channel graph. A node is - //connected to other nodes by one or more channel edges emanating from it. As - //the graph is directed, a node will also have an incoming edge attached to - //it for each outgoing edge. + // An individual vertex/node within the channel graph. A node is + // connected to other nodes by one or more channel edges emanating from it. As + // the graph is directed, a node will also have an incoming edge attached to + // it for each outgoing edge. Node *LightningNode `protobuf:"bytes,1,opt,name=node,proto3" json:"node,omitempty"` // The total number of channels for the node. NumChannels uint32 `protobuf:"varint,2,opt,name=num_channels,json=numChannels,proto3" json:"num_channels,omitempty"` @@ -10011,11 +9845,10 @@ func (x *NodeInfo) GetChannels() []*ChannelEdge { return nil } -// -//An individual vertex/node within the channel graph. A node is -//connected to other nodes by one or more channel edges emanating from it. As the -//graph is directed, a node will also have an incoming edge attached to it for -//each outgoing edge. +// An individual vertex/node within the channel graph. A node is +// connected to other nodes by one or more channel edges emanating from it. As the +// graph is directed, a node will also have an incoming edge attached to it for +// each outgoing edge. type LightningNode struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -10253,21 +10086,19 @@ func (x *RoutingPolicy) GetLastUpdate() uint32 { return 0 } -// -//A fully authenticated channel along with all its unique attributes. -//Once an authenticated channel announcement has been processed on the network, -//then an instance of ChannelEdgeInfo encapsulating the channels attributes is -//stored. The other portions relevant to routing policy of a channel are stored -//within a ChannelEdgePolicy for each direction of the channel. +// A fully authenticated channel along with all its unique attributes. +// Once an authenticated channel announcement has been processed on the network, +// then an instance of ChannelEdgeInfo encapsulating the channels attributes is +// stored. The other portions relevant to routing policy of a channel are stored +// within a ChannelEdgePolicy for each direction of the channel. type ChannelEdge struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The unique channel ID for the channel. The first 3 bytes are the block - //height, the next 3 the index within the block, and the last 2 bytes are the - //output index for the channel. + // The unique channel ID for the channel. The first 3 bytes are the block + // height, the next 3 the index within the block, and the last 2 bytes are the + // output index for the channel. ChannelId uint64 `protobuf:"varint,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"` ChanPoint string `protobuf:"bytes,2,opt,name=chan_point,json=chanPoint,proto3" json:"chan_point,omitempty"` // Deprecated: Do not use. @@ -10373,10 +10204,9 @@ type ChannelGraphRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //Whether unannounced channels are included in the response or not. If set, - //unannounced channels are included. Unannounced channels are both private - //channels, and public channels that are not yet announced to the network. + // Whether unannounced channels are included in the response or not. If set, + // unannounced channels are included. Unannounced channels are both private + // channels, and public channels that are not yet announced to the network. IncludeUnannounced bool `protobuf:"varint,1,opt,name=include_unannounced,json=includeUnannounced,proto3" json:"include_unannounced,omitempty"` } @@ -10530,12 +10360,11 @@ type NodeMetricsResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //Betweenness centrality is the sum of the ratio of shortest paths that pass - //through the node for each pair of nodes in the graph (not counting paths - //starting or ending at this node). - //Map of node pubkey to betweenness centrality of the node. Normalized - //values are in the [0,1] closed interval. + // Betweenness centrality is the sum of the ratio of shortest paths that pass + // through the node for each pair of nodes in the graph (not counting paths + // starting or ending at this node). + // Map of node pubkey to betweenness centrality of the node. Normalized + // values are in the [0,1] closed interval. BetweennessCentrality map[string]*FloatMetric `protobuf:"bytes,1,rep,name=betweenness_centrality,json=betweennessCentrality,proto3" json:"betweenness_centrality,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } @@ -10640,10 +10469,9 @@ type ChanInfoRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The unique channel ID for the channel. The first 3 bytes are the block - //height, the next 3 the index within the block, and the last 2 bytes are the - //output index for the channel. + // The unique channel ID for the channel. The first 3 bytes are the block + // height, the next 3 the index within the block, and the last 2 bytes are the + // output index for the channel. ChanId uint64 `protobuf:"varint,1,opt,name=chan_id,json=chanId,proto3" json:"chan_id,omitempty"` } @@ -11034,23 +10862,20 @@ type NodeUpdate struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //Deprecated, use node_addresses. + // Deprecated, use node_addresses. // // Deprecated: Do not use. Addresses []string `protobuf:"bytes,1,rep,name=addresses,proto3" json:"addresses,omitempty"` IdentityKey string `protobuf:"bytes,2,opt,name=identity_key,json=identityKey,proto3" json:"identity_key,omitempty"` - // - //Deprecated, use features. + // Deprecated, use features. // // Deprecated: Do not use. GlobalFeatures []byte `protobuf:"bytes,3,opt,name=global_features,json=globalFeatures,proto3" json:"global_features,omitempty"` Alias string `protobuf:"bytes,4,opt,name=alias,proto3" json:"alias,omitempty"` Color string `protobuf:"bytes,5,opt,name=color,proto3" json:"color,omitempty"` NodeAddresses []*NodeAddress `protobuf:"bytes,7,rep,name=node_addresses,json=nodeAddresses,proto3" json:"node_addresses,omitempty"` - // - //Features that the node has advertised in the init message, node - //announcements and invoices. + // Features that the node has advertised in the init message, node + // announcements and invoices. Features map[uint32]*Feature `protobuf:"bytes,6,rep,name=features,proto3" json:"features,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } @@ -11142,10 +10967,9 @@ type ChannelEdgeUpdate struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The unique channel ID for the channel. The first 3 bytes are the block - //height, the next 3 the index within the block, and the last 2 bytes are the - //output index for the channel. + // The unique channel ID for the channel. The first 3 bytes are the block + // height, the next 3 the index within the block, and the last 2 bytes are the + // output index for the channel. ChanId uint64 `protobuf:"varint,1,opt,name=chan_id,json=chanId,proto3" json:"chan_id,omitempty"` ChanPoint *ChannelPoint `protobuf:"bytes,2,opt,name=chan_point,json=chanPoint,proto3" json:"chan_point,omitempty"` Capacity int64 `protobuf:"varint,3,opt,name=capacity,proto3" json:"capacity,omitempty"` @@ -11233,10 +11057,9 @@ type ClosedChannelUpdate struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The unique channel ID for the channel. The first 3 bytes are the block - //height, the next 3 the index within the block, and the last 2 bytes are the - //output index for the channel. + // The unique channel ID for the channel. The first 3 bytes are the block + // height, the next 3 the index within the block, and the last 2 bytes are the + // output index for the channel. ChanId uint64 `protobuf:"varint,1,opt,name=chan_id,json=chanId,proto3" json:"chan_id,omitempty"` Capacity int64 `protobuf:"varint,2,opt,name=capacity,proto3" json:"capacity,omitempty"` ClosedHeight uint32 `protobuf:"varint,3,opt,name=closed_height,json=closedHeight,proto3" json:"closed_height,omitempty"` @@ -11314,9 +11137,8 @@ type HopHint struct { ChanId uint64 `protobuf:"varint,2,opt,name=chan_id,json=chanId,proto3" json:"chan_id,omitempty"` // The base fee of the channel denominated in millisatoshis. FeeBaseMsat uint32 `protobuf:"varint,3,opt,name=fee_base_msat,json=feeBaseMsat,proto3" json:"fee_base_msat,omitempty"` - // - //The fee rate of the channel for sending one satoshi across it denominated in - //millionths of a satoshi. + // The fee rate of the channel for sending one satoshi across it denominated in + // millionths of a satoshi. FeeProportionalMillionths uint32 `protobuf:"varint,4,opt,name=fee_proportional_millionths,json=feeProportionalMillionths,proto3" json:"fee_proportional_millionths,omitempty"` // The time-lock delta of the channel. CltvExpiryDelta uint32 `protobuf:"varint,5,opt,name=cltv_expiry_delta,json=cltvExpiryDelta,proto3" json:"cltv_expiry_delta,omitempty"` @@ -11441,9 +11263,8 @@ type RouteHint struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //A list of hop hints that when chained together can assist in reaching a - //specific destination. + // A list of hop hints that when chained together can assist in reaching a + // specific destination. HopHints []*HopHint `protobuf:"bytes,1,rep,name=hop_hints,json=hopHints,proto3" json:"hop_hints,omitempty"` } @@ -11566,58 +11387,48 @@ type Invoice struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //An optional memo to attach along with the invoice. Used for record keeping - //purposes for the invoice's creator, and will also be set in the description - //field of the encoded payment request if the description_hash field is not - //being used. + // An optional memo to attach along with the invoice. Used for record keeping + // purposes for the invoice's creator, and will also be set in the description + // field of the encoded payment request if the description_hash field is not + // being used. Memo string `protobuf:"bytes,1,opt,name=memo,proto3" json:"memo,omitempty"` - // - //The hex-encoded preimage (32 byte) which will allow settling an incoming - //HTLC payable to this preimage. When using REST, this field must be encoded - //as base64. + // The hex-encoded preimage (32 byte) which will allow settling an incoming + // HTLC payable to this preimage. When using REST, this field must be encoded + // as base64. RPreimage []byte `protobuf:"bytes,3,opt,name=r_preimage,json=rPreimage,proto3" json:"r_preimage,omitempty"` - // - //The hash of the preimage. When using REST, this field must be encoded as - //base64. - //Note: Output only, don't specify for creating an invoice. + // The hash of the preimage. When using REST, this field must be encoded as + // base64. + // Note: Output only, don't specify for creating an invoice. RHash []byte `protobuf:"bytes,4,opt,name=r_hash,json=rHash,proto3" json:"r_hash,omitempty"` + // The value of this invoice in satoshis // - //The value of this invoice in satoshis - // - //The fields value and value_msat are mutually exclusive. + // The fields value and value_msat are mutually exclusive. Value int64 `protobuf:"varint,5,opt,name=value,proto3" json:"value,omitempty"` + // The value of this invoice in millisatoshis // - //The value of this invoice in millisatoshis - // - //The fields value and value_msat are mutually exclusive. + // The fields value and value_msat are mutually exclusive. ValueMsat int64 `protobuf:"varint,23,opt,name=value_msat,json=valueMsat,proto3" json:"value_msat,omitempty"` + // Whether this invoice has been fulfilled // - //Whether this invoice has been fulfilled - // - //The field is deprecated. Use the state field instead (compare to SETTLED). + // The field is deprecated. Use the state field instead (compare to SETTLED). // // Deprecated: Do not use. Settled bool `protobuf:"varint,6,opt,name=settled,proto3" json:"settled,omitempty"` - // - //When this invoice was created. - //Note: Output only, don't specify for creating an invoice. + // When this invoice was created. + // Note: Output only, don't specify for creating an invoice. CreationDate int64 `protobuf:"varint,7,opt,name=creation_date,json=creationDate,proto3" json:"creation_date,omitempty"` - // - //When this invoice was settled. - //Note: Output only, don't specify for creating an invoice. + // When this invoice was settled. + // Note: Output only, don't specify for creating an invoice. SettleDate int64 `protobuf:"varint,8,opt,name=settle_date,json=settleDate,proto3" json:"settle_date,omitempty"` - // - //A bare-bones invoice for a payment within the Lightning Network. With the - //details of the invoice, the sender has all the data necessary to send a - //payment to the recipient. - //Note: Output only, don't specify for creating an invoice. + // A bare-bones invoice for a payment within the Lightning Network. With the + // details of the invoice, the sender has all the data necessary to send a + // payment to the recipient. + // Note: Output only, don't specify for creating an invoice. PaymentRequest string `protobuf:"bytes,9,opt,name=payment_request,json=paymentRequest,proto3" json:"payment_request,omitempty"` - // - //Hash (SHA-256) of a description of the payment. Used if the description of - //payment (memo) is too long to naturally fit within the description field - //of an encoded payment request. When using REST, this field must be encoded - //as base64. + // Hash (SHA-256) of a description of the payment. Used if the description of + // payment (memo) is too long to naturally fit within the description field + // of an encoded payment request. When using REST, this field must be encoded + // as base64. DescriptionHash []byte `protobuf:"bytes,10,opt,name=description_hash,json=descriptionHash,proto3" json:"description_hash,omitempty"` // Payment request expiry time in seconds. Default is 3600 (1 hour). Expiry int64 `protobuf:"varint,11,opt,name=expiry,proto3" json:"expiry,omitempty"` @@ -11625,82 +11436,70 @@ type Invoice struct { FallbackAddr string `protobuf:"bytes,12,opt,name=fallback_addr,json=fallbackAddr,proto3" json:"fallback_addr,omitempty"` // Delta to use for the time-lock of the CLTV extended to the final hop. CltvExpiry uint64 `protobuf:"varint,13,opt,name=cltv_expiry,json=cltvExpiry,proto3" json:"cltv_expiry,omitempty"` - // - //Route hints that can each be individually used to assist in reaching the - //invoice's destination. + // Route hints that can each be individually used to assist in reaching the + // invoice's destination. RouteHints []*RouteHint `protobuf:"bytes,14,rep,name=route_hints,json=routeHints,proto3" json:"route_hints,omitempty"` // Whether this invoice should include routing hints for private channels. Private bool `protobuf:"varint,15,opt,name=private,proto3" json:"private,omitempty"` - // - //The "add" index of this invoice. Each newly created invoice will increment - //this index making it monotonically increasing. Callers to the - //SubscribeInvoices call can use this to instantly get notified of all added - //invoices with an add_index greater than this one. - //Note: Output only, don't specify for creating an invoice. + // The "add" index of this invoice. Each newly created invoice will increment + // this index making it monotonically increasing. Callers to the + // SubscribeInvoices call can use this to instantly get notified of all added + // invoices with an add_index greater than this one. + // Note: Output only, don't specify for creating an invoice. AddIndex uint64 `protobuf:"varint,16,opt,name=add_index,json=addIndex,proto3" json:"add_index,omitempty"` - // - //The "settle" index of this invoice. Each newly settled invoice will - //increment this index making it monotonically increasing. Callers to the - //SubscribeInvoices call can use this to instantly get notified of all - //settled invoices with an settle_index greater than this one. - //Note: Output only, don't specify for creating an invoice. + // The "settle" index of this invoice. Each newly settled invoice will + // increment this index making it monotonically increasing. Callers to the + // SubscribeInvoices call can use this to instantly get notified of all + // settled invoices with an settle_index greater than this one. + // Note: Output only, don't specify for creating an invoice. SettleIndex uint64 `protobuf:"varint,17,opt,name=settle_index,json=settleIndex,proto3" json:"settle_index,omitempty"` // Deprecated, use amt_paid_sat or amt_paid_msat. // // Deprecated: Do not use. AmtPaid int64 `protobuf:"varint,18,opt,name=amt_paid,json=amtPaid,proto3" json:"amt_paid,omitempty"` - // - //The amount that was accepted for this invoice, in satoshis. This will ONLY - //be set if this invoice has been settled. We provide this field as if the - //invoice was created with a zero value, then we need to record what amount - //was ultimately accepted. Additionally, it's possible that the sender paid - //MORE that was specified in the original invoice. So we'll record that here - //as well. - //Note: Output only, don't specify for creating an invoice. + // The amount that was accepted for this invoice, in satoshis. This will ONLY + // be set if this invoice has been settled. We provide this field as if the + // invoice was created with a zero value, then we need to record what amount + // was ultimately accepted. Additionally, it's possible that the sender paid + // MORE that was specified in the original invoice. So we'll record that here + // as well. + // Note: Output only, don't specify for creating an invoice. AmtPaidSat int64 `protobuf:"varint,19,opt,name=amt_paid_sat,json=amtPaidSat,proto3" json:"amt_paid_sat,omitempty"` - // - //The amount that was accepted for this invoice, in millisatoshis. This will - //ONLY be set if this invoice has been settled. We provide this field as if - //the invoice was created with a zero value, then we need to record what - //amount was ultimately accepted. Additionally, it's possible that the sender - //paid MORE that was specified in the original invoice. So we'll record that - //here as well. - //Note: Output only, don't specify for creating an invoice. + // The amount that was accepted for this invoice, in millisatoshis. This will + // ONLY be set if this invoice has been settled. We provide this field as if + // the invoice was created with a zero value, then we need to record what + // amount was ultimately accepted. Additionally, it's possible that the sender + // paid MORE that was specified in the original invoice. So we'll record that + // here as well. + // Note: Output only, don't specify for creating an invoice. AmtPaidMsat int64 `protobuf:"varint,20,opt,name=amt_paid_msat,json=amtPaidMsat,proto3" json:"amt_paid_msat,omitempty"` - // - //The state the invoice is in. - //Note: Output only, don't specify for creating an invoice. + // The state the invoice is in. + // Note: Output only, don't specify for creating an invoice. State Invoice_InvoiceState `protobuf:"varint,21,opt,name=state,proto3,enum=lnrpc.Invoice_InvoiceState" json:"state,omitempty"` - // - //List of HTLCs paying to this invoice [EXPERIMENTAL]. - //Note: Output only, don't specify for creating an invoice. + // List of HTLCs paying to this invoice [EXPERIMENTAL]. + // Note: Output only, don't specify for creating an invoice. Htlcs []*InvoiceHTLC `protobuf:"bytes,22,rep,name=htlcs,proto3" json:"htlcs,omitempty"` - // - //List of features advertised on the invoice. - //Note: Output only, don't specify for creating an invoice. + // List of features advertised on the invoice. + // Note: Output only, don't specify for creating an invoice. Features map[uint32]*Feature `protobuf:"bytes,24,rep,name=features,proto3" json:"features,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - // - //Indicates if this invoice was a spontaneous payment that arrived via keysend - //[EXPERIMENTAL]. - //Note: Output only, don't specify for creating an invoice. + // Indicates if this invoice was a spontaneous payment that arrived via keysend + // [EXPERIMENTAL]. + // Note: Output only, don't specify for creating an invoice. IsKeysend bool `protobuf:"varint,25,opt,name=is_keysend,json=isKeysend,proto3" json:"is_keysend,omitempty"` - // - //The payment address of this invoice. This value will be used in MPP - //payments, and also for newer invoices that always require the MPP payload - //for added end-to-end security. - //Note: Output only, don't specify for creating an invoice. + // The payment address of this invoice. This value will be used in MPP + // payments, and also for newer invoices that always require the MPP payload + // for added end-to-end security. + // Note: Output only, don't specify for creating an invoice. PaymentAddr []byte `protobuf:"bytes,26,opt,name=payment_addr,json=paymentAddr,proto3" json:"payment_addr,omitempty"` - // - //Signals whether or not this is an AMP invoice. + // Signals whether or not this is an AMP invoice. IsAmp bool `protobuf:"varint,27,opt,name=is_amp,json=isAmp,proto3" json:"is_amp,omitempty"` + // [EXPERIMENTAL]: // - //[EXPERIMENTAL]: - // - //Maps a 32-byte hex-encoded set ID to the sub-invoice AMP state for the - //given set ID. This field is always populated for AMP invoices, and can be - //used along side LookupInvoice to obtain the HTLC information related to a - //given sub-invoice. - //Note: Output only, don't specify for creating an invoice. + // Maps a 32-byte hex-encoded set ID to the sub-invoice AMP state for the + // given set ID. This field is always populated for AMP invoices, and can be + // used along side LookupInvoice to obtain the HTLC information related to a + // given sub-invoice. + // Note: Output only, don't specify for creating an invoice. AmpInvoiceState map[string]*AMPInvoiceState `protobuf:"bytes,28,rep,name=amp_invoice_state,json=ampInvoiceState,proto3" json:"amp_invoice_state,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } @@ -12161,21 +11960,18 @@ type AddInvoiceResponse struct { unknownFields protoimpl.UnknownFields RHash []byte `protobuf:"bytes,1,opt,name=r_hash,json=rHash,proto3" json:"r_hash,omitempty"` - // - //A bare-bones invoice for a payment within the Lightning Network. With the - //details of the invoice, the sender has all the data necessary to send a - //payment to the recipient. + // A bare-bones invoice for a payment within the Lightning Network. With the + // details of the invoice, the sender has all the data necessary to send a + // payment to the recipient. PaymentRequest string `protobuf:"bytes,2,opt,name=payment_request,json=paymentRequest,proto3" json:"payment_request,omitempty"` - // - //The "add" index of this invoice. Each newly created invoice will increment - //this index making it monotonically increasing. Callers to the - //SubscribeInvoices call can use this to instantly get notified of all added - //invoices with an add_index greater than this one. + // The "add" index of this invoice. Each newly created invoice will increment + // this index making it monotonically increasing. Callers to the + // SubscribeInvoices call can use this to instantly get notified of all added + // invoices with an add_index greater than this one. AddIndex uint64 `protobuf:"varint,16,opt,name=add_index,json=addIndex,proto3" json:"add_index,omitempty"` - // - //The payment address of the generated invoice. This value should be used - //in all payments for this invoice as we require it for end to end - //security. + // The payment address of the generated invoice. This value should be used + // in all payments for this invoice as we require it for end to end + // security. PaymentAddr []byte `protobuf:"bytes,17,opt,name=payment_addr,json=paymentAddr,proto3" json:"payment_addr,omitempty"` } @@ -12244,17 +12040,15 @@ type PaymentHash struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The hex-encoded payment hash of the invoice to be looked up. The passed - //payment hash must be exactly 32 bytes, otherwise an error is returned. - //Deprecated now that the REST gateway supports base64 encoding of bytes - //fields. + // The hex-encoded payment hash of the invoice to be looked up. The passed + // payment hash must be exactly 32 bytes, otherwise an error is returned. + // Deprecated now that the REST gateway supports base64 encoding of bytes + // fields. // // Deprecated: Do not use. RHashStr string `protobuf:"bytes,1,opt,name=r_hash_str,json=rHashStr,proto3" json:"r_hash_str,omitempty"` - // - //The payment hash of the invoice to be looked up. When using REST, this field - //must be encoded as base64. + // The payment hash of the invoice to be looked up. When using REST, this field + // must be encoded as base64. RHash []byte `protobuf:"bytes,2,opt,name=r_hash,json=rHash,proto3" json:"r_hash,omitempty"` } @@ -12310,19 +12104,16 @@ type ListInvoiceRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //If set, only invoices that are not settled and not canceled will be returned - //in the response. + // If set, only invoices that are not settled and not canceled will be returned + // in the response. PendingOnly bool `protobuf:"varint,1,opt,name=pending_only,json=pendingOnly,proto3" json:"pending_only,omitempty"` - // - //The index of an invoice that will be used as either the start or end of a - //query to determine which invoices should be returned in the response. + // The index of an invoice that will be used as either the start or end of a + // query to determine which invoices should be returned in the response. IndexOffset uint64 `protobuf:"varint,4,opt,name=index_offset,json=indexOffset,proto3" json:"index_offset,omitempty"` // The max number of invoices to return in the response to this query. NumMaxInvoices uint64 `protobuf:"varint,5,opt,name=num_max_invoices,json=numMaxInvoices,proto3" json:"num_max_invoices,omitempty"` - // - //If set, the invoices returned will result from seeking backwards from the - //specified index offset. This can be used to paginate backwards. + // If set, the invoices returned will result from seeking backwards from the + // specified index offset. This can be used to paginate backwards. Reversed bool `protobuf:"varint,6,opt,name=reversed,proto3" json:"reversed,omitempty"` } @@ -12391,17 +12182,14 @@ type ListInvoiceResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //A list of invoices from the time slice of the time series specified in the - //request. + // A list of invoices from the time slice of the time series specified in the + // request. Invoices []*Invoice `protobuf:"bytes,1,rep,name=invoices,proto3" json:"invoices,omitempty"` - // - //The index of the last item in the set of returned invoices. This can be used - //to seek further, pagination style. + // The index of the last item in the set of returned invoices. This can be used + // to seek further, pagination style. LastIndexOffset uint64 `protobuf:"varint,2,opt,name=last_index_offset,json=lastIndexOffset,proto3" json:"last_index_offset,omitempty"` - // - //The index of the last item in the set of returned invoices. This can be used - //to seek backwards, pagination style. + // The index of the last item in the set of returned invoices. This can be used + // to seek backwards, pagination style. FirstIndexOffset uint64 `protobuf:"varint,3,opt,name=first_index_offset,json=firstIndexOffset,proto3" json:"first_index_offset,omitempty"` } @@ -12463,17 +12251,15 @@ type InvoiceSubscription struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //If specified (non-zero), then we'll first start by sending out - //notifications for all added indexes with an add_index greater than this - //value. This allows callers to catch up on any events they missed while they - //weren't connected to the streaming RPC. + // If specified (non-zero), then we'll first start by sending out + // notifications for all added indexes with an add_index greater than this + // value. This allows callers to catch up on any events they missed while they + // weren't connected to the streaming RPC. AddIndex uint64 `protobuf:"varint,1,opt,name=add_index,json=addIndex,proto3" json:"add_index,omitempty"` - // - //If specified (non-zero), then we'll first start by sending out - //notifications for all settled indexes with an settle_index greater than - //this value. This allows callers to catch up on any events they missed while - //they weren't connected to the streaming RPC. + // If specified (non-zero), then we'll first start by sending out + // notifications for all settled indexes with an settle_index greater than + // this value. This allows callers to catch up on any events they missed while + // they weren't connected to the streaming RPC. SettleIndex uint64 `protobuf:"varint,2,opt,name=settle_index,json=settleIndex,proto3" json:"settle_index,omitempty"` } @@ -12552,18 +12338,17 @@ type Payment struct { PaymentRequest string `protobuf:"bytes,9,opt,name=payment_request,json=paymentRequest,proto3" json:"payment_request,omitempty"` // The status of the payment. Status Payment_PaymentStatus `protobuf:"varint,10,opt,name=status,proto3,enum=lnrpc.Payment_PaymentStatus" json:"status,omitempty"` - // The fee paid for this payment in satoshis + // The fee paid for this payment in satoshis FeeSat int64 `protobuf:"varint,11,opt,name=fee_sat,json=feeSat,proto3" json:"fee_sat,omitempty"` - // The fee paid for this payment in milli-satoshis + // The fee paid for this payment in milli-satoshis FeeMsat int64 `protobuf:"varint,12,opt,name=fee_msat,json=feeMsat,proto3" json:"fee_msat,omitempty"` // The time in UNIX nanoseconds at which the payment was created. CreationTimeNs int64 `protobuf:"varint,13,opt,name=creation_time_ns,json=creationTimeNs,proto3" json:"creation_time_ns,omitempty"` // The HTLCs made in attempt to settle the payment. Htlcs []*HTLCAttempt `protobuf:"bytes,14,rep,name=htlcs,proto3" json:"htlcs,omitempty"` - // - //The creation index of this payment. Each payment can be uniquely identified - //by this index, which may not strictly increment by 1 for payments made in - //older versions of lnd. + // The creation index of this payment. Each payment can be uniquely identified + // by this index, which may not strictly increment by 1 for payments made in + // older versions of lnd. PaymentIndex uint64 `protobuf:"varint,15,opt,name=payment_index,json=paymentIndex,proto3" json:"payment_index,omitempty"` FailureReason PaymentFailureReason `protobuf:"varint,16,opt,name=failure_reason,json=failureReason,proto3,enum=lnrpc.PaymentFailureReason" json:"failure_reason,omitempty"` } @@ -12721,9 +12506,8 @@ type HTLCAttempt struct { Route *Route `protobuf:"bytes,2,opt,name=route,proto3" json:"route,omitempty"` // The time in UNIX nanoseconds at which this HTLC was sent. AttemptTimeNs int64 `protobuf:"varint,3,opt,name=attempt_time_ns,json=attemptTimeNs,proto3" json:"attempt_time_ns,omitempty"` - // - //The time in UNIX nanoseconds at which this HTLC was settled or failed. - //This value will not be set if the HTLC is still IN_FLIGHT. + // The time in UNIX nanoseconds at which this HTLC was settled or failed. + // This value will not be set if the HTLC is still IN_FLIGHT. ResolveTimeNs int64 `protobuf:"varint,4,opt,name=resolve_time_ns,json=resolveTimeNs,proto3" json:"resolve_time_ns,omitempty"` // Detailed htlc failure info. Failure *Failure `protobuf:"bytes,5,opt,name=failure,proto3" json:"failure,omitempty"` @@ -12817,31 +12601,27 @@ type ListPaymentsRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //If true, then return payments that have not yet fully completed. This means - //that pending payments, as well as failed payments will show up if this - //field is set to true. This flag doesn't change the meaning of the indices, - //which are tied to individual payments. + // If true, then return payments that have not yet fully completed. This means + // that pending payments, as well as failed payments will show up if this + // field is set to true. This flag doesn't change the meaning of the indices, + // which are tied to individual payments. IncludeIncomplete bool `protobuf:"varint,1,opt,name=include_incomplete,json=includeIncomplete,proto3" json:"include_incomplete,omitempty"` - // - //The index of a payment that will be used as either the start or end of a - //query to determine which payments should be returned in the response. The - //index_offset is exclusive. In the case of a zero index_offset, the query - //will start with the oldest payment when paginating forwards, or will end - //with the most recent payment when paginating backwards. + // The index of a payment that will be used as either the start or end of a + // query to determine which payments should be returned in the response. The + // index_offset is exclusive. In the case of a zero index_offset, the query + // will start with the oldest payment when paginating forwards, or will end + // with the most recent payment when paginating backwards. IndexOffset uint64 `protobuf:"varint,2,opt,name=index_offset,json=indexOffset,proto3" json:"index_offset,omitempty"` // The maximal number of payments returned in the response to this query. MaxPayments uint64 `protobuf:"varint,3,opt,name=max_payments,json=maxPayments,proto3" json:"max_payments,omitempty"` - // - //If set, the payments returned will result from seeking backwards from the - //specified index offset. This can be used to paginate backwards. The order - //of the returned payments is always oldest first (ascending index order). + // If set, the payments returned will result from seeking backwards from the + // specified index offset. This can be used to paginate backwards. The order + // of the returned payments is always oldest first (ascending index order). Reversed bool `protobuf:"varint,4,opt,name=reversed,proto3" json:"reversed,omitempty"` - // - //If set, all payments (complete and incomplete, independent of the - //max_payments parameter) will be counted. Note that setting this to true will - //increase the run time of the call significantly on systems that have a lot - //of payments, as all of them have to be iterated through to be counted. + // If set, all payments (complete and incomplete, independent of the + // max_payments parameter) will be counted. Note that setting this to true will + // increase the run time of the call significantly on systems that have a lot + // of payments, as all of them have to be iterated through to be counted. CountTotalPayments bool `protobuf:"varint,5,opt,name=count_total_payments,json=countTotalPayments,proto3" json:"count_total_payments,omitempty"` } @@ -12919,19 +12699,16 @@ type ListPaymentsResponse struct { // The list of payments Payments []*Payment `protobuf:"bytes,1,rep,name=payments,proto3" json:"payments,omitempty"` - // - //The index of the first item in the set of returned payments. This can be - //used as the index_offset to continue seeking backwards in the next request. + // The index of the first item in the set of returned payments. This can be + // used as the index_offset to continue seeking backwards in the next request. FirstIndexOffset uint64 `protobuf:"varint,2,opt,name=first_index_offset,json=firstIndexOffset,proto3" json:"first_index_offset,omitempty"` - // - //The index of the last item in the set of returned payments. This can be used - //as the index_offset to continue seeking forwards in the next request. + // The index of the last item in the set of returned payments. This can be used + // as the index_offset to continue seeking forwards in the next request. LastIndexOffset uint64 `protobuf:"varint,3,opt,name=last_index_offset,json=lastIndexOffset,proto3" json:"last_index_offset,omitempty"` - // - //Will only be set if count_total_payments in the request was set. Represents - //the total number of payments (complete and incomplete, independent of the - //number of payments requested in the query) currently present in the payments - //database. + // Will only be set if count_total_payments in the request was set. Represents + // the total number of payments (complete and incomplete, independent of the + // number of payments requested in the query) currently present in the payments + // database. TotalNumPayments uint64 `protobuf:"varint,4,opt,name=total_num_payments,json=totalNumPayments,proto3" json:"total_num_payments,omitempty"` } @@ -13002,8 +12779,7 @@ type DeletePaymentRequest struct { // Payment hash to delete. PaymentHash []byte `protobuf:"bytes,1,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"` - // - //Only delete failed HTLCs from the payment, not the payment itself. + // Only delete failed HTLCs from the payment, not the payment itself. FailedHtlcsOnly bool `protobuf:"varint,2,opt,name=failed_htlcs_only,json=failedHtlcsOnly,proto3" json:"failed_htlcs_only,omitempty"` } @@ -13060,8 +12836,7 @@ type DeleteAllPaymentsRequest struct { // Only delete failed payments. FailedPaymentsOnly bool `protobuf:"varint,1,opt,name=failed_payments_only,json=failedPaymentsOnly,proto3" json:"failed_payments_only,omitempty"` - // - //Only delete failed HTLCs from payments, not the payment itself. + // Only delete failed HTLCs from payments, not the payment itself. FailedHtlcsOnly bool `protobuf:"varint,2,opt,name=failed_htlcs_only,json=failedHtlcsOnly,proto3" json:"failed_htlcs_only,omitempty"` } @@ -13194,10 +12969,9 @@ type AbandonChannelRequest struct { ChannelPoint *ChannelPoint `protobuf:"bytes,1,opt,name=channel_point,json=channelPoint,proto3" json:"channel_point,omitempty"` PendingFundingShimOnly bool `protobuf:"varint,2,opt,name=pending_funding_shim_only,json=pendingFundingShimOnly,proto3" json:"pending_funding_shim_only,omitempty"` - // - //Override the requirement for being in dev mode by setting this to true and - //confirming the user knows what they are doing and this is a potential foot - //gun to lose funds if used on active channels. + // Override the requirement for being in dev mode by setting this to true and + // confirming the user knows what they are doing and this is a potential foot + // gun to lose funds if used on active channels. IKnowWhatIAmDoing bool `protobuf:"varint,3,opt,name=i_know_what_i_am_doing,json=iKnowWhatIAmDoing,proto3" json:"i_know_what_i_am_doing,omitempty"` } @@ -13857,6 +13631,7 @@ type PolicyUpdateRequest struct { unknownFields protoimpl.UnknownFields // Types that are assignable to Scope: + // // *PolicyUpdateRequest_Global // *PolicyUpdateRequest_ChanPoint Scope isPolicyUpdateRequest_Scope `protobuf_oneof:"scope"` @@ -14445,14 +14220,12 @@ type ChannelBackup struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //Identifies the channel that this backup belongs to. + // Identifies the channel that this backup belongs to. ChanPoint *ChannelPoint `protobuf:"bytes,1,opt,name=chan_point,json=chanPoint,proto3" json:"chan_point,omitempty"` - // - //Is an encrypted single-chan backup. this can be passed to - //RestoreChannelBackups, or the WalletUnlocker Init and Unlock methods in - //order to trigger the recovery protocol. When using REST, this field must be - //encoded as base64. + // Is an encrypted single-chan backup. this can be passed to + // RestoreChannelBackups, or the WalletUnlocker Init and Unlock methods in + // order to trigger the recovery protocol. When using REST, this field must be + // encoded as base64. ChanBackup []byte `protobuf:"bytes,2,opt,name=chan_backup,json=chanBackup,proto3" json:"chan_backup,omitempty"` } @@ -14507,14 +14280,12 @@ type MultiChanBackup struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //Is the set of all channels that are included in this multi-channel backup. + // Is the set of all channels that are included in this multi-channel backup. ChanPoints []*ChannelPoint `protobuf:"bytes,1,rep,name=chan_points,json=chanPoints,proto3" json:"chan_points,omitempty"` - // - //A single encrypted blob containing all the static channel backups of the - //channel listed above. This can be stored as a single file or blob, and - //safely be replaced with any prior/future versions. When using REST, this - //field must be encoded as base64. + // A single encrypted blob containing all the static channel backups of the + // channel listed above. This can be stored as a single file or blob, and + // safely be replaced with any prior/future versions. When using REST, this + // field must be encoded as base64. MultiChanBackup []byte `protobuf:"bytes,2,opt,name=multi_chan_backup,json=multiChanBackup,proto3" json:"multi_chan_backup,omitempty"` } @@ -14607,13 +14378,11 @@ type ChanBackupSnapshot struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The set of new channels that have been added since the last channel backup - //snapshot was requested. + // The set of new channels that have been added since the last channel backup + // snapshot was requested. SingleChanBackups *ChannelBackups `protobuf:"bytes,1,opt,name=single_chan_backups,json=singleChanBackups,proto3" json:"single_chan_backups,omitempty"` - // - //A multi-channel backup that covers all open channels currently known to - //lnd. + // A multi-channel backup that covers all open channels currently known to + // lnd. MultiChanBackup *MultiChanBackup `protobuf:"bytes,2,opt,name=multi_chan_backup,json=multiChanBackup,proto3" json:"multi_chan_backup,omitempty"` } @@ -14668,8 +14437,7 @@ type ChannelBackups struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //A set of single-chan static channel backups. + // A set of single-chan static channel backups. ChanBackups []*ChannelBackup `protobuf:"bytes,1,rep,name=chan_backups,json=chanBackups,proto3" json:"chan_backups,omitempty"` } @@ -14718,6 +14486,7 @@ type RestoreChanBackupRequest struct { unknownFields protoimpl.UnknownFields // Types that are assignable to Backup: + // // *RestoreChanBackupRequest_ChanBackups // *RestoreChanBackupRequest_MultiChanBackup Backup isRestoreChanBackupRequest_Backup `protobuf_oneof:"backup"` @@ -14781,15 +14550,13 @@ type isRestoreChanBackupRequest_Backup interface { } type RestoreChanBackupRequest_ChanBackups struct { - // - //The channels to restore as a list of channel/backup pairs. + // The channels to restore as a list of channel/backup pairs. ChanBackups *ChannelBackups `protobuf:"bytes,1,opt,name=chan_backups,json=chanBackups,proto3,oneof"` } type RestoreChanBackupRequest_MultiChanBackup struct { - // - //The channels to restore in the packed multi backup format. When using - //REST, this field must be encoded as base64. + // The channels to restore in the packed multi backup format. When using + // REST, this field must be encoded as base64. MultiChanBackup []byte `protobuf:"bytes,2,opt,name=multi_chan_backup,json=multiChanBackup,proto3,oneof"` } @@ -14977,9 +14744,8 @@ type BakeMacaroonRequest struct { Permissions []*MacaroonPermission `protobuf:"bytes,1,rep,name=permissions,proto3" json:"permissions,omitempty"` // The root key ID used to create the macaroon, must be a positive integer. RootKeyId uint64 `protobuf:"varint,2,opt,name=root_key_id,json=rootKeyId,proto3" json:"root_key_id,omitempty"` - // - //Informs the RPC on whether to allow external permissions that LND is not - //aware of. + // Informs the RPC on whether to allow external permissions that LND is not + // aware of. AllowExternalPermissions bool `protobuf:"varint,3,opt,name=allow_external_permissions,json=allowExternalPermissions,proto3" json:"allow_external_permissions,omitempty"` } @@ -15357,9 +15123,8 @@ type ListPermissionsResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //A map between all RPC method URIs and their required macaroon permissions to - //access them. + // A map between all RPC method URIs and their required macaroon permissions to + // access them. MethodPermissions map[string]*MacaroonPermissionList `protobuf:"bytes,1,rep,name=method_permissions,json=methodPermissions,proto3" json:"method_permissions,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } @@ -15419,9 +15184,8 @@ type Failure struct { CltvExpiry uint32 `protobuf:"varint,6,opt,name=cltv_expiry,json=cltvExpiry,proto3" json:"cltv_expiry,omitempty"` // A failure type-dependent flags value. Flags uint32 `protobuf:"varint,7,opt,name=flags,proto3" json:"flags,omitempty"` - // - //The position in the path of the intermediate or final node that generated - //the failure message. Position zero is the sender node. + // The position in the path of the intermediate or final node that generated + // the failure message. Position zero is the sender node. FailureSourceIndex uint32 `protobuf:"varint,8,opt,name=failure_source_index,json=failureSourceIndex,proto3" json:"failure_source_index,omitempty"` // A failure type-dependent block height. Height uint32 `protobuf:"varint,9,opt,name=height,proto3" json:"height,omitempty"` @@ -15520,62 +15284,50 @@ type ChannelUpdate struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The signature that validates the announced data and proves the ownership - //of node id. + // The signature that validates the announced data and proves the ownership + // of node id. Signature []byte `protobuf:"bytes,1,opt,name=signature,proto3" json:"signature,omitempty"` - // - //The target chain that this channel was opened within. This value - //should be the genesis hash of the target chain. Along with the short - //channel ID, this uniquely identifies the channel globally in a - //blockchain. + // The target chain that this channel was opened within. This value + // should be the genesis hash of the target chain. Along with the short + // channel ID, this uniquely identifies the channel globally in a + // blockchain. ChainHash []byte `protobuf:"bytes,2,opt,name=chain_hash,json=chainHash,proto3" json:"chain_hash,omitempty"` - // - //The unique description of the funding transaction. + // The unique description of the funding transaction. ChanId uint64 `protobuf:"varint,3,opt,name=chan_id,json=chanId,proto3" json:"chan_id,omitempty"` - // - //A timestamp that allows ordering in the case of multiple announcements. - //We should ignore the message if timestamp is not greater than the - //last-received. + // A timestamp that allows ordering in the case of multiple announcements. + // We should ignore the message if timestamp is not greater than the + // last-received. Timestamp uint32 `protobuf:"varint,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"` - // - //The bitfield that describes whether optional fields are present in this - //update. Currently, the least-significant bit must be set to 1 if the - //optional field MaxHtlc is present. + // The bitfield that describes whether optional fields are present in this + // update. Currently, the least-significant bit must be set to 1 if the + // optional field MaxHtlc is present. MessageFlags uint32 `protobuf:"varint,10,opt,name=message_flags,json=messageFlags,proto3" json:"message_flags,omitempty"` - // - //The bitfield that describes additional meta-data concerning how the - //update is to be interpreted. Currently, the least-significant bit must be - //set to 0 if the creating node corresponds to the first node in the - //previously sent channel announcement and 1 otherwise. If the second bit - //is set, then the channel is set to be disabled. + // The bitfield that describes additional meta-data concerning how the + // update is to be interpreted. Currently, the least-significant bit must be + // set to 0 if the creating node corresponds to the first node in the + // previously sent channel announcement and 1 otherwise. If the second bit + // is set, then the channel is set to be disabled. ChannelFlags uint32 `protobuf:"varint,5,opt,name=channel_flags,json=channelFlags,proto3" json:"channel_flags,omitempty"` - // - //The minimum number of blocks this node requires to be added to the expiry - //of HTLCs. This is a security parameter determined by the node operator. - //This value represents the required gap between the time locks of the - //incoming and outgoing HTLC's set to this node. + // The minimum number of blocks this node requires to be added to the expiry + // of HTLCs. This is a security parameter determined by the node operator. + // This value represents the required gap between the time locks of the + // incoming and outgoing HTLC's set to this node. TimeLockDelta uint32 `protobuf:"varint,6,opt,name=time_lock_delta,json=timeLockDelta,proto3" json:"time_lock_delta,omitempty"` - // - //The minimum HTLC value which will be accepted. + // The minimum HTLC value which will be accepted. HtlcMinimumMsat uint64 `protobuf:"varint,7,opt,name=htlc_minimum_msat,json=htlcMinimumMsat,proto3" json:"htlc_minimum_msat,omitempty"` - // - //The base fee that must be used for incoming HTLC's to this particular - //channel. This value will be tacked onto the required for a payment - //independent of the size of the payment. + // The base fee that must be used for incoming HTLC's to this particular + // channel. This value will be tacked onto the required for a payment + // independent of the size of the payment. BaseFee uint32 `protobuf:"varint,8,opt,name=base_fee,json=baseFee,proto3" json:"base_fee,omitempty"` - // - //The fee rate that will be charged per millionth of a satoshi. + // The fee rate that will be charged per millionth of a satoshi. FeeRate uint32 `protobuf:"varint,9,opt,name=fee_rate,json=feeRate,proto3" json:"fee_rate,omitempty"` - // - //The maximum HTLC value which will be accepted. + // The maximum HTLC value which will be accepted. HtlcMaximumMsat uint64 `protobuf:"varint,11,opt,name=htlc_maximum_msat,json=htlcMaximumMsat,proto3" json:"htlc_maximum_msat,omitempty"` - // - //The set of data that was appended to this message, some of which we may - //not actually know how to iterate or parse. By holding onto this data, we - //ensure that we're able to properly validate the set of signatures that - //cover these new fields, and ensure we're able to make upgrades to the - //network in a forwards compatible manner. + // The set of data that was appended to this message, some of which we may + // not actually know how to iterate or parse. By holding onto this data, we + // ensure that we're able to properly validate the set of signatures that + // cover these new fields, and ensure we're able to make upgrades to the + // network in a forwards compatible manner. ExtraOpaqueData []byte `protobuf:"bytes,12,opt,name=extra_opaque_data,json=extraOpaqueData,proto3" json:"extra_opaque_data,omitempty"` } @@ -15928,43 +15680,39 @@ type RPCMiddlewareRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The unique ID of the intercepted original gRPC request. Useful for mapping - //request to response when implementing full duplex message interception. For - //streaming requests, this will be the same ID for all incoming and outgoing - //middleware intercept messages of the _same_ stream. + // The unique ID of the intercepted original gRPC request. Useful for mapping + // request to response when implementing full duplex message interception. For + // streaming requests, this will be the same ID for all incoming and outgoing + // middleware intercept messages of the _same_ stream. RequestId uint64 `protobuf:"varint,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"` - // - //The raw bytes of the complete macaroon as sent by the gRPC client in the - //original request. This might be empty for a request that doesn't require - //macaroons such as the wallet unlocker RPCs. + // The raw bytes of the complete macaroon as sent by the gRPC client in the + // original request. This might be empty for a request that doesn't require + // macaroons such as the wallet unlocker RPCs. RawMacaroon []byte `protobuf:"bytes,2,opt,name=raw_macaroon,json=rawMacaroon,proto3" json:"raw_macaroon,omitempty"` - // - //The parsed condition of the macaroon's custom caveat for convenient access. - //This field only contains the value of the custom caveat that the handling - //middleware has registered itself for. The condition _must_ be validated for - //messages of intercept_type stream_auth and request! + // The parsed condition of the macaroon's custom caveat for convenient access. + // This field only contains the value of the custom caveat that the handling + // middleware has registered itself for. The condition _must_ be validated for + // messages of intercept_type stream_auth and request! CustomCaveatCondition string `protobuf:"bytes,3,opt,name=custom_caveat_condition,json=customCaveatCondition,proto3" json:"custom_caveat_condition,omitempty"` - // - //There are three types of messages that will be sent to the middleware for - //inspection and approval: Stream authentication, request and response - //interception. The first two can only be accepted (=forward to main RPC - //server) or denied (=return error to client). Intercepted responses can also - //be replaced/overwritten. + // There are three types of messages that will be sent to the middleware for + // inspection and approval: Stream authentication, request and response + // interception. The first two can only be accepted (=forward to main RPC + // server) or denied (=return error to client). Intercepted responses can also + // be replaced/overwritten. // // Types that are assignable to InterceptType: + // // *RPCMiddlewareRequest_StreamAuth // *RPCMiddlewareRequest_Request // *RPCMiddlewareRequest_Response // *RPCMiddlewareRequest_RegComplete InterceptType isRPCMiddlewareRequest_InterceptType `protobuf_oneof:"intercept_type"` - // - //The unique message ID of this middleware intercept message. There can be - //multiple middleware intercept messages per single gRPC request (one for the - //incoming request and one for the outgoing response) or gRPC stream (one for - //each incoming message and one for each outgoing response). This message ID - //must be referenced when responding (accepting/rejecting/modifying) to an - //intercept message. + // The unique message ID of this middleware intercept message. There can be + // multiple middleware intercept messages per single gRPC request (one for the + // incoming request and one for the outgoing response) or gRPC stream (one for + // each incoming message and one for each outgoing response). This message ID + // must be referenced when responding (accepting/rejecting/modifying) to an + // intercept message. MsgId uint64 `protobuf:"varint,7,opt,name=msg_id,json=msgId,proto3" json:"msg_id,omitempty"` } @@ -16068,42 +15816,38 @@ type isRPCMiddlewareRequest_InterceptType interface { } type RPCMiddlewareRequest_StreamAuth struct { - // - //Intercept stream authentication: each new streaming RPC call that is - //initiated against lnd and contains the middleware's custom macaroon - //caveat can be approved or denied based upon the macaroon in the stream - //header. This message will only be sent for streaming RPCs, unary RPCs - //must handle the macaroon authentication in the request interception to - //avoid an additional message round trip between lnd and the middleware. + // Intercept stream authentication: each new streaming RPC call that is + // initiated against lnd and contains the middleware's custom macaroon + // caveat can be approved or denied based upon the macaroon in the stream + // header. This message will only be sent for streaming RPCs, unary RPCs + // must handle the macaroon authentication in the request interception to + // avoid an additional message round trip between lnd and the middleware. StreamAuth *StreamAuth `protobuf:"bytes,4,opt,name=stream_auth,json=streamAuth,proto3,oneof"` } type RPCMiddlewareRequest_Request struct { - // - //Intercept incoming gRPC client request message: all incoming messages, - //both on streaming and unary RPCs, are forwarded to the middleware for - //inspection. For unary RPC messages the middleware is also expected to - //validate the custom macaroon caveat of the request. + // Intercept incoming gRPC client request message: all incoming messages, + // both on streaming and unary RPCs, are forwarded to the middleware for + // inspection. For unary RPC messages the middleware is also expected to + // validate the custom macaroon caveat of the request. Request *RPCMessage `protobuf:"bytes,5,opt,name=request,proto3,oneof"` } type RPCMiddlewareRequest_Response struct { - // - //Intercept outgoing gRPC response message: all outgoing messages, both on - //streaming and unary RPCs, are forwarded to the middleware for inspection - //and amendment. The response in this message is the original response as - //it was generated by the main RPC server. It can either be accepted - //(=forwarded to the client), replaced/overwritten with a new message of - //the same type, or replaced by an error message. + // Intercept outgoing gRPC response message: all outgoing messages, both on + // streaming and unary RPCs, are forwarded to the middleware for inspection + // and amendment. The response in this message is the original response as + // it was generated by the main RPC server. It can either be accepted + // (=forwarded to the client), replaced/overwritten with a new message of + // the same type, or replaced by an error message. Response *RPCMessage `protobuf:"bytes,6,opt,name=response,proto3,oneof"` } type RPCMiddlewareRequest_RegComplete struct { - // - //This is used to indicate to the client that the server has successfully - //registered the interceptor. This is only used in the very first message - //that the server sends to the client after the client sends the server - //the middleware registration message. + // This is used to indicate to the client that the server has successfully + // registered the interceptor. This is only used in the very first message + // that the server sends to the client after the client sends the server + // the middleware registration message. RegComplete bool `protobuf:"varint,8,opt,name=reg_complete,json=regComplete,proto3,oneof"` } @@ -16120,10 +15864,9 @@ type StreamAuth struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The full URI (in the format /./MethodName, for - //example /lnrpc.Lightning/GetInfo) of the streaming RPC method that was just - //established. + // The full URI (in the format /./MethodName, for + // example /lnrpc.Lightning/GetInfo) of the streaming RPC method that was just + // established. MethodFullUri string `protobuf:"bytes,1,opt,name=method_full_uri,json=methodFullUri,proto3" json:"method_full_uri,omitempty"` } @@ -16171,27 +15914,22 @@ type RPCMessage struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The full URI (in the format /./MethodName, for - //example /lnrpc.Lightning/GetInfo) of the RPC method the message was sent - //to/from. + // The full URI (in the format /./MethodName, for + // example /lnrpc.Lightning/GetInfo) of the RPC method the message was sent + // to/from. MethodFullUri string `protobuf:"bytes,1,opt,name=method_full_uri,json=methodFullUri,proto3" json:"method_full_uri,omitempty"` - // - //Indicates whether the message was sent over a streaming RPC method or not. + // Indicates whether the message was sent over a streaming RPC method or not. StreamRpc bool `protobuf:"varint,2,opt,name=stream_rpc,json=streamRpc,proto3" json:"stream_rpc,omitempty"` - // - //The full canonical gRPC name of the message type (in the format - //.TypeName, for example lnrpc.GetInfoRequest). In case of an - //error being returned from lnd, this simply contains the string "error". + // The full canonical gRPC name of the message type (in the format + // .TypeName, for example lnrpc.GetInfoRequest). In case of an + // error being returned from lnd, this simply contains the string "error". TypeName string `protobuf:"bytes,3,opt,name=type_name,json=typeName,proto3" json:"type_name,omitempty"` - // - //The full content of the gRPC message, serialized in the binary protobuf - //format. + // The full content of the gRPC message, serialized in the binary protobuf + // format. Serialized []byte `protobuf:"bytes,4,opt,name=serialized,proto3" json:"serialized,omitempty"` - // - //Indicates that the response from lnd was an error, not a gRPC response. If - //this is set to true then the type_name contains the string "error" and - //serialized contains the error string. + // Indicates that the response from lnd was an error, not a gRPC response. If + // this is set to true then the type_name contains the string "error" and + // serialized contains the error string. IsError bool `protobuf:"varint,5,opt,name=is_error,json=isError,proto3" json:"is_error,omitempty"` } @@ -16267,17 +16005,16 @@ type RPCMiddlewareResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The request message ID this response refers to. Must always be set when - //giving feedback to an intercept but is ignored for the initial registration - //message. + // The request message ID this response refers to. Must always be set when + // giving feedback to an intercept but is ignored for the initial registration + // message. RefMsgId uint64 `protobuf:"varint,1,opt,name=ref_msg_id,json=refMsgId,proto3" json:"ref_msg_id,omitempty"` - // - //The middleware can only send two types of messages to lnd: The initial - //registration message that identifies the middleware and after that only - //feedback messages to requests sent to the middleware. + // The middleware can only send two types of messages to lnd: The initial + // registration message that identifies the middleware and after that only + // feedback messages to requests sent to the middleware. // // Types that are assignable to MiddlewareMessage: + // // *RPCMiddlewareResponse_Register // *RPCMiddlewareResponse_Feedback MiddlewareMessage isRPCMiddlewareResponse_MiddlewareMessage `protobuf_oneof:"middleware_message"` @@ -16348,23 +16085,21 @@ type isRPCMiddlewareResponse_MiddlewareMessage interface { } type RPCMiddlewareResponse_Register struct { - // - //The registration message identifies the middleware that's being - //registered in lnd. The registration message must be sent immediately - //after initiating the RegisterRpcMiddleware stream, otherwise lnd will - //time out the attempt and terminate the request. NOTE: The middleware - //will only receive interception messages for requests that contain a - //macaroon with the custom caveat that the middleware declares it is - //responsible for handling in the registration message! As a security - //measure, _no_ middleware can intercept requests made with _unencumbered_ - //macaroons! + // The registration message identifies the middleware that's being + // registered in lnd. The registration message must be sent immediately + // after initiating the RegisterRpcMiddleware stream, otherwise lnd will + // time out the attempt and terminate the request. NOTE: The middleware + // will only receive interception messages for requests that contain a + // macaroon with the custom caveat that the middleware declares it is + // responsible for handling in the registration message! As a security + // measure, _no_ middleware can intercept requests made with _unencumbered_ + // macaroons! Register *MiddlewareRegistration `protobuf:"bytes,2,opt,name=register,proto3,oneof"` } type RPCMiddlewareResponse_Feedback struct { - // - //The middleware received an interception request and gives feedback to - //it. The request_id indicates what message the feedback refers to. + // The middleware received an interception request and gives feedback to + // it. The request_id indicates what message the feedback refers to. Feedback *InterceptFeedback `protobuf:"bytes,3,opt,name=feedback,proto3,oneof"` } @@ -16377,26 +16112,23 @@ type MiddlewareRegistration struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The name of the middleware to register. The name should be as informative - //as possible and is logged on registration. + // The name of the middleware to register. The name should be as informative + // as possible and is logged on registration. MiddlewareName string `protobuf:"bytes,1,opt,name=middleware_name,json=middlewareName,proto3" json:"middleware_name,omitempty"` - // - //The name of the custom macaroon caveat that this middleware is responsible - //for. Only requests/responses that contain a macaroon with the registered - //custom caveat are forwarded for interception to the middleware. The - //exception being the read-only mode: All requests/responses are forwarded to - //a middleware that requests read-only access but such a middleware won't be - //allowed to _alter_ responses. As a security measure, _no_ middleware can - //change responses to requests made with _unencumbered_ macaroons! - //NOTE: Cannot be used at the same time as read_only_mode. + // The name of the custom macaroon caveat that this middleware is responsible + // for. Only requests/responses that contain a macaroon with the registered + // custom caveat are forwarded for interception to the middleware. The + // exception being the read-only mode: All requests/responses are forwarded to + // a middleware that requests read-only access but such a middleware won't be + // allowed to _alter_ responses. As a security measure, _no_ middleware can + // change responses to requests made with _unencumbered_ macaroons! + // NOTE: Cannot be used at the same time as read_only_mode. CustomMacaroonCaveatName string `protobuf:"bytes,2,opt,name=custom_macaroon_caveat_name,json=customMacaroonCaveatName,proto3" json:"custom_macaroon_caveat_name,omitempty"` - // - //Instead of defining a custom macaroon caveat name a middleware can register - //itself for read-only access only. In that mode all requests/responses are - //forwarded to the middleware but the middleware isn't allowed to alter any of - //the responses. - //NOTE: Cannot be used at the same time as custom_macaroon_caveat_name. + // Instead of defining a custom macaroon caveat name a middleware can register + // itself for read-only access only. In that mode all requests/responses are + // forwarded to the middleware but the middleware isn't allowed to alter any of + // the responses. + // NOTE: Cannot be used at the same time as custom_macaroon_caveat_name. ReadOnlyMode bool `protobuf:"varint,3,opt,name=read_only_mode,json=readOnlyMode,proto3" json:"read_only_mode,omitempty"` } @@ -16458,21 +16190,18 @@ type InterceptFeedback struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The error to return to the user. If this is non-empty, the incoming gRPC - //stream/request is aborted and the error is returned to the gRPC client. If - //this value is empty, it means the middleware accepts the stream/request/ - //response and the processing of it can continue. + // The error to return to the user. If this is non-empty, the incoming gRPC + // stream/request is aborted and the error is returned to the gRPC client. If + // this value is empty, it means the middleware accepts the stream/request/ + // response and the processing of it can continue. Error string `protobuf:"bytes,1,opt,name=error,proto3" json:"error,omitempty"` - // - //A boolean indicating that the gRPC message should be replaced/overwritten. - //This boolean is needed because in protobuf an empty message is serialized as - //a 0-length or nil byte slice and we wouldn't be able to distinguish between - //an empty replacement message and the "don't replace anything" case. + // A boolean indicating that the gRPC message should be replaced/overwritten. + // This boolean is needed because in protobuf an empty message is serialized as + // a 0-length or nil byte slice and we wouldn't be able to distinguish between + // an empty replacement message and the "don't replace anything" case. ReplaceResponse bool `protobuf:"varint,2,opt,name=replace_response,json=replaceResponse,proto3" json:"replace_response,omitempty"` - // - //If the replace_response field is set to true, this field must contain the - //binary serialized gRPC message in the protobuf format. + // If the replace_response field is set to true, this field must contain the + // binary serialized gRPC message in the protobuf format. ReplacementSerialized []byte `protobuf:"bytes,3,opt,name=replacement_serialized,json=replacementSerialized,proto3" json:"replacement_serialized,omitempty"` } @@ -16542,9 +16271,8 @@ type PendingChannelsResponse_PendingChannel struct { // The minimum satoshis this node is required to reserve in its // balance. LocalChanReserveSat int64 `protobuf:"varint,6,opt,name=local_chan_reserve_sat,json=localChanReserveSat,proto3" json:"local_chan_reserve_sat,omitempty"` - // - //The minimum satoshis the other node is required to reserve in its - //balance. + // The minimum satoshis the other node is required to reserve in its + // balance. RemoteChanReserveSat int64 `protobuf:"varint,7,opt,name=remote_chan_reserve_sat,json=remoteChanReserveSat,proto3" json:"remote_chan_reserve_sat,omitempty"` // The party that initiated opening the channel. Initiator Initiator `protobuf:"varint,8,opt,name=initiator,proto3,enum=lnrpc.Initiator" json:"initiator,omitempty"` @@ -16681,19 +16409,17 @@ type PendingChannelsResponse_PendingOpenChannel struct { // The pending channel Channel *PendingChannelsResponse_PendingChannel `protobuf:"bytes,1,opt,name=channel,proto3" json:"channel,omitempty"` - // - //The amount calculated to be paid in fees for the current set of - //commitment transactions. The fee amount is persisted with the channel - //in order to allow the fee amount to be removed and recalculated with - //each channel state update, including updates that happen after a system - //restart. + // The amount calculated to be paid in fees for the current set of + // commitment transactions. The fee amount is persisted with the channel + // in order to allow the fee amount to be removed and recalculated with + // each channel state update, including updates that happen after a system + // restart. CommitFee int64 `protobuf:"varint,4,opt,name=commit_fee,json=commitFee,proto3" json:"commit_fee,omitempty"` // The weight of the commitment transaction CommitWeight int64 `protobuf:"varint,5,opt,name=commit_weight,json=commitWeight,proto3" json:"commit_weight,omitempty"` - // - //The required number of satoshis per kilo-weight that the requester will - //pay at all times, for both the funding transaction and commitment - //transaction. This value can later be updated once the channel is open. + // The required number of satoshis per kilo-weight that the requester will + // pay at all times, for both the funding transaction and commitment + // transaction. This value can later be updated once the channel is open. FeePerKw int64 `protobuf:"varint,6,opt,name=fee_per_kw,json=feePerKw,proto3" json:"fee_per_kw,omitempty"` } @@ -16766,9 +16492,8 @@ type PendingChannelsResponse_WaitingCloseChannel struct { Channel *PendingChannelsResponse_PendingChannel `protobuf:"bytes,1,opt,name=channel,proto3" json:"channel,omitempty"` // The balance in satoshis encumbered in this channel LimboBalance int64 `protobuf:"varint,2,opt,name=limbo_balance,json=limboBalance,proto3" json:"limbo_balance,omitempty"` - // - //A list of valid commitment transactions. Any of these can confirm at - //this point. + // A list of valid commitment transactions. Any of these can confirm at + // this point. Commitments *PendingChannelsResponse_Commitments `protobuf:"bytes,3,opt,name=commitments,proto3" json:"commitments,omitempty"` // The transaction id of the closing transaction ClosingTxid string `protobuf:"bytes,4,opt,name=closing_txid,json=closingTxid,proto3" json:"closing_txid,omitempty"` @@ -16845,17 +16570,14 @@ type PendingChannelsResponse_Commitments struct { RemoteTxid string `protobuf:"bytes,2,opt,name=remote_txid,json=remoteTxid,proto3" json:"remote_txid,omitempty"` // Hash of the remote pending version of the commitment tx. RemotePendingTxid string `protobuf:"bytes,3,opt,name=remote_pending_txid,json=remotePendingTxid,proto3" json:"remote_pending_txid,omitempty"` - // - //The amount in satoshis calculated to be paid in fees for the local - //commitment. + // The amount in satoshis calculated to be paid in fees for the local + // commitment. LocalCommitFeeSat uint64 `protobuf:"varint,4,opt,name=local_commit_fee_sat,json=localCommitFeeSat,proto3" json:"local_commit_fee_sat,omitempty"` - // - //The amount in satoshis calculated to be paid in fees for the remote - //commitment. + // The amount in satoshis calculated to be paid in fees for the remote + // commitment. RemoteCommitFeeSat uint64 `protobuf:"varint,5,opt,name=remote_commit_fee_sat,json=remoteCommitFeeSat,proto3" json:"remote_commit_fee_sat,omitempty"` - // - //The amount in satoshis calculated to be paid in fees for the remote - //pending commitment. + // The amount in satoshis calculated to be paid in fees for the remote + // pending commitment. RemotePendingCommitFeeSat uint64 `protobuf:"varint,6,opt,name=remote_pending_commit_fee_sat,json=remotePendingCommitFeeSat,proto3" json:"remote_pending_commit_fee_sat,omitempty"` } @@ -17003,10 +16725,9 @@ type PendingChannelsResponse_ForceClosedChannel struct { LimboBalance int64 `protobuf:"varint,3,opt,name=limbo_balance,json=limboBalance,proto3" json:"limbo_balance,omitempty"` // The height at which funds can be swept into the wallet MaturityHeight uint32 `protobuf:"varint,4,opt,name=maturity_height,json=maturityHeight,proto3" json:"maturity_height,omitempty"` - // - //Remaining # of blocks until the commitment output can be swept. - //Negative values indicate how many blocks have passed since becoming - //mature. + // Remaining # of blocks until the commitment output can be swept. + // Negative values indicate how many blocks have passed since becoming + // mature. BlocksTilMaturity int32 `protobuf:"varint,5,opt,name=blocks_til_maturity,json=blocksTilMaturity,proto3" json:"blocks_til_maturity,omitempty"` // The total value of funds successfully recovered from this channel RecoveredBalance int64 `protobuf:"varint,6,opt,name=recovered_balance,json=recoveredBalance,proto3" json:"recovered_balance,omitempty"` diff --git a/lnrpc/lightning_grpc.pb.go b/lnrpc/lightning_grpc.pb.go index c46661ded..6cba516bd 100644 --- a/lnrpc/lightning_grpc.pb.go +++ b/lnrpc/lightning_grpc.pb.go @@ -19,401 +19,384 @@ const _ = grpc.SupportPackageIsVersion7 // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type LightningClient interface { // lncli: `walletbalance` - //WalletBalance returns total unspent outputs(confirmed and unconfirmed), all - //confirmed unspent outputs and all unconfirmed unspent outputs under control - //of the wallet. + // WalletBalance returns total unspent outputs(confirmed and unconfirmed), all + // confirmed unspent outputs and all unconfirmed unspent outputs under control + // of the wallet. WalletBalance(ctx context.Context, in *WalletBalanceRequest, opts ...grpc.CallOption) (*WalletBalanceResponse, error) // 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. + // ChannelBalance returns a report on the total funds across all open channels, + // categorized in local/remote, pending local/remote and unsettled local/remote + // balances. ChannelBalance(ctx context.Context, in *ChannelBalanceRequest, opts ...grpc.CallOption) (*ChannelBalanceResponse, error) // lncli: `listchaintxns` - //GetTransactions returns a list describing all the known transactions - //relevant to the wallet. + // GetTransactions returns a list describing all the known transactions + // relevant to the wallet. GetTransactions(ctx context.Context, in *GetTransactionsRequest, opts ...grpc.CallOption) (*TransactionDetails, error) // lncli: `estimatefee` - //EstimateFee asks the chain backend to estimate the fee rate and total fees - //for a transaction that pays to multiple specified outputs. + // 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. + // 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. EstimateFee(ctx context.Context, in *EstimateFeeRequest, opts ...grpc.CallOption) (*EstimateFeeResponse, error) // 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. + // 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. SendCoins(ctx context.Context, in *SendCoinsRequest, opts ...grpc.CallOption) (*SendCoinsResponse, error) // lncli: `listunspent` - //Deprecated, use walletrpc.ListUnspent instead. + // 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. + // ListUnspent returns a list of all utxos spendable by the wallet with a + // number of confirmations between the specified minimum and maximum. ListUnspent(ctx context.Context, in *ListUnspentRequest, opts ...grpc.CallOption) (*ListUnspentResponse, error) - // - //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. + // 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. SubscribeTransactions(ctx context.Context, in *GetTransactionsRequest, opts ...grpc.CallOption) (Lightning_SubscribeTransactionsClient, error) // 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. + // 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. SendMany(ctx context.Context, in *SendManyRequest, opts ...grpc.CallOption) (*SendManyResponse, error) // lncli: `newaddress` - //NewAddress creates a new address under control of the local wallet. + // NewAddress creates a new address under control of the local wallet. NewAddress(ctx context.Context, in *NewAddressRequest, opts ...grpc.CallOption) (*NewAddressResponse, error) // 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. + // 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. SignMessage(ctx context.Context, in *SignMessageRequest, opts ...grpc.CallOption) (*SignMessageResponse, error) // 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. + // 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. VerifyMessage(ctx context.Context, in *VerifyMessageRequest, opts ...grpc.CallOption) (*VerifyMessageResponse, error) // 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. + // 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. ConnectPeer(ctx context.Context, in *ConnectPeerRequest, opts ...grpc.CallOption) (*ConnectPeerResponse, error) // 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. + // 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. DisconnectPeer(ctx context.Context, in *DisconnectPeerRequest, opts ...grpc.CallOption) (*DisconnectPeerResponse, error) // lncli: `listpeers` - //ListPeers returns a verbose listing of all currently active peers. + // ListPeers returns a verbose listing of all currently active peers. ListPeers(ctx context.Context, in *ListPeersRequest, opts ...grpc.CallOption) (*ListPeersResponse, error) - // - //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. + // 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. SubscribePeerEvents(ctx context.Context, in *PeerEventSubscription, opts ...grpc.CallOption) (Lightning_SubscribePeerEventsClient, error) // 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. + // 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. GetInfo(ctx context.Context, in *GetInfoRequest, opts ...grpc.CallOption) (*GetInfoResponse, error) - //* 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. + // * 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. GetRecoveryInfo(ctx context.Context, in *GetRecoveryInfoRequest, opts ...grpc.CallOption) (*GetRecoveryInfoResponse, error) // 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. + // 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. PendingChannels(ctx context.Context, in *PendingChannelsRequest, opts ...grpc.CallOption) (*PendingChannelsResponse, error) // lncli: `listchannels` - //ListChannels returns a description of all the open channels that this node - //is a participant in. + // ListChannels returns a description of all the open channels that this node + // is a participant in. ListChannels(ctx context.Context, in *ListChannelsRequest, opts ...grpc.CallOption) (*ListChannelsResponse, error) - // - //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. + // 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. SubscribeChannelEvents(ctx context.Context, in *ChannelEventSubscription, opts ...grpc.CallOption) (Lightning_SubscribeChannelEventsClient, error) // lncli: `closedchannels` - //ClosedChannels returns a description of all the closed channels that - //this node was a participant in. + // ClosedChannels returns a description of all the closed channels that + // this node was a participant in. ClosedChannels(ctx context.Context, in *ClosedChannelsRequest, opts ...grpc.CallOption) (*ClosedChannelsResponse, error) - // - //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. + // 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. OpenChannelSync(ctx context.Context, in *OpenChannelRequest, opts ...grpc.CallOption) (*ChannelPoint, error) // 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. + // 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. OpenChannel(ctx context.Context, in *OpenChannelRequest, opts ...grpc.CallOption) (Lightning_OpenChannelClient, error) // lncli: `batchopenchannel` - //BatchOpenChannel attempts to open multiple single-funded channels in a - //single transaction in an atomic way. This means either all channel open - //requests succeed at once or all attempts are aborted if any of them fail. - //This is the safer variant of using PSBTs to manually fund a batch of - //channels through the OpenChannel RPC. + // BatchOpenChannel attempts to open multiple single-funded channels in a + // single transaction in an atomic way. This means either all channel open + // requests succeed at once or all attempts are aborted if any of them fail. + // This is the safer variant of using PSBTs to manually fund a batch of + // channels through the OpenChannel RPC. BatchOpenChannel(ctx context.Context, in *BatchOpenChannelRequest, opts ...grpc.CallOption) (*BatchOpenChannelResponse, error) - // - //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. + // 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. FundingStateStep(ctx context.Context, in *FundingTransitionMsg, opts ...grpc.CallOption) (*FundingStateStepResp, error) - // - //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. + // 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. ChannelAcceptor(ctx context.Context, opts ...grpc.CallOption) (Lightning_ChannelAcceptorClient, error) // 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. + // 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. CloseChannel(ctx context.Context, in *CloseChannelRequest, opts ...grpc.CallOption) (Lightning_CloseChannelClient, error) // 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. + // 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. AbandonChannel(ctx context.Context, in *AbandonChannelRequest, opts ...grpc.CallOption) (*AbandonChannelResponse, error) // Deprecated: Do not use. // 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, 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. SendPayment(ctx context.Context, opts ...grpc.CallOption) (Lightning_SendPaymentClient, error) - // - //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. + // 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. SendPaymentSync(ctx context.Context, in *SendRequest, opts ...grpc.CallOption) (*SendResponse, error) // Deprecated: Do not use. // 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, 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. SendToRoute(ctx context.Context, opts ...grpc.CallOption) (Lightning_SendToRouteClient, error) - // - //SendToRouteSync is a synchronous version of SendToRoute. It Will block - //until the payment either fails or succeeds. + // SendToRouteSync is a synchronous version of SendToRoute. It Will block + // until the payment either fails or succeeds. SendToRouteSync(ctx context.Context, in *SendToRouteRequest, opts ...grpc.CallOption) (*SendResponse, error) // 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. + // 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. AddInvoice(ctx context.Context, in *Invoice, opts ...grpc.CallOption) (*AddInvoiceResponse, error) // 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. + // 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. ListInvoices(ctx context.Context, in *ListInvoiceRequest, opts ...grpc.CallOption) (*ListInvoiceResponse, error) // 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. + // 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. LookupInvoice(ctx context.Context, in *PaymentHash, opts ...grpc.CallOption) (*Invoice, error) - // - //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. + // 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. SubscribeInvoices(ctx context.Context, in *InvoiceSubscription, opts ...grpc.CallOption) (Lightning_SubscribeInvoicesClient, error) // 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. + // DecodePayReq takes an encoded payment request string and attempts to decode + // it, returning a full description of the conditions encoded within the + // payment request. DecodePayReq(ctx context.Context, in *PayReqString, opts ...grpc.CallOption) (*PayReq, error) // lncli: `listpayments` - //ListPayments returns a list of all outgoing payments. + // ListPayments returns a list of all outgoing payments. ListPayments(ctx context.Context, in *ListPaymentsRequest, opts ...grpc.CallOption) (*ListPaymentsResponse, error) - // - //DeletePayment deletes an outgoing payment from DB. Note that it will not - //attempt to delete an In-Flight payment, since that would be unsafe. + // DeletePayment deletes an outgoing payment from DB. Note that it will not + // attempt to delete an In-Flight payment, since that would be unsafe. DeletePayment(ctx context.Context, in *DeletePaymentRequest, opts ...grpc.CallOption) (*DeletePaymentResponse, error) - // - //DeleteAllPayments deletes all outgoing payments from DB. Note that it will - //not attempt to delete In-Flight payments, since that would be unsafe. + // DeleteAllPayments deletes all outgoing payments from DB. Note that it will + // not attempt to delete In-Flight payments, since that would be unsafe. DeleteAllPayments(ctx context.Context, in *DeleteAllPaymentsRequest, opts ...grpc.CallOption) (*DeleteAllPaymentsResponse, error) // 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. + // 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. DescribeGraph(ctx context.Context, in *ChannelGraphRequest, opts ...grpc.CallOption) (*ChannelGraph, error) // lncli: `getnodemetrics` - //GetNodeMetrics returns node metrics calculated from the graph. Currently - //the only supported metric is betweenness centrality of individual nodes. + // GetNodeMetrics returns node metrics calculated from the graph. Currently + // the only supported metric is betweenness centrality of individual nodes. GetNodeMetrics(ctx context.Context, in *NodeMetricsRequest, opts ...grpc.CallOption) (*NodeMetricsResponse, error) // 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. + // 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. GetChanInfo(ctx context.Context, in *ChanInfoRequest, opts ...grpc.CallOption) (*ChannelEdge, error) // lncli: `getnodeinfo` - //GetNodeInfo returns the latest advertised, aggregated, and authenticated - //channel information for the specified node identified by its public key. + // GetNodeInfo returns the latest advertised, aggregated, and authenticated + // channel information for the specified node identified by its public key. GetNodeInfo(ctx context.Context, in *NodeInfoRequest, opts ...grpc.CallOption) (*NodeInfo, error) // 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. + // 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. + // 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. QueryRoutes(ctx context.Context, in *QueryRoutesRequest, opts ...grpc.CallOption) (*QueryRoutesResponse, error) // lncli: `getnetworkinfo` - //GetNetworkInfo returns some basic stats about the known channel graph from - //the point of view of the node. + // GetNetworkInfo returns some basic stats about the known channel graph from + // the point of view of the node. GetNetworkInfo(ctx context.Context, in *NetworkInfoRequest, opts ...grpc.CallOption) (*NetworkInfo, error) // lncli: `stop` - //StopDaemon will send a shutdown request to the interrupt handler, triggering - //a graceful shutdown of the daemon. + // StopDaemon will send a shutdown request to the interrupt handler, triggering + // a graceful shutdown of the daemon. StopDaemon(ctx context.Context, in *StopRequest, opts ...grpc.CallOption) (*StopResponse, error) - // - //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. + // 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. SubscribeChannelGraph(ctx context.Context, in *GraphTopologySubscription, opts ...grpc.CallOption) (Lightning_SubscribeChannelGraphClient, error) // 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. + // 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. DebugLevel(ctx context.Context, in *DebugLevelRequest, opts ...grpc.CallOption) (*DebugLevelResponse, error) // lncli: `feereport` - //FeeReport allows the caller to obtain a report detailing the current fee - //schedule enforced by the node globally for each channel. + // FeeReport allows the caller to obtain a report detailing the current fee + // schedule enforced by the node globally for each channel. FeeReport(ctx context.Context, in *FeeReportRequest, opts ...grpc.CallOption) (*FeeReportResponse, error) // lncli: `updatechanpolicy` - //UpdateChannelPolicy allows the caller to update the fee schedule and - //channel policies for all channels globally, or a particular channel. + // UpdateChannelPolicy allows the caller to update the fee schedule and + // channel policies for all channels globally, or a particular channel. UpdateChannelPolicy(ctx context.Context, in *PolicyUpdateRequest, opts ...grpc.CallOption) (*PolicyUpdateResponse, error) // 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, for a maximum number of events. If no maximum number - //of events is specified, up to 100 events will be returned. If no time-range - //is specified, then events will be returned in the order that they occured. + // 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, for a maximum number of events. If no maximum number + // of events is specified, up to 100 events will be returned. If no time-range + // is specified, then events will be returned in the order that they occured. // - //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. + // 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. ForwardingHistory(ctx context.Context, in *ForwardingHistoryRequest, opts ...grpc.CallOption) (*ForwardingHistoryResponse, error) // 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. + // 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. ExportChannelBackup(ctx context.Context, in *ExportChannelBackupRequest, opts ...grpc.CallOption) (*ChannelBackup, error) - // - //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. + // 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. ExportAllChannelBackups(ctx context.Context, in *ChanBackupExportRequest, opts ...grpc.CallOption) (*ChanBackupSnapshot, error) - // - //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. + // 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. VerifyChanBackup(ctx context.Context, in *ChanBackupSnapshot, opts ...grpc.CallOption) (*VerifyChanBackupResponse, error) // 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. + // 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. RestoreChannelBackups(ctx context.Context, in *RestoreChanBackupRequest, opts ...grpc.CallOption) (*RestoreBackupResponse, error) - // - //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. + // 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. SubscribeChannelBackups(ctx context.Context, in *ChannelBackupSubscription, opts ...grpc.CallOption) (Lightning_SubscribeChannelBackupsClient, error) // 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. + // 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. BakeMacaroon(ctx context.Context, in *BakeMacaroonRequest, opts ...grpc.CallOption) (*BakeMacaroonResponse, error) // lncli: `listmacaroonids` - //ListMacaroonIDs returns all root key IDs that are in use. + // ListMacaroonIDs returns all root key IDs that are in use. ListMacaroonIDs(ctx context.Context, in *ListMacaroonIDsRequest, opts ...grpc.CallOption) (*ListMacaroonIDsResponse, error) // lncli: `deletemacaroonid` - //DeleteMacaroonID deletes the specified macaroon ID and invalidates all - //macaroons derived from that ID. + // DeleteMacaroonID deletes the specified macaroon ID and invalidates all + // macaroons derived from that ID. DeleteMacaroonID(ctx context.Context, in *DeleteMacaroonIDRequest, opts ...grpc.CallOption) (*DeleteMacaroonIDResponse, error) // lncli: `listpermissions` - //ListPermissions lists all RPC method URIs and their required macaroon - //permissions to access them. + // ListPermissions lists all RPC method URIs and their required macaroon + // permissions to access them. ListPermissions(ctx context.Context, in *ListPermissionsRequest, opts ...grpc.CallOption) (*ListPermissionsResponse, error) - // - //CheckMacaroonPermissions checks whether a request follows the constraints - //imposed on the macaroon and that the macaroon is authorized to follow the - //provided permissions. + // CheckMacaroonPermissions checks whether a request follows the constraints + // imposed on the macaroon and that the macaroon is authorized to follow the + // provided permissions. CheckMacaroonPermissions(ctx context.Context, in *CheckMacPermRequest, opts ...grpc.CallOption) (*CheckMacPermResponse, error) - // - //RegisterRPCMiddleware adds a new gRPC middleware to the interceptor chain. A - //gRPC middleware is software component external to lnd that aims to add - //additional business logic to lnd by observing/intercepting/validating - //incoming gRPC client requests and (if needed) replacing/overwriting outgoing - //messages before they're sent to the client. When registering the middleware - //must identify itself and indicate what custom macaroon caveats it wants to - //be responsible for. Only requests that contain a macaroon with that specific - //custom caveat are then sent to the middleware for inspection. The other - //option is to register for the read-only mode in which all requests/responses - //are forwarded for interception to the middleware but the middleware is not - //allowed to modify any responses. As a security measure, _no_ middleware can - //modify responses for requests made with _unencumbered_ macaroons! + // RegisterRPCMiddleware adds a new gRPC middleware to the interceptor chain. A + // gRPC middleware is software component external to lnd that aims to add + // additional business logic to lnd by observing/intercepting/validating + // incoming gRPC client requests and (if needed) replacing/overwriting outgoing + // messages before they're sent to the client. When registering the middleware + // must identify itself and indicate what custom macaroon caveats it wants to + // be responsible for. Only requests that contain a macaroon with that specific + // custom caveat are then sent to the middleware for inspection. The other + // option is to register for the read-only mode in which all requests/responses + // are forwarded for interception to the middleware but the middleware is not + // allowed to modify any responses. As a security measure, _no_ middleware can + // modify responses for requests made with _unencumbered_ macaroons! RegisterRPCMiddleware(ctx context.Context, opts ...grpc.CallOption) (Lightning_RegisterRPCMiddlewareClient, error) // lncli: `sendcustom` - //SendCustomMessage sends a custom peer message. + // SendCustomMessage sends a custom peer message. SendCustomMessage(ctx context.Context, in *SendCustomMessageRequest, opts ...grpc.CallOption) (*SendCustomMessageResponse, error) // lncli: `subscribecustom` - //SubscribeCustomMessages subscribes to a stream of incoming custom peer - //messages. + // SubscribeCustomMessages subscribes to a stream of incoming custom peer + // messages. SubscribeCustomMessages(ctx context.Context, in *SubscribeCustomMessagesRequest, opts ...grpc.CallOption) (Lightning_SubscribeCustomMessagesClient, error) // lncli: `listaliases` - //ListAliases returns the set of all aliases that have ever existed with - //their confirmed SCID (if it exists) and/or the base SCID (in the case of - //zero conf). + // ListAliases returns the set of all aliases that have ever existed with + // their confirmed SCID (if it exists) and/or the base SCID (in the case of + // zero conf). ListAliases(ctx context.Context, in *ListAliasesRequest, opts ...grpc.CallOption) (*ListAliasesResponse, error) } @@ -1321,401 +1304,384 @@ func (c *lightningClient) ListAliases(ctx context.Context, in *ListAliasesReques // for forward compatibility type LightningServer interface { // lncli: `walletbalance` - //WalletBalance returns total unspent outputs(confirmed and unconfirmed), all - //confirmed unspent outputs and all unconfirmed unspent outputs under control - //of the wallet. + // WalletBalance returns total unspent outputs(confirmed and unconfirmed), all + // confirmed unspent outputs and all unconfirmed unspent outputs under control + // of the wallet. WalletBalance(context.Context, *WalletBalanceRequest) (*WalletBalanceResponse, error) // 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. + // ChannelBalance returns a report on the total funds across all open channels, + // categorized in local/remote, pending local/remote and unsettled local/remote + // balances. ChannelBalance(context.Context, *ChannelBalanceRequest) (*ChannelBalanceResponse, error) // lncli: `listchaintxns` - //GetTransactions returns a list describing all the known transactions - //relevant to the wallet. + // GetTransactions returns a list describing all the known transactions + // relevant to the wallet. GetTransactions(context.Context, *GetTransactionsRequest) (*TransactionDetails, error) // lncli: `estimatefee` - //EstimateFee asks the chain backend to estimate the fee rate and total fees - //for a transaction that pays to multiple specified outputs. + // 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. + // 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. EstimateFee(context.Context, *EstimateFeeRequest) (*EstimateFeeResponse, error) // 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. + // 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. SendCoins(context.Context, *SendCoinsRequest) (*SendCoinsResponse, error) // lncli: `listunspent` - //Deprecated, use walletrpc.ListUnspent instead. + // 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. + // ListUnspent returns a list of all utxos spendable by the wallet with a + // number of confirmations between the specified minimum and maximum. ListUnspent(context.Context, *ListUnspentRequest) (*ListUnspentResponse, error) - // - //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. + // 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. SubscribeTransactions(*GetTransactionsRequest, Lightning_SubscribeTransactionsServer) error // 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. + // 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. SendMany(context.Context, *SendManyRequest) (*SendManyResponse, error) // lncli: `newaddress` - //NewAddress creates a new address under control of the local wallet. + // NewAddress creates a new address under control of the local wallet. NewAddress(context.Context, *NewAddressRequest) (*NewAddressResponse, error) // 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. + // 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. SignMessage(context.Context, *SignMessageRequest) (*SignMessageResponse, error) // 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. + // 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. VerifyMessage(context.Context, *VerifyMessageRequest) (*VerifyMessageResponse, error) // 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. + // 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. ConnectPeer(context.Context, *ConnectPeerRequest) (*ConnectPeerResponse, error) // 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. + // 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. DisconnectPeer(context.Context, *DisconnectPeerRequest) (*DisconnectPeerResponse, error) // lncli: `listpeers` - //ListPeers returns a verbose listing of all currently active peers. + // ListPeers returns a verbose listing of all currently active peers. ListPeers(context.Context, *ListPeersRequest) (*ListPeersResponse, error) - // - //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. + // 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. SubscribePeerEvents(*PeerEventSubscription, Lightning_SubscribePeerEventsServer) error // 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. + // 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. GetInfo(context.Context, *GetInfoRequest) (*GetInfoResponse, error) - //* 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. + // * 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. GetRecoveryInfo(context.Context, *GetRecoveryInfoRequest) (*GetRecoveryInfoResponse, error) // 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. + // 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. PendingChannels(context.Context, *PendingChannelsRequest) (*PendingChannelsResponse, error) // lncli: `listchannels` - //ListChannels returns a description of all the open channels that this node - //is a participant in. + // ListChannels returns a description of all the open channels that this node + // is a participant in. ListChannels(context.Context, *ListChannelsRequest) (*ListChannelsResponse, error) - // - //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. + // 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. SubscribeChannelEvents(*ChannelEventSubscription, Lightning_SubscribeChannelEventsServer) error // lncli: `closedchannels` - //ClosedChannels returns a description of all the closed channels that - //this node was a participant in. + // ClosedChannels returns a description of all the closed channels that + // this node was a participant in. ClosedChannels(context.Context, *ClosedChannelsRequest) (*ClosedChannelsResponse, error) - // - //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. + // 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. OpenChannelSync(context.Context, *OpenChannelRequest) (*ChannelPoint, error) // 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. + // 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. OpenChannel(*OpenChannelRequest, Lightning_OpenChannelServer) error // lncli: `batchopenchannel` - //BatchOpenChannel attempts to open multiple single-funded channels in a - //single transaction in an atomic way. This means either all channel open - //requests succeed at once or all attempts are aborted if any of them fail. - //This is the safer variant of using PSBTs to manually fund a batch of - //channels through the OpenChannel RPC. + // BatchOpenChannel attempts to open multiple single-funded channels in a + // single transaction in an atomic way. This means either all channel open + // requests succeed at once or all attempts are aborted if any of them fail. + // This is the safer variant of using PSBTs to manually fund a batch of + // channels through the OpenChannel RPC. BatchOpenChannel(context.Context, *BatchOpenChannelRequest) (*BatchOpenChannelResponse, error) - // - //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. + // 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. FundingStateStep(context.Context, *FundingTransitionMsg) (*FundingStateStepResp, error) - // - //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. + // 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. ChannelAcceptor(Lightning_ChannelAcceptorServer) error // 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. + // 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. CloseChannel(*CloseChannelRequest, Lightning_CloseChannelServer) error // 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. + // 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. AbandonChannel(context.Context, *AbandonChannelRequest) (*AbandonChannelResponse, error) // Deprecated: Do not use. // 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, 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. SendPayment(Lightning_SendPaymentServer) error - // - //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. + // 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. SendPaymentSync(context.Context, *SendRequest) (*SendResponse, error) // Deprecated: Do not use. // 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, 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. SendToRoute(Lightning_SendToRouteServer) error - // - //SendToRouteSync is a synchronous version of SendToRoute. It Will block - //until the payment either fails or succeeds. + // SendToRouteSync is a synchronous version of SendToRoute. It Will block + // until the payment either fails or succeeds. SendToRouteSync(context.Context, *SendToRouteRequest) (*SendResponse, error) // 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. + // 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. AddInvoice(context.Context, *Invoice) (*AddInvoiceResponse, error) // 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. + // 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. ListInvoices(context.Context, *ListInvoiceRequest) (*ListInvoiceResponse, error) // 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. + // 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. LookupInvoice(context.Context, *PaymentHash) (*Invoice, error) - // - //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. + // 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. SubscribeInvoices(*InvoiceSubscription, Lightning_SubscribeInvoicesServer) error // 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. + // DecodePayReq takes an encoded payment request string and attempts to decode + // it, returning a full description of the conditions encoded within the + // payment request. DecodePayReq(context.Context, *PayReqString) (*PayReq, error) // lncli: `listpayments` - //ListPayments returns a list of all outgoing payments. + // ListPayments returns a list of all outgoing payments. ListPayments(context.Context, *ListPaymentsRequest) (*ListPaymentsResponse, error) - // - //DeletePayment deletes an outgoing payment from DB. Note that it will not - //attempt to delete an In-Flight payment, since that would be unsafe. + // DeletePayment deletes an outgoing payment from DB. Note that it will not + // attempt to delete an In-Flight payment, since that would be unsafe. DeletePayment(context.Context, *DeletePaymentRequest) (*DeletePaymentResponse, error) - // - //DeleteAllPayments deletes all outgoing payments from DB. Note that it will - //not attempt to delete In-Flight payments, since that would be unsafe. + // DeleteAllPayments deletes all outgoing payments from DB. Note that it will + // not attempt to delete In-Flight payments, since that would be unsafe. DeleteAllPayments(context.Context, *DeleteAllPaymentsRequest) (*DeleteAllPaymentsResponse, error) // 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. + // 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. DescribeGraph(context.Context, *ChannelGraphRequest) (*ChannelGraph, error) // lncli: `getnodemetrics` - //GetNodeMetrics returns node metrics calculated from the graph. Currently - //the only supported metric is betweenness centrality of individual nodes. + // GetNodeMetrics returns node metrics calculated from the graph. Currently + // the only supported metric is betweenness centrality of individual nodes. GetNodeMetrics(context.Context, *NodeMetricsRequest) (*NodeMetricsResponse, error) // 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. + // 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. GetChanInfo(context.Context, *ChanInfoRequest) (*ChannelEdge, error) // lncli: `getnodeinfo` - //GetNodeInfo returns the latest advertised, aggregated, and authenticated - //channel information for the specified node identified by its public key. + // GetNodeInfo returns the latest advertised, aggregated, and authenticated + // channel information for the specified node identified by its public key. GetNodeInfo(context.Context, *NodeInfoRequest) (*NodeInfo, error) // 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. + // 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. + // 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. QueryRoutes(context.Context, *QueryRoutesRequest) (*QueryRoutesResponse, error) // lncli: `getnetworkinfo` - //GetNetworkInfo returns some basic stats about the known channel graph from - //the point of view of the node. + // GetNetworkInfo returns some basic stats about the known channel graph from + // the point of view of the node. GetNetworkInfo(context.Context, *NetworkInfoRequest) (*NetworkInfo, error) // lncli: `stop` - //StopDaemon will send a shutdown request to the interrupt handler, triggering - //a graceful shutdown of the daemon. + // StopDaemon will send a shutdown request to the interrupt handler, triggering + // a graceful shutdown of the daemon. StopDaemon(context.Context, *StopRequest) (*StopResponse, error) - // - //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. + // 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. SubscribeChannelGraph(*GraphTopologySubscription, Lightning_SubscribeChannelGraphServer) error // 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. + // 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. DebugLevel(context.Context, *DebugLevelRequest) (*DebugLevelResponse, error) // lncli: `feereport` - //FeeReport allows the caller to obtain a report detailing the current fee - //schedule enforced by the node globally for each channel. + // FeeReport allows the caller to obtain a report detailing the current fee + // schedule enforced by the node globally for each channel. FeeReport(context.Context, *FeeReportRequest) (*FeeReportResponse, error) // lncli: `updatechanpolicy` - //UpdateChannelPolicy allows the caller to update the fee schedule and - //channel policies for all channels globally, or a particular channel. + // UpdateChannelPolicy allows the caller to update the fee schedule and + // channel policies for all channels globally, or a particular channel. UpdateChannelPolicy(context.Context, *PolicyUpdateRequest) (*PolicyUpdateResponse, error) // 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, for a maximum number of events. If no maximum number - //of events is specified, up to 100 events will be returned. If no time-range - //is specified, then events will be returned in the order that they occured. + // 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, for a maximum number of events. If no maximum number + // of events is specified, up to 100 events will be returned. If no time-range + // is specified, then events will be returned in the order that they occured. // - //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. + // 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. ForwardingHistory(context.Context, *ForwardingHistoryRequest) (*ForwardingHistoryResponse, error) // 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. + // 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. ExportChannelBackup(context.Context, *ExportChannelBackupRequest) (*ChannelBackup, error) - // - //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. + // 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. ExportAllChannelBackups(context.Context, *ChanBackupExportRequest) (*ChanBackupSnapshot, error) - // - //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. + // 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. VerifyChanBackup(context.Context, *ChanBackupSnapshot) (*VerifyChanBackupResponse, error) // 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. + // 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. RestoreChannelBackups(context.Context, *RestoreChanBackupRequest) (*RestoreBackupResponse, error) - // - //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. + // 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. SubscribeChannelBackups(*ChannelBackupSubscription, Lightning_SubscribeChannelBackupsServer) error // 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. + // 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. BakeMacaroon(context.Context, *BakeMacaroonRequest) (*BakeMacaroonResponse, error) // lncli: `listmacaroonids` - //ListMacaroonIDs returns all root key IDs that are in use. + // ListMacaroonIDs returns all root key IDs that are in use. ListMacaroonIDs(context.Context, *ListMacaroonIDsRequest) (*ListMacaroonIDsResponse, error) // lncli: `deletemacaroonid` - //DeleteMacaroonID deletes the specified macaroon ID and invalidates all - //macaroons derived from that ID. + // DeleteMacaroonID deletes the specified macaroon ID and invalidates all + // macaroons derived from that ID. DeleteMacaroonID(context.Context, *DeleteMacaroonIDRequest) (*DeleteMacaroonIDResponse, error) // lncli: `listpermissions` - //ListPermissions lists all RPC method URIs and their required macaroon - //permissions to access them. + // ListPermissions lists all RPC method URIs and their required macaroon + // permissions to access them. ListPermissions(context.Context, *ListPermissionsRequest) (*ListPermissionsResponse, error) - // - //CheckMacaroonPermissions checks whether a request follows the constraints - //imposed on the macaroon and that the macaroon is authorized to follow the - //provided permissions. + // CheckMacaroonPermissions checks whether a request follows the constraints + // imposed on the macaroon and that the macaroon is authorized to follow the + // provided permissions. CheckMacaroonPermissions(context.Context, *CheckMacPermRequest) (*CheckMacPermResponse, error) - // - //RegisterRPCMiddleware adds a new gRPC middleware to the interceptor chain. A - //gRPC middleware is software component external to lnd that aims to add - //additional business logic to lnd by observing/intercepting/validating - //incoming gRPC client requests and (if needed) replacing/overwriting outgoing - //messages before they're sent to the client. When registering the middleware - //must identify itself and indicate what custom macaroon caveats it wants to - //be responsible for. Only requests that contain a macaroon with that specific - //custom caveat are then sent to the middleware for inspection. The other - //option is to register for the read-only mode in which all requests/responses - //are forwarded for interception to the middleware but the middleware is not - //allowed to modify any responses. As a security measure, _no_ middleware can - //modify responses for requests made with _unencumbered_ macaroons! + // RegisterRPCMiddleware adds a new gRPC middleware to the interceptor chain. A + // gRPC middleware is software component external to lnd that aims to add + // additional business logic to lnd by observing/intercepting/validating + // incoming gRPC client requests and (if needed) replacing/overwriting outgoing + // messages before they're sent to the client. When registering the middleware + // must identify itself and indicate what custom macaroon caveats it wants to + // be responsible for. Only requests that contain a macaroon with that specific + // custom caveat are then sent to the middleware for inspection. The other + // option is to register for the read-only mode in which all requests/responses + // are forwarded for interception to the middleware but the middleware is not + // allowed to modify any responses. As a security measure, _no_ middleware can + // modify responses for requests made with _unencumbered_ macaroons! RegisterRPCMiddleware(Lightning_RegisterRPCMiddlewareServer) error // lncli: `sendcustom` - //SendCustomMessage sends a custom peer message. + // SendCustomMessage sends a custom peer message. SendCustomMessage(context.Context, *SendCustomMessageRequest) (*SendCustomMessageResponse, error) // lncli: `subscribecustom` - //SubscribeCustomMessages subscribes to a stream of incoming custom peer - //messages. + // SubscribeCustomMessages subscribes to a stream of incoming custom peer + // messages. SubscribeCustomMessages(*SubscribeCustomMessagesRequest, Lightning_SubscribeCustomMessagesServer) error // lncli: `listaliases` - //ListAliases returns the set of all aliases that have ever existed with - //their confirmed SCID (if it exists) and/or the base SCID (in the case of - //zero conf). + // ListAliases returns the set of all aliases that have ever existed with + // their confirmed SCID (if it exists) and/or the base SCID (in the case of + // zero conf). ListAliases(context.Context, *ListAliasesRequest) (*ListAliasesResponse, error) mustEmbedUnimplementedLightningServer() } diff --git a/lnrpc/neutrinorpc/neutrino_grpc.pb.go b/lnrpc/neutrinorpc/neutrino_grpc.pb.go index 889057069..4ede00e52 100644 --- a/lnrpc/neutrinorpc/neutrino_grpc.pb.go +++ b/lnrpc/neutrinorpc/neutrino_grpc.pb.go @@ -18,33 +18,25 @@ const _ = grpc.SupportPackageIsVersion7 // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type NeutrinoKitClient interface { - // - //Status returns the status of the light client neutrino instance, - //along with height and hash of the best block, and a list of connected - //peers. + // Status returns the status of the light client neutrino instance, + // along with height and hash of the best block, and a list of connected + // peers. Status(ctx context.Context, in *StatusRequest, opts ...grpc.CallOption) (*StatusResponse, error) - // - //AddPeer adds a new peer that has already been connected to the server. + // AddPeer adds a new peer that has already been connected to the server. AddPeer(ctx context.Context, in *AddPeerRequest, opts ...grpc.CallOption) (*AddPeerResponse, error) - // - //DisconnectPeer disconnects a peer by target address. Both outbound and - //inbound nodes will be searched for the target node. An error message will - //be returned if the peer was not found. + // DisconnectPeer disconnects a peer by target address. Both outbound and + // inbound nodes will be searched for the target node. An error message will + // be returned if the peer was not found. DisconnectPeer(ctx context.Context, in *DisconnectPeerRequest, opts ...grpc.CallOption) (*DisconnectPeerResponse, error) - // - //IsBanned returns true if the peer is banned, otherwise false. + // IsBanned returns true if the peer is banned, otherwise false. IsBanned(ctx context.Context, in *IsBannedRequest, opts ...grpc.CallOption) (*IsBannedResponse, error) - // - //GetBlockHeader returns a block header with a particular block hash. + // GetBlockHeader returns a block header with a particular block hash. GetBlockHeader(ctx context.Context, in *GetBlockHeaderRequest, opts ...grpc.CallOption) (*GetBlockHeaderResponse, error) - // - //GetBlock returns a block with a particular block hash. + // GetBlock returns a block with a particular block hash. GetBlock(ctx context.Context, in *GetBlockRequest, opts ...grpc.CallOption) (*GetBlockResponse, error) - // - //GetCFilter returns a compact filter from a block. + // GetCFilter returns a compact filter from a block. GetCFilter(ctx context.Context, in *GetCFilterRequest, opts ...grpc.CallOption) (*GetCFilterResponse, error) - // - //GetBlockHash returns the header hash of a block at a given height. + // GetBlockHash returns the header hash of a block at a given height. GetBlockHash(ctx context.Context, in *GetBlockHashRequest, opts ...grpc.CallOption) (*GetBlockHashResponse, error) } @@ -132,33 +124,25 @@ func (c *neutrinoKitClient) GetBlockHash(ctx context.Context, in *GetBlockHashRe // All implementations must embed UnimplementedNeutrinoKitServer // for forward compatibility type NeutrinoKitServer interface { - // - //Status returns the status of the light client neutrino instance, - //along with height and hash of the best block, and a list of connected - //peers. + // Status returns the status of the light client neutrino instance, + // along with height and hash of the best block, and a list of connected + // peers. Status(context.Context, *StatusRequest) (*StatusResponse, error) - // - //AddPeer adds a new peer that has already been connected to the server. + // AddPeer adds a new peer that has already been connected to the server. AddPeer(context.Context, *AddPeerRequest) (*AddPeerResponse, error) - // - //DisconnectPeer disconnects a peer by target address. Both outbound and - //inbound nodes will be searched for the target node. An error message will - //be returned if the peer was not found. + // DisconnectPeer disconnects a peer by target address. Both outbound and + // inbound nodes will be searched for the target node. An error message will + // be returned if the peer was not found. DisconnectPeer(context.Context, *DisconnectPeerRequest) (*DisconnectPeerResponse, error) - // - //IsBanned returns true if the peer is banned, otherwise false. + // IsBanned returns true if the peer is banned, otherwise false. IsBanned(context.Context, *IsBannedRequest) (*IsBannedResponse, error) - // - //GetBlockHeader returns a block header with a particular block hash. + // GetBlockHeader returns a block header with a particular block hash. GetBlockHeader(context.Context, *GetBlockHeaderRequest) (*GetBlockHeaderResponse, error) - // - //GetBlock returns a block with a particular block hash. + // GetBlock returns a block with a particular block hash. GetBlock(context.Context, *GetBlockRequest) (*GetBlockResponse, error) - // - //GetCFilter returns a compact filter from a block. + // GetCFilter returns a compact filter from a block. GetCFilter(context.Context, *GetCFilterRequest) (*GetCFilterResponse, error) - // - //GetBlockHash returns the header hash of a block at a given height. + // GetBlockHash returns the header hash of a block at a given height. GetBlockHash(context.Context, *GetBlockHashRequest) (*GetBlockHashResponse, error) mustEmbedUnimplementedNeutrinoKitServer() } diff --git a/lnrpc/peersrpc/peers.pb.go b/lnrpc/peersrpc/peers.pb.go index a0efe7974..7c7e13bff 100644 --- a/lnrpc/peersrpc/peers.pb.go +++ b/lnrpc/peersrpc/peers.pb.go @@ -73,26 +73,21 @@ func (UpdateAction) EnumDescriptor() ([]byte, []int) { type FeatureSet int32 const ( - // - //SET_INIT identifies features that should be sent in an Init message to - //a remote peer. + // SET_INIT identifies features that should be sent in an Init message to + // a remote peer. FeatureSet_SET_INIT FeatureSet = 0 - // - //SET_LEGACY_GLOBAL identifies features that should be set in the legacy - //GlobalFeatures field of an Init message, which maintains backwards - //compatibility with nodes that haven't implemented flat features. + // SET_LEGACY_GLOBAL identifies features that should be set in the legacy + // GlobalFeatures field of an Init message, which maintains backwards + // compatibility with nodes that haven't implemented flat features. FeatureSet_SET_LEGACY_GLOBAL FeatureSet = 1 - // - //SET_NODE_ANN identifies features that should be advertised on node - //announcements. + // SET_NODE_ANN identifies features that should be advertised on node + // announcements. FeatureSet_SET_NODE_ANN FeatureSet = 2 - // - //SET_INVOICE identifies features that should be advertised on invoices - //generated by the daemon. + // SET_INVOICE identifies features that should be advertised on invoices + // generated by the daemon. FeatureSet_SET_INVOICE FeatureSet = 3 - // - //SET_INVOICE_AMP identifies the features that should be advertised on - //AMP invoices generated by the daemon. + // SET_INVOICE_AMP identifies the features that should be advertised on + // AMP invoices generated by the daemon. FeatureSet_SET_INVOICE_AMP FeatureSet = 4 ) diff --git a/lnrpc/peersrpc/peers_grpc.pb.go b/lnrpc/peersrpc/peers_grpc.pb.go index 437fe45b2..1107835f9 100644 --- a/lnrpc/peersrpc/peers_grpc.pb.go +++ b/lnrpc/peersrpc/peers_grpc.pb.go @@ -19,8 +19,8 @@ const _ = grpc.SupportPackageIsVersion7 // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type PeersClient interface { // lncli: peers updatenodeannouncement - //UpdateNodeAnnouncement allows the caller to update the node parameters - //and broadcasts a new version of the node announcement to its peers. + // UpdateNodeAnnouncement allows the caller to update the node parameters + // and broadcasts a new version of the node announcement to its peers. UpdateNodeAnnouncement(ctx context.Context, in *NodeAnnouncementUpdateRequest, opts ...grpc.CallOption) (*NodeAnnouncementUpdateResponse, error) } @@ -46,8 +46,8 @@ func (c *peersClient) UpdateNodeAnnouncement(ctx context.Context, in *NodeAnnoun // for forward compatibility type PeersServer interface { // lncli: peers updatenodeannouncement - //UpdateNodeAnnouncement allows the caller to update the node parameters - //and broadcasts a new version of the node announcement to its peers. + // UpdateNodeAnnouncement allows the caller to update the node parameters + // and broadcasts a new version of the node announcement to its peers. UpdateNodeAnnouncement(context.Context, *NodeAnnouncementUpdateRequest) (*NodeAnnouncementUpdateResponse, error) mustEmbedUnimplementedPeersServer() } diff --git a/lnrpc/routerrpc/router.pb.go b/lnrpc/routerrpc/router.pb.go index 7532744c2..abce841bf 100644 --- a/lnrpc/routerrpc/router.pb.go +++ b/lnrpc/routerrpc/router.pb.go @@ -133,28 +133,21 @@ func (FailureDetail) EnumDescriptor() ([]byte, []int) { type PaymentState int32 const ( - // - //Payment is still in flight. + // Payment is still in flight. PaymentState_IN_FLIGHT PaymentState = 0 - // - //Payment completed successfully. + // Payment completed successfully. PaymentState_SUCCEEDED PaymentState = 1 - // - //There are more routes to try, but the payment timeout was exceeded. + // There are more routes to try, but the payment timeout was exceeded. PaymentState_FAILED_TIMEOUT PaymentState = 2 - // - //All possible routes were tried and failed permanently. Or were no - //routes to the destination at all. + // All possible routes were tried and failed permanently. Or were no + // routes to the destination at all. PaymentState_FAILED_NO_ROUTE PaymentState = 3 - // - //A non-recoverable error has occurred. + // A non-recoverable error has occurred. PaymentState_FAILED_ERROR PaymentState = 4 - // - //Payment details incorrect (unknown hash, invalid amt or - //invalid final cltv delta) + // Payment details incorrect (unknown hash, invalid amt or + // invalid final cltv delta) PaymentState_FAILED_INCORRECT_PAYMENT_DETAILS PaymentState = 5 - // - //Insufficient local balance. + // Insufficient local balance. PaymentState_FAILED_INSUFFICIENT_BALANCE PaymentState = 6 ) @@ -364,112 +357,93 @@ type SendPaymentRequest struct { // The identity pubkey of the payment recipient Dest []byte `protobuf:"bytes,1,opt,name=dest,proto3" json:"dest,omitempty"` + // Number of satoshis to send. // - //Number of satoshis to send. - // - //The fields amt and amt_msat are mutually exclusive. + // The fields amt and amt_msat are mutually exclusive. Amt int64 `protobuf:"varint,2,opt,name=amt,proto3" json:"amt,omitempty"` + // Number of millisatoshis to send. // - //Number of millisatoshis to send. - // - //The fields amt and amt_msat are mutually exclusive. + // The fields amt and amt_msat are mutually exclusive. AmtMsat int64 `protobuf:"varint,12,opt,name=amt_msat,json=amtMsat,proto3" json:"amt_msat,omitempty"` // The hash to use within the payment's HTLC PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"` - // - //The CLTV delta from the current height that should be used to set the - //timelock for the final hop. + // The CLTV delta from the current height that should be used to set the + // timelock for the final hop. FinalCltvDelta int32 `protobuf:"varint,4,opt,name=final_cltv_delta,json=finalCltvDelta,proto3" json:"final_cltv_delta,omitempty"` // An optional payment addr to be included within the last hop of the route. PaymentAddr []byte `protobuf:"bytes,20,opt,name=payment_addr,json=paymentAddr,proto3" json:"payment_addr,omitempty"` - // - //A bare-bones invoice for a payment within the Lightning Network. With the - //details of the invoice, the sender has all the data necessary to send a - //payment to the recipient. The amount in the payment request may be zero. In - //that case it is required to set the amt field as well. If no payment request - //is specified, the following fields are required: dest, amt and payment_hash. + // A bare-bones invoice for a payment within the Lightning Network. With the + // details of the invoice, the sender has all the data necessary to send a + // payment to the recipient. The amount in the payment request may be zero. In + // that case it is required to set the amt field as well. If no payment request + // is specified, the following fields are required: dest, amt and payment_hash. PaymentRequest string `protobuf:"bytes,5,opt,name=payment_request,json=paymentRequest,proto3" json:"payment_request,omitempty"` - // - //An upper limit on the amount of time we should spend when attempting to - //fulfill the payment. This is expressed in seconds. If we cannot make a - //successful payment within this time frame, an error will be returned. - //This field must be non-zero. + // An upper limit on the amount of time we should spend when attempting to + // fulfill the payment. This is expressed in seconds. If we cannot make a + // successful payment within this time frame, an error will be returned. + // This field must be non-zero. TimeoutSeconds int32 `protobuf:"varint,6,opt,name=timeout_seconds,json=timeoutSeconds,proto3" json:"timeout_seconds,omitempty"` + // The maximum number of satoshis that will be paid as a fee of the payment. + // If this field is left to the default value of 0, only zero-fee routes will + // be considered. This usually means single hop routes connecting directly to + // the destination. To send the payment without a fee limit, use max int here. // - //The maximum number of satoshis that will be paid as a fee of the payment. - //If this field is left to the default value of 0, only zero-fee routes will - //be considered. This usually means single hop routes connecting directly to - //the destination. To send the payment without a fee limit, use max int here. - // - //The fields fee_limit_sat and fee_limit_msat are mutually exclusive. + // The fields fee_limit_sat and fee_limit_msat are mutually exclusive. FeeLimitSat int64 `protobuf:"varint,7,opt,name=fee_limit_sat,json=feeLimitSat,proto3" json:"fee_limit_sat,omitempty"` + // The maximum number of millisatoshis that will be paid as a fee of the + // payment. If this field is left to the default value of 0, only zero-fee + // routes will be considered. This usually means single hop routes connecting + // directly to the destination. To send the payment without a fee limit, use + // max int here. // - //The maximum number of millisatoshis that will be paid as a fee of the - //payment. If this field is left to the default value of 0, only zero-fee - //routes will be considered. This usually means single hop routes connecting - //directly to the destination. To send the payment without a fee limit, use - //max int here. - // - //The fields fee_limit_sat and fee_limit_msat are mutually exclusive. + // The fields fee_limit_sat and fee_limit_msat are mutually exclusive. FeeLimitMsat int64 `protobuf:"varint,13,opt,name=fee_limit_msat,json=feeLimitMsat,proto3" json:"fee_limit_msat,omitempty"` - // - //Deprecated, use outgoing_chan_ids. The channel id of the channel that must - //be taken to the first hop. If zero, any channel may be used (unless - //outgoing_chan_ids are set). + // Deprecated, use outgoing_chan_ids. The channel id of the channel that must + // be taken to the first hop. If zero, any channel may be used (unless + // outgoing_chan_ids are set). // // Deprecated: Do not use. OutgoingChanId uint64 `protobuf:"varint,8,opt,name=outgoing_chan_id,json=outgoingChanId,proto3" json:"outgoing_chan_id,omitempty"` - // - //The channel ids of the channels are allowed for the first hop. If empty, - //any channel may be used. + // The channel ids of the channels are allowed for the first hop. If empty, + // any channel may be used. OutgoingChanIds []uint64 `protobuf:"varint,19,rep,packed,name=outgoing_chan_ids,json=outgoingChanIds,proto3" json:"outgoing_chan_ids,omitempty"` - // - //The pubkey of the last hop of the route. If empty, any hop may be used. + // The pubkey of the last hop of the route. If empty, any hop may be used. LastHopPubkey []byte `protobuf:"bytes,14,opt,name=last_hop_pubkey,json=lastHopPubkey,proto3" json:"last_hop_pubkey,omitempty"` - // - //An optional maximum total time lock for the route. This should not exceed - //lnd's `--max-cltv-expiry` setting. If zero, then the value of - //`--max-cltv-expiry` is enforced. + // An optional maximum total time lock for the route. This should not exceed + // lnd's `--max-cltv-expiry` setting. If zero, then the value of + // `--max-cltv-expiry` is enforced. CltvLimit int32 `protobuf:"varint,9,opt,name=cltv_limit,json=cltvLimit,proto3" json:"cltv_limit,omitempty"` - // - //Optional route hints to reach the destination through private channels. + // Optional route hints to reach the destination through private channels. RouteHints []*lnrpc.RouteHint `protobuf:"bytes,10,rep,name=route_hints,json=routeHints,proto3" json:"route_hints,omitempty"` - // - //An optional field that can be used to pass an arbitrary set of TLV records - //to a peer which understands the new records. This can be used to pass - //application specific data during the payment attempt. Record types are - //required to be in the custom range >= 65536. When using REST, the values - //must be encoded as base64. + // An optional field that can be used to pass an arbitrary set of TLV records + // to a peer which understands the new records. This can be used to pass + // application specific data during the payment attempt. Record types are + // required to be in the custom range >= 65536. When using REST, the values + // must be encoded as base64. DestCustomRecords map[uint64][]byte `protobuf:"bytes,11,rep,name=dest_custom_records,json=destCustomRecords,proto3" json:"dest_custom_records,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // If set, circular payments to self are permitted. AllowSelfPayment bool `protobuf:"varint,15,opt,name=allow_self_payment,json=allowSelfPayment,proto3" json:"allow_self_payment,omitempty"` - // - //Features assumed to be supported by the final node. All transitive feature - //dependencies must also be set properly. For a given feature bit pair, either - //optional or remote may be set, but not both. If this field is nil or empty, - //the router will try to load destination features from the graph as a - //fallback. + // Features assumed to be supported by the final node. All transitive feature + // dependencies must also be set properly. For a given feature bit pair, either + // optional or remote may be set, but not both. If this field is nil or empty, + // the router will try to load destination features from the graph as a + // fallback. DestFeatures []lnrpc.FeatureBit `protobuf:"varint,16,rep,packed,name=dest_features,json=destFeatures,proto3,enum=lnrpc.FeatureBit" json:"dest_features,omitempty"` - // - //The maximum number of partial payments that may be use to complete the full - //amount. + // The maximum number of partial payments that may be use to complete the full + // amount. MaxParts uint32 `protobuf:"varint,17,opt,name=max_parts,json=maxParts,proto3" json:"max_parts,omitempty"` - // - //If set, only the final payment update is streamed back. Intermediate updates - //that show which htlcs are still in flight are suppressed. + // If set, only the final payment update is streamed back. Intermediate updates + // that show which htlcs are still in flight are suppressed. NoInflightUpdates bool `protobuf:"varint,18,opt,name=no_inflight_updates,json=noInflightUpdates,proto3" json:"no_inflight_updates,omitempty"` - // - //The largest payment split that should be attempted when making a payment if - //splitting is necessary. Setting this value will effectively cause lnd to - //split more aggressively, vs only when it thinks it needs to. Note that this - //value is in milli-satoshis. + // The largest payment split that should be attempted when making a payment if + // splitting is necessary. Setting this value will effectively cause lnd to + // split more aggressively, vs only when it thinks it needs to. Note that this + // value is in milli-satoshis. MaxShardSizeMsat uint64 `protobuf:"varint,21,opt,name=max_shard_size_msat,json=maxShardSizeMsat,proto3" json:"max_shard_size_msat,omitempty"` - // - //If set, an AMP-payment will be attempted. + // If set, an AMP-payment will be attempted. Amp bool `protobuf:"varint,22,opt,name=amp,proto3" json:"amp,omitempty"` - // - //The time preference for this payment. Set to -1 to optimize for fees - //only, to 1 to optimize for reliability only or a value inbetween for a mix. + // The time preference for this payment. Set to -1 to optimize for fees + // only, to 1 to optimize for reliability only or a value inbetween for a mix. TimePref float64 `protobuf:"fixed64,23,opt,name=time_pref,json=timePref,proto3" json:"time_pref,omitempty"` } @@ -674,9 +648,8 @@ type TrackPaymentRequest struct { // The hash of the payment to look up. PaymentHash []byte `protobuf:"bytes,1,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"` - // - //If set, only the final payment update is streamed back. Intermediate updates - //that show which htlcs are still in flight are suppressed. + // If set, only the final payment update is streamed back. Intermediate updates + // that show which htlcs are still in flight are suppressed. NoInflightUpdates bool `protobuf:"varint,2,opt,name=no_inflight_updates,json=noInflightUpdates,proto3" json:"no_inflight_updates,omitempty"` } @@ -731,11 +704,9 @@ type RouteFeeRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The destination once wishes to obtain a routing fee quote to. + // The destination once wishes to obtain a routing fee quote to. Dest []byte `protobuf:"bytes,1,opt,name=dest,proto3" json:"dest,omitempty"` - // - //The amount one wishes to send to the target destination. + // The amount one wishes to send to the target destination. AmtSat int64 `protobuf:"varint,2,opt,name=amt_sat,json=amtSat,proto3" json:"amt_sat,omitempty"` } @@ -790,14 +761,12 @@ type RouteFeeResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //A lower bound of the estimated fee to the target destination within the - //network, expressed in milli-satoshis. + // A lower bound of the estimated fee to the target destination within the + // network, expressed in milli-satoshis. RoutingFeeMsat int64 `protobuf:"varint,1,opt,name=routing_fee_msat,json=routingFeeMsat,proto3" json:"routing_fee_msat,omitempty"` - // - //An estimate of the worst case time delay that can occur. Note that callers - //will still need to factor in the final CLTV delta of the last hop into this - //value. + // An estimate of the worst case time delay that can occur. Note that callers + // will still need to factor in the final CLTV delta of the last hop into this + // value. TimeLockDelay int64 `protobuf:"varint,2,opt,name=time_lock_delay,json=timeLockDelay,proto3" json:"time_lock_delay,omitempty"` } @@ -856,11 +825,10 @@ type SendToRouteRequest struct { PaymentHash []byte `protobuf:"bytes,1,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"` // Route that should be used to attempt to complete the payment. Route *lnrpc.Route `protobuf:"bytes,2,opt,name=route,proto3" json:"route,omitempty"` - // - //Whether the payment should be marked as failed when a temporary error is - //returned from the given route. Set it to true so the payment won't be - //failed unless a terminal error is occurred, such as payment timeout, no - //routes, incorrect payment details, or insufficient funds. + // Whether the payment should be marked as failed when a temporary error is + // returned from the given route. Set it to true so the payment won't be + // failed unless a terminal error is occurred, such as payment timeout, no + // routes, incorrect payment details, or insufficient funds. SkipTempErr bool `protobuf:"varint,3,opt,name=skip_temp_err,json=skipTempErr,proto3" json:"skip_temp_err,omitempty"` } @@ -1307,13 +1275,11 @@ type PairData struct { // Time of last failure. FailTime int64 `protobuf:"varint,1,opt,name=fail_time,json=failTime,proto3" json:"fail_time,omitempty"` - // - //Lowest amount that failed to forward rounded to whole sats. This may be - //set to zero if the failure is independent of amount. + // Lowest amount that failed to forward rounded to whole sats. This may be + // set to zero if the failure is independent of amount. FailAmtSat int64 `protobuf:"varint,2,opt,name=fail_amt_sat,json=failAmtSat,proto3" json:"fail_amt_sat,omitempty"` - // - //Lowest amount that failed to forward in millisats. This may be - //set to zero if the failure is independent of amount. + // Lowest amount that failed to forward in millisats. This may be + // set to zero if the failure is independent of amount. FailAmtMsat int64 `protobuf:"varint,4,opt,name=fail_amt_msat,json=failAmtMsat,proto3" json:"fail_amt_msat,omitempty"` // Time of last success. SuccessTime int64 `protobuf:"varint,5,opt,name=success_time,json=successTime,proto3" json:"success_time,omitempty"` @@ -1440,8 +1406,7 @@ type GetMissionControlConfigResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //Mission control's currently active config. + // Mission control's currently active config. Config *MissionControlConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"` } @@ -1489,9 +1454,8 @@ type SetMissionControlConfigRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The config to set for mission control. Note that all values *must* be set, - //because the full config will be applied. + // The config to set for mission control. Note that all values *must* be set, + // because the full config will be applied. Config *MissionControlConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"` } @@ -1577,33 +1541,28 @@ type MissionControlConfig struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The amount of time mission control will take to restore a penalized node - //or channel back to 50% success probability, expressed in seconds. Setting - //this value to a higher value will penalize failures for longer, making - //mission control less likely to route through nodes and channels that we - //have previously recorded failures for. + // The amount of time mission control will take to restore a penalized node + // or channel back to 50% success probability, expressed in seconds. Setting + // this value to a higher value will penalize failures for longer, making + // mission control less likely to route through nodes and channels that we + // have previously recorded failures for. HalfLifeSeconds uint64 `protobuf:"varint,1,opt,name=half_life_seconds,json=halfLifeSeconds,proto3" json:"half_life_seconds,omitempty"` - // - //The probability of success mission control should assign to hop in a route - //where it has no other information available. Higher values will make mission - //control more willing to try hops that we have no information about, lower - //values will discourage trying these hops. + // The probability of success mission control should assign to hop in a route + // where it has no other information available. Higher values will make mission + // control more willing to try hops that we have no information about, lower + // values will discourage trying these hops. HopProbability float32 `protobuf:"fixed32,2,opt,name=hop_probability,json=hopProbability,proto3" json:"hop_probability,omitempty"` - // - //The importance that mission control should place on historical results, - //expressed as a value in [0;1]. Setting this value to 1 will ignore all - //historical payments and just use the hop probability to assess the - //probability of success for each hop. A zero value ignores hop probability - //completely and relies entirely on historical results, unless none are - //available. + // The importance that mission control should place on historical results, + // expressed as a value in [0;1]. Setting this value to 1 will ignore all + // historical payments and just use the hop probability to assess the + // probability of success for each hop. A zero value ignores hop probability + // completely and relies entirely on historical results, unless none are + // available. Weight float32 `protobuf:"fixed32,3,opt,name=weight,proto3" json:"weight,omitempty"` - // - //The maximum number of payment results that mission control will store. + // The maximum number of payment results that mission control will store. MaximumPaymentResults uint32 `protobuf:"varint,4,opt,name=maximum_payment_results,json=maximumPaymentResults,proto3" json:"maximum_payment_results,omitempty"` - // - //The minimum time that must have passed since the previously recorded failure - //before we raise the failure amount. + // The minimum time that must have passed since the previously recorded failure + // before we raise the failure amount. MinimumFailureRelaxInterval uint64 `protobuf:"varint,5,opt,name=minimum_failure_relax_interval,json=minimumFailureRelaxInterval,proto3" json:"minimum_failure_relax_interval,omitempty"` } @@ -1802,21 +1761,17 @@ type BuildRouteRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The amount to send expressed in msat. If set to zero, the minimum routable - //amount is used. + // The amount to send expressed in msat. If set to zero, the minimum routable + // amount is used. AmtMsat int64 `protobuf:"varint,1,opt,name=amt_msat,json=amtMsat,proto3" json:"amt_msat,omitempty"` - // - //CLTV delta from the current height that should be used for the timelock - //of the final hop + // CLTV delta from the current height that should be used for the timelock + // of the final hop FinalCltvDelta int32 `protobuf:"varint,2,opt,name=final_cltv_delta,json=finalCltvDelta,proto3" json:"final_cltv_delta,omitempty"` - // - //The channel id of the channel that must be taken to the first hop. If zero, - //any channel may be used. + // The channel id of the channel that must be taken to the first hop. If zero, + // any channel may be used. OutgoingChanId uint64 `protobuf:"varint,3,opt,name=outgoing_chan_id,json=outgoingChanId,proto3" json:"outgoing_chan_id,omitempty"` - // - //A list of hops that defines the route. This does not include the source hop - //pubkey. + // A list of hops that defines the route. This does not include the source hop + // pubkey. HopPubkeys [][]byte `protobuf:"bytes,4,rep,name=hop_pubkeys,json=hopPubkeys,proto3" json:"hop_pubkeys,omitempty"` // An optional payment addr to be included within the last hop of the route. PaymentAddr []byte `protobuf:"bytes,5,opt,name=payment_addr,json=paymentAddr,proto3" json:"payment_addr,omitempty"` @@ -1894,8 +1849,7 @@ type BuildRouteResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //Fully specified route that can be used to execute the payment. + // Fully specified route that can be used to execute the payment. Route *lnrpc.Route `protobuf:"bytes,1,opt,name=route,proto3" json:"route,omitempty"` } @@ -1976,42 +1930,36 @@ func (*SubscribeHtlcEventsRequest) Descriptor() ([]byte, []int) { return file_routerrpc_router_proto_rawDescGZIP(), []int{23} } -// -//HtlcEvent contains the htlc event that was processed. These are served on a -//best-effort basis; events are not persisted, delivery is not guaranteed -//(in the event of a crash in the switch, forward events may be lost) and -//some events may be replayed upon restart. Events consumed from this package -//should be de-duplicated by the htlc's unique combination of incoming and -//outgoing channel id and htlc id. [EXPERIMENTAL] +// HtlcEvent contains the htlc event that was processed. These are served on a +// best-effort basis; events are not persisted, delivery is not guaranteed +// (in the event of a crash in the switch, forward events may be lost) and +// some events may be replayed upon restart. Events consumed from this package +// should be de-duplicated by the htlc's unique combination of incoming and +// outgoing channel id and htlc id. [EXPERIMENTAL] type HtlcEvent struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The short channel id that the incoming htlc arrived at our node on. This - //value is zero for sends. + // The short channel id that the incoming htlc arrived at our node on. This + // value is zero for sends. IncomingChannelId uint64 `protobuf:"varint,1,opt,name=incoming_channel_id,json=incomingChannelId,proto3" json:"incoming_channel_id,omitempty"` - // - //The short channel id that the outgoing htlc left our node on. This value - //is zero for receives. + // The short channel id that the outgoing htlc left our node on. This value + // is zero for receives. OutgoingChannelId uint64 `protobuf:"varint,2,opt,name=outgoing_channel_id,json=outgoingChannelId,proto3" json:"outgoing_channel_id,omitempty"` - // - //Incoming id is the index of the incoming htlc in the incoming channel. - //This value is zero for sends. + // Incoming id is the index of the incoming htlc in the incoming channel. + // This value is zero for sends. IncomingHtlcId uint64 `protobuf:"varint,3,opt,name=incoming_htlc_id,json=incomingHtlcId,proto3" json:"incoming_htlc_id,omitempty"` - // - //Outgoing id is the index of the outgoing htlc in the outgoing channel. - //This value is zero for receives. + // Outgoing id is the index of the outgoing htlc in the outgoing channel. + // This value is zero for receives. OutgoingHtlcId uint64 `protobuf:"varint,4,opt,name=outgoing_htlc_id,json=outgoingHtlcId,proto3" json:"outgoing_htlc_id,omitempty"` - // - //The time in unix nanoseconds that the event occurred. + // The time in unix nanoseconds that the event occurred. TimestampNs uint64 `protobuf:"varint,5,opt,name=timestamp_ns,json=timestampNs,proto3" json:"timestamp_ns,omitempty"` - // - //The event type indicates whether the htlc was part of a send, receive or - //forward. + // The event type indicates whether the htlc was part of a send, receive or + // forward. EventType HtlcEvent_EventType `protobuf:"varint,6,opt,name=event_type,json=eventType,proto3,enum=routerrpc.HtlcEvent_EventType" json:"event_type,omitempty"` // Types that are assignable to Event: + // // *HtlcEvent_ForwardEvent // *HtlcEvent_ForwardFailEvent // *HtlcEvent_SettleEvent @@ -2374,10 +2322,9 @@ type LinkFailEvent struct { Info *HtlcInfo `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"` // FailureCode is the BOLT error code for the failure. WireFailure lnrpc.Failure_FailureCode `protobuf:"varint,2,opt,name=wire_failure,json=wireFailure,proto3,enum=lnrpc.Failure_FailureCode" json:"wire_failure,omitempty"` - // - //FailureDetail provides additional information about the reason for the - //failure. This detail enriches the information provided by the wire message - //and may be 'no detail' if the wire message requires no additional metadata. + // FailureDetail provides additional information about the reason for the + // failure. This detail enriches the information provided by the wire message + // and may be 'no detail' if the wire message requires no additional metadata. FailureDetail FailureDetail `protobuf:"varint,3,opt,name=failure_detail,json=failureDetail,proto3,enum=routerrpc.FailureDetail" json:"failure_detail,omitempty"` // A string representation of the link failure. FailureString string `protobuf:"bytes,4,opt,name=failure_string,json=failureString,proto3" json:"failure_string,omitempty"` @@ -2450,11 +2397,9 @@ type PaymentStatus struct { // Current state the payment is in. State PaymentState `protobuf:"varint,1,opt,name=state,proto3,enum=routerrpc.PaymentState" json:"state,omitempty"` - // - //The pre-image of the payment when state is SUCCEEDED. + // The pre-image of the payment when state is SUCCEEDED. Preimage []byte `protobuf:"bytes,2,opt,name=preimage,proto3" json:"preimage,omitempty"` - // - //The HTLCs made in attempt to settle the payment [EXPERIMENTAL]. + // The HTLCs made in attempt to settle the payment [EXPERIMENTAL]. Htlcs []*lnrpc.HTLCAttempt `protobuf:"bytes,4,rep,name=htlcs,proto3" json:"htlcs,omitempty"` } @@ -2516,9 +2461,9 @@ type CircuitKey struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - /// The id of the channel that the is part of this circuit. + // / The id of the channel that the is part of this circuit. ChanId uint64 `protobuf:"varint,1,opt,name=chan_id,json=chanId,proto3" json:"chan_id,omitempty"` - /// The index of the incoming htlc in the incoming channel. + // / The index of the incoming htlc in the incoming channel. HtlcId uint64 `protobuf:"varint,2,opt,name=htlc_id,json=htlcId,proto3" json:"htlc_id,omitempty"` } @@ -2573,17 +2518,15 @@ type ForwardHtlcInterceptRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The key of this forwarded htlc. It defines the incoming channel id and - //the index in this channel. + // The key of this forwarded htlc. It defines the incoming channel id and + // the index in this channel. IncomingCircuitKey *CircuitKey `protobuf:"bytes,1,opt,name=incoming_circuit_key,json=incomingCircuitKey,proto3" json:"incoming_circuit_key,omitempty"` // The incoming htlc amount. IncomingAmountMsat uint64 `protobuf:"varint,5,opt,name=incoming_amount_msat,json=incomingAmountMsat,proto3" json:"incoming_amount_msat,omitempty"` // The incoming htlc expiry. IncomingExpiry uint32 `protobuf:"varint,6,opt,name=incoming_expiry,json=incomingExpiry,proto3" json:"incoming_expiry,omitempty"` - // - //The htlc payment hash. This value is not guaranteed to be unique per - //request. + // The htlc payment hash. This value is not guaranteed to be unique per + // request. PaymentHash []byte `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"` // The requested outgoing channel id for this forwarded htlc. Because of // non-strict forwarding, this isn't necessarily the channel over which the @@ -2695,20 +2638,20 @@ func (x *ForwardHtlcInterceptRequest) GetOnionBlob() []byte { return nil } -//* -//ForwardHtlcInterceptResponse enables the caller to resolve a previously hold -//forward. The caller can choose either to: -//- `Resume`: Execute the default behavior (usually forward). -//- `Reject`: Fail the htlc backwards. -//- `Settle`: Settle this htlc with a given preimage. +// * +// ForwardHtlcInterceptResponse enables the caller to resolve a previously hold +// forward. The caller can choose either to: +// - `Resume`: Execute the default behavior (usually forward). +// - `Reject`: Fail the htlc backwards. +// - `Settle`: Settle this htlc with a given preimage. type ForwardHtlcInterceptResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - //* - //The key of this forwarded htlc. It defines the incoming channel id and - //the index in this channel. + // * + // The key of this forwarded htlc. It defines the incoming channel id and + // the index in this channel. IncomingCircuitKey *CircuitKey `protobuf:"bytes,1,opt,name=incoming_circuit_key,json=incomingCircuitKey,proto3" json:"incoming_circuit_key,omitempty"` // The resolve action for this intercepted htlc. Action ResolveHoldForwardAction `protobuf:"varint,2,opt,name=action,proto3,enum=routerrpc.ResolveHoldForwardAction" json:"action,omitempty"` diff --git a/lnrpc/routerrpc/router_grpc.pb.go b/lnrpc/routerrpc/router_grpc.pb.go index 4e7f8fda8..a259e399e 100644 --- a/lnrpc/routerrpc/router_grpc.pb.go +++ b/lnrpc/routerrpc/router_grpc.pb.go @@ -19,90 +19,77 @@ const _ = grpc.SupportPackageIsVersion7 // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type RouterClient interface { - // - //SendPaymentV2 attempts to route a payment described by the passed - //PaymentRequest to the final destination. The call returns a stream of - //payment updates. + // SendPaymentV2 attempts to route a payment described by the passed + // PaymentRequest to the final destination. The call returns a stream of + // payment updates. SendPaymentV2(ctx context.Context, in *SendPaymentRequest, opts ...grpc.CallOption) (Router_SendPaymentV2Client, error) - // - //TrackPaymentV2 returns an update stream for the payment identified by the - //payment hash. + // TrackPaymentV2 returns an update stream for the payment identified by the + // payment hash. TrackPaymentV2(ctx context.Context, in *TrackPaymentRequest, opts ...grpc.CallOption) (Router_TrackPaymentV2Client, error) - // - //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. + // 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. EstimateRouteFee(ctx context.Context, in *RouteFeeRequest, opts ...grpc.CallOption) (*RouteFeeResponse, error) // Deprecated: Do not use. // - //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, 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. SendToRoute(ctx context.Context, in *SendToRouteRequest, opts ...grpc.CallOption) (*SendToRouteResponse, error) - // - //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. + // 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. SendToRouteV2(ctx context.Context, in *SendToRouteRequest, opts ...grpc.CallOption) (*lnrpc.HTLCAttempt, error) - // - //ResetMissionControl clears all mission control state and starts with a clean - //slate. + // ResetMissionControl clears all mission control state and starts with a clean + // slate. ResetMissionControl(ctx context.Context, in *ResetMissionControlRequest, opts ...grpc.CallOption) (*ResetMissionControlResponse, error) - // - //QueryMissionControl exposes the internal mission control state to callers. - //It is a development feature. + // QueryMissionControl exposes the internal mission control state to callers. + // It is a development feature. QueryMissionControl(ctx context.Context, in *QueryMissionControlRequest, opts ...grpc.CallOption) (*QueryMissionControlResponse, error) - // - //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. + // 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. XImportMissionControl(ctx context.Context, in *XImportMissionControlRequest, opts ...grpc.CallOption) (*XImportMissionControlResponse, error) - // - //GetMissionControlConfig returns mission control's current config. + // GetMissionControlConfig returns mission control's current config. GetMissionControlConfig(ctx context.Context, in *GetMissionControlConfigRequest, opts ...grpc.CallOption) (*GetMissionControlConfigResponse, error) - // - //SetMissionControlConfig will set mission control's config, if the config - //provided is valid. + // SetMissionControlConfig will set mission control's config, if the config + // provided is valid. SetMissionControlConfig(ctx context.Context, in *SetMissionControlConfigRequest, opts ...grpc.CallOption) (*SetMissionControlConfigResponse, error) - // - //QueryProbability returns the current success probability estimate for a - //given node pair and amount. + // QueryProbability returns the current success probability estimate for a + // given node pair and amount. QueryProbability(ctx context.Context, in *QueryProbabilityRequest, opts ...grpc.CallOption) (*QueryProbabilityResponse, error) - // - //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. + // 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. BuildRoute(ctx context.Context, in *BuildRouteRequest, opts ...grpc.CallOption) (*BuildRouteResponse, error) - // - //SubscribeHtlcEvents creates a uni-directional stream from the server to - //the client which delivers a stream of htlc events. + // SubscribeHtlcEvents creates a uni-directional stream from the server to + // the client which delivers a stream of htlc events. SubscribeHtlcEvents(ctx context.Context, in *SubscribeHtlcEventsRequest, opts ...grpc.CallOption) (Router_SubscribeHtlcEventsClient, error) // Deprecated: Do not use. // - //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, 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. SendPayment(ctx context.Context, in *SendPaymentRequest, opts ...grpc.CallOption) (Router_SendPaymentClient, error) // Deprecated: Do not use. // - //Deprecated, use TrackPaymentV2. TrackPayment returns an update stream for - //the payment identified by the payment hash. + // Deprecated, use TrackPaymentV2. TrackPayment returns an update stream for + // the payment identified by the payment hash. TrackPayment(ctx context.Context, in *TrackPaymentRequest, opts ...grpc.CallOption) (Router_TrackPaymentClient, error) - //* - //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. + // * + // 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. HtlcInterceptor(ctx context.Context, opts ...grpc.CallOption) (Router_HtlcInterceptorClient, error) - // - //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". + // 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". UpdateChanStatus(ctx context.Context, in *UpdateChanStatusRequest, opts ...grpc.CallOption) (*UpdateChanStatusResponse, error) } @@ -411,90 +398,77 @@ func (c *routerClient) UpdateChanStatus(ctx context.Context, in *UpdateChanStatu // All implementations must embed UnimplementedRouterServer // for forward compatibility type RouterServer interface { - // - //SendPaymentV2 attempts to route a payment described by the passed - //PaymentRequest to the final destination. The call returns a stream of - //payment updates. + // SendPaymentV2 attempts to route a payment described by the passed + // PaymentRequest to the final destination. The call returns a stream of + // payment updates. SendPaymentV2(*SendPaymentRequest, Router_SendPaymentV2Server) error - // - //TrackPaymentV2 returns an update stream for the payment identified by the - //payment hash. + // TrackPaymentV2 returns an update stream for the payment identified by the + // payment hash. TrackPaymentV2(*TrackPaymentRequest, Router_TrackPaymentV2Server) error - // - //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. + // 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. EstimateRouteFee(context.Context, *RouteFeeRequest) (*RouteFeeResponse, error) // Deprecated: Do not use. // - //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, 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. SendToRoute(context.Context, *SendToRouteRequest) (*SendToRouteResponse, error) - // - //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. + // 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. SendToRouteV2(context.Context, *SendToRouteRequest) (*lnrpc.HTLCAttempt, error) - // - //ResetMissionControl clears all mission control state and starts with a clean - //slate. + // ResetMissionControl clears all mission control state and starts with a clean + // slate. ResetMissionControl(context.Context, *ResetMissionControlRequest) (*ResetMissionControlResponse, error) - // - //QueryMissionControl exposes the internal mission control state to callers. - //It is a development feature. + // QueryMissionControl exposes the internal mission control state to callers. + // It is a development feature. QueryMissionControl(context.Context, *QueryMissionControlRequest) (*QueryMissionControlResponse, error) - // - //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. + // 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. XImportMissionControl(context.Context, *XImportMissionControlRequest) (*XImportMissionControlResponse, error) - // - //GetMissionControlConfig returns mission control's current config. + // GetMissionControlConfig returns mission control's current config. GetMissionControlConfig(context.Context, *GetMissionControlConfigRequest) (*GetMissionControlConfigResponse, error) - // - //SetMissionControlConfig will set mission control's config, if the config - //provided is valid. + // SetMissionControlConfig will set mission control's config, if the config + // provided is valid. SetMissionControlConfig(context.Context, *SetMissionControlConfigRequest) (*SetMissionControlConfigResponse, error) - // - //QueryProbability returns the current success probability estimate for a - //given node pair and amount. + // QueryProbability returns the current success probability estimate for a + // given node pair and amount. QueryProbability(context.Context, *QueryProbabilityRequest) (*QueryProbabilityResponse, error) - // - //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. + // 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. BuildRoute(context.Context, *BuildRouteRequest) (*BuildRouteResponse, error) - // - //SubscribeHtlcEvents creates a uni-directional stream from the server to - //the client which delivers a stream of htlc events. + // SubscribeHtlcEvents creates a uni-directional stream from the server to + // the client which delivers a stream of htlc events. SubscribeHtlcEvents(*SubscribeHtlcEventsRequest, Router_SubscribeHtlcEventsServer) error // Deprecated: Do not use. // - //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, 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. SendPayment(*SendPaymentRequest, Router_SendPaymentServer) error // Deprecated: Do not use. // - //Deprecated, use TrackPaymentV2. TrackPayment returns an update stream for - //the payment identified by the payment hash. + // Deprecated, use TrackPaymentV2. TrackPayment returns an update stream for + // the payment identified by the payment hash. TrackPayment(*TrackPaymentRequest, Router_TrackPaymentServer) error - //* - //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. + // * + // 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. HtlcInterceptor(Router_HtlcInterceptorServer) error - // - //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". + // 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". UpdateChanStatus(context.Context, *UpdateChanStatusRequest) (*UpdateChanStatusResponse, error) mustEmbedUnimplementedRouterServer() } diff --git a/lnrpc/signrpc/signer.pb.go b/lnrpc/signrpc/signer.pb.go index 21bee401e..204f0bd3c 100644 --- a/lnrpc/signrpc/signer.pb.go +++ b/lnrpc/signrpc/signer.pb.go @@ -23,21 +23,17 @@ const ( type SignMethod int32 const ( - // - //Specifies that a SegWit v0 (p2wkh, np2wkh, p2wsh) input script should be - //signed. + // Specifies that a SegWit v0 (p2wkh, np2wkh, p2wsh) input script should be + // signed. SignMethod_SIGN_METHOD_WITNESS_V0 SignMethod = 0 - // - //Specifies that a SegWit v1 (p2tr) input should be signed by using the - //BIP0086 method (commit to internal key only). + // Specifies that a SegWit v1 (p2tr) input should be signed by using the + // BIP0086 method (commit to internal key only). SignMethod_SIGN_METHOD_TAPROOT_KEY_SPEND_BIP0086 SignMethod = 1 - // - //Specifies that a SegWit v1 (p2tr) input should be signed by using a given - //taproot hash to commit to in addition to the internal key. + // Specifies that a SegWit v1 (p2tr) input should be signed by using a given + // taproot hash to commit to in addition to the internal key. SignMethod_SIGN_METHOD_TAPROOT_KEY_SPEND SignMethod = 2 - // - //Specifies that a SegWit v1 (p2tr) input should be spent using the script - //path and that a specific leaf script should be signed for. + // Specifies that a SegWit v1 (p2tr) input should be spent using the script + // path and that a specific leaf script should be signed for. SignMethod_SIGN_METHOD_TAPROOT_SCRIPT_SPEND SignMethod = 3 ) @@ -146,13 +142,11 @@ type KeyDescriptor struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The raw bytes of the public key in the key pair being identified. Either - //this or the KeyLocator must be specified. + // The raw bytes of the public key in the key pair being identified. Either + // this or the KeyLocator must be specified. RawKeyBytes []byte `protobuf:"bytes,1,opt,name=raw_key_bytes,json=rawKeyBytes,proto3" json:"raw_key_bytes,omitempty"` - // - //The key locator that identifies which private key to use for signing. - //Either this or the raw bytes of the target public key must be specified. + // The key locator that identifies which private key to use for signing. + // Either this or the raw bytes of the target public key must be specified. KeyLoc *KeyLocator `protobuf:"bytes,2,opt,name=key_loc,json=keyLoc,proto3" json:"key_loc,omitempty"` } @@ -264,65 +258,56 @@ type SignDescriptor struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields + // A descriptor that precisely describes *which* key to use for signing. This + // may provide the raw public key directly, or require the Signer to re-derive + // the key according to the populated derivation path. // - //A descriptor that precisely describes *which* key to use for signing. This - //may provide the raw public key directly, or require the Signer to re-derive - //the key according to the populated derivation path. - // - //Note that if the key descriptor was obtained through walletrpc.DeriveKey, - //then the key locator MUST always be provided, since the derived keys are not - //persisted unlike with DeriveNextKey. + // Note that if the key descriptor was obtained through walletrpc.DeriveKey, + // then the key locator MUST always be provided, since the derived keys are not + // persisted unlike with DeriveNextKey. KeyDesc *KeyDescriptor `protobuf:"bytes,1,opt,name=key_desc,json=keyDesc,proto3" json:"key_desc,omitempty"` - // - //A scalar value that will be added to the private key corresponding to the - //above public key to obtain the private key to be used to sign this input. - //This value is typically derived via the following computation: + // A scalar value that will be added to the private key corresponding to the + // above public key to obtain the private key to be used to sign this input. + // This value is typically derived via the following computation: // // derivedKey = privkey + sha256(perCommitmentPoint || pubKey) mod N SingleTweak []byte `protobuf:"bytes,2,opt,name=single_tweak,json=singleTweak,proto3" json:"single_tweak,omitempty"` - // - //A private key that will be used in combination with its corresponding - //private key to derive the private key that is to be used to sign the target - //input. Within the Lightning protocol, this value is typically the - //commitment secret from a previously revoked commitment transaction. This - //value is in combination with two hash values, and the original private key - //to derive the private key to be used when signing. + // A private key that will be used in combination with its corresponding + // private key to derive the private key that is to be used to sign the target + // input. Within the Lightning protocol, this value is typically the + // commitment secret from a previously revoked commitment transaction. This + // value is in combination with two hash values, and the original private key + // to derive the private key to be used when signing. // // k = (privKey*sha256(pubKey || tweakPub) + - //tweakPriv*sha256(tweakPub || pubKey)) mod N + // tweakPriv*sha256(tweakPub || pubKey)) mod N DoubleTweak []byte `protobuf:"bytes,3,opt,name=double_tweak,json=doubleTweak,proto3" json:"double_tweak,omitempty"` + // The 32 byte input to the taproot tweak derivation that is used to derive + // the output key from an internal key: outputKey = internalKey + + // tagged_hash("tapTweak", internalKey || tapTweak). // - //The 32 byte input to the taproot tweak derivation that is used to derive - //the output key from an internal key: outputKey = internalKey + - //tagged_hash("tapTweak", internalKey || tapTweak). + // When doing a BIP 86 spend, this field can be an empty byte slice. // - //When doing a BIP 86 spend, this field can be an empty byte slice. - // - //When doing a normal key path spend, with the output key committing to an - //actual script root, then this field should be: the tapscript root hash. + // When doing a normal key path spend, with the output key committing to an + // actual script root, then this field should be: the tapscript root hash. TapTweak []byte `protobuf:"bytes,10,opt,name=tap_tweak,json=tapTweak,proto3" json:"tap_tweak,omitempty"` - // - //The full script required to properly redeem the output. This field will - //only be populated if a p2tr, p2wsh or a p2sh output is being signed. If a - //taproot script path spend is being attempted, then this should be the raw - //leaf script. + // The full script required to properly redeem the output. This field will + // only be populated if a p2tr, p2wsh or a p2sh output is being signed. If a + // taproot script path spend is being attempted, then this should be the raw + // leaf script. WitnessScript []byte `protobuf:"bytes,4,opt,name=witness_script,json=witnessScript,proto3" json:"witness_script,omitempty"` - // - //A description of the output being spent. The value and script MUST be - //provided. + // A description of the output being spent. The value and script MUST be + // provided. Output *TxOut `protobuf:"bytes,5,opt,name=output,proto3" json:"output,omitempty"` - // - //The target sighash type that should be used when generating the final - //sighash, and signature. + // The target sighash type that should be used when generating the final + // sighash, and signature. Sighash uint32 `protobuf:"varint,7,opt,name=sighash,proto3" json:"sighash,omitempty"` - // - //The target input within the transaction that should be signed. + // The target input within the transaction that should be signed. InputIndex int32 `protobuf:"varint,8,opt,name=input_index,json=inputIndex,proto3" json:"input_index,omitempty"` - // - //The sign method specifies how the input should be signed. Depending on the - //method, either the tap_tweak, witness_script or both need to be specified. - //Defaults to SegWit v0 signing to be backward compatible with older RPC - //clients. + // The sign method specifies how the input should be signed. Depending on the + // method, either the tap_tweak, witness_script or both need to be specified. + // Defaults to SegWit v0 signing to be backward compatible with older RPC + // clients. SignMethod SignMethod `protobuf:"varint,9,opt,name=sign_method,json=signMethod,proto3,enum=signrpc.SignMethod" json:"sign_method,omitempty"` } @@ -430,9 +415,8 @@ type SignReq struct { RawTxBytes []byte `protobuf:"bytes,1,opt,name=raw_tx_bytes,json=rawTxBytes,proto3" json:"raw_tx_bytes,omitempty"` // A set of sign descriptors, for each input to be signed. SignDescs []*SignDescriptor `protobuf:"bytes,2,rep,name=sign_descs,json=signDescs,proto3" json:"sign_descs,omitempty"` - // - //The full list of UTXO information for each of the inputs being spent. This - //is required when spending one or more taproot (SegWit v1) outputs. + // The full list of UTXO information for each of the inputs being spent. This + // is required when spending one or more taproot (SegWit v1) outputs. PrevOutputs []*TxOut `protobuf:"bytes,3,rep,name=prev_outputs,json=prevOutputs,proto3" json:"prev_outputs,omitempty"` } @@ -494,9 +478,8 @@ type SignResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //A set of signatures realized in a fixed 64-byte format ordered in ascending - //input order. + // A set of signatures realized in a fixed 64-byte format ordered in ascending + // input order. RawSigs [][]byte `protobuf:"bytes,1,rep,name=raw_sigs,json=rawSigs,proto3" json:"raw_sigs,omitempty"` } @@ -546,9 +529,8 @@ type InputScript struct { // The serializes witness stack for the specified input. Witness [][]byte `protobuf:"bytes,1,rep,name=witness,proto3" json:"witness,omitempty"` - // - //The optional sig script for the specified witness that will only be set if - //the input specified is a nested p2sh witness program. + // The optional sig script for the specified witness that will only be set if + // the input specified is a nested p2sh witness program. SigScript []byte `protobuf:"bytes,2,opt,name=sig_script,json=sigScript,proto3" json:"sig_script,omitempty"` } @@ -651,25 +633,21 @@ type SignMessageReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The message to be signed. When using REST, this field must be encoded as - //base64. + // The message to be signed. When using REST, this field must be encoded as + // base64. Msg []byte `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"` // The key locator that identifies which key to use for signing. KeyLoc *KeyLocator `protobuf:"bytes,2,opt,name=key_loc,json=keyLoc,proto3" json:"key_loc,omitempty"` // Double-SHA256 hash instead of just the default single round. DoubleHash bool `protobuf:"varint,3,opt,name=double_hash,json=doubleHash,proto3" json:"double_hash,omitempty"` - // - //Use the compact (pubkey recoverable) format instead of the raw lnwire - //format. This option cannot be used with Schnorr signatures. + // Use the compact (pubkey recoverable) format instead of the raw lnwire + // format. This option cannot be used with Schnorr signatures. CompactSig bool `protobuf:"varint,4,opt,name=compact_sig,json=compactSig,proto3" json:"compact_sig,omitempty"` - // - //Use Schnorr signature. This option cannot be used with compact format. + // Use Schnorr signature. This option cannot be used with compact format. SchnorrSig bool `protobuf:"varint,5,opt,name=schnorr_sig,json=schnorrSig,proto3" json:"schnorr_sig,omitempty"` - // - //The optional Taproot tweak bytes to apply to the private key before creating - //a Schnorr signature. The private key is tweaked as described in BIP-341: - //privKey + h_tapTweak(internalKey || tapTweak) + // The optional Taproot tweak bytes to apply to the private key before creating + // a Schnorr signature. The private key is tweaked as described in BIP-341: + // privKey + h_tapTweak(internalKey || tapTweak) SchnorrSigTapTweak []byte `protobuf:"bytes,6,opt,name=schnorr_sig_tap_tweak,json=schnorrSigTapTweak,proto3" json:"schnorr_sig_tap_tweak,omitempty"` } @@ -752,8 +730,7 @@ type SignMessageResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The signature for the given message in the fixed-size LN wire format. + // The signature for the given message in the fixed-size LN wire format. Signature []byte `protobuf:"bytes,1,opt,name=signature,proto3" json:"signature,omitempty"` } @@ -804,18 +781,15 @@ type VerifyMessageReq struct { // The message over which the signature is to be verified. When using // REST, this field must be encoded as base64. Msg []byte `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"` - // - //The fixed-size LN wire encoded signature to be verified over the given - //message. When using REST, this field must be encoded as base64. + // The fixed-size LN wire encoded signature to be verified over the given + // message. When using REST, this field must be encoded as base64. Signature []byte `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"` - // - //The public key the signature has to be valid for. When using REST, this - //field must be encoded as base64. If the is_schnorr_sig option is true, then - //the public key is expected to be in the 32-byte x-only serialization - //according to BIP-340. + // The public key the signature has to be valid for. When using REST, this + // field must be encoded as base64. If the is_schnorr_sig option is true, then + // the public key is expected to be in the 32-byte x-only serialization + // according to BIP-340. Pubkey []byte `protobuf:"bytes,3,opt,name=pubkey,proto3" json:"pubkey,omitempty"` - // - //Specifies if the signature is a Schnorr signature. + // Specifies if the signature is a Schnorr signature. IsSchnorrSig bool `protobuf:"varint,4,opt,name=is_schnorr_sig,json=isSchnorrSig,proto3" json:"is_schnorr_sig,omitempty"` } @@ -934,17 +908,15 @@ type SharedKeyRequest struct { // The ephemeral public key to use for the DH key derivation. EphemeralPubkey []byte `protobuf:"bytes,1,opt,name=ephemeral_pubkey,json=ephemeralPubkey,proto3" json:"ephemeral_pubkey,omitempty"` - // - //Deprecated. The optional key locator of the local key that should be used. - //If this parameter is not set then the node's identity private key will be - //used. + // Deprecated. The optional key locator of the local key that should be used. + // If this parameter is not set then the node's identity private key will be + // used. // // Deprecated: Do not use. KeyLoc *KeyLocator `protobuf:"bytes,2,opt,name=key_loc,json=keyLoc,proto3" json:"key_loc,omitempty"` - // - //A key descriptor describes the key used for performing ECDH. Either a key - //locator or a raw public key is expected, if neither is supplied, defaults to - //the node's identity private key. + // A key descriptor describes the key used for performing ECDH. Either a key + // locator or a raw public key is expected, if neither is supplied, defaults to + // the node's identity private key. KeyDesc *KeyDescriptor `protobuf:"bytes,3,opt,name=key_desc,json=keyDesc,proto3" json:"key_desc,omitempty"` } @@ -1055,13 +1027,11 @@ type TweakDesc struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //Tweak is the 32-byte value that will modify the public key. + // Tweak is the 32-byte value that will modify the public key. Tweak []byte `protobuf:"bytes,1,opt,name=tweak,proto3" json:"tweak,omitempty"` - // - //Specifies if the target key should be converted to an x-only public key - //before tweaking. If true, then the public key will be mapped to an x-only - //key before the tweaking operation is applied. + // Specifies if the target key should be converted to an x-only public key + // before tweaking. If true, then the public key will be mapped to an x-only + // key before the tweaking operation is applied. IsXOnly bool `protobuf:"varint,2,opt,name=is_x_only,json=isXOnly,proto3" json:"is_x_only,omitempty"` } @@ -1116,18 +1086,16 @@ type TaprootTweakDesc struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The root hash of the tapscript tree if a script path is committed to. If - //the MuSig2 key put on chain doesn't also commit to a script path (BIP-0086 - //key spend only), then this needs to be empty and the key_spend_only field - //below must be set to true. This is required because gRPC cannot - //differentiate between a zero-size byte slice and a nil byte slice (both - //would be serialized the same way). So the extra boolean is required. + // The root hash of the tapscript tree if a script path is committed to. If + // the MuSig2 key put on chain doesn't also commit to a script path (BIP-0086 + // key spend only), then this needs to be empty and the key_spend_only field + // below must be set to true. This is required because gRPC cannot + // differentiate between a zero-size byte slice and a nil byte slice (both + // would be serialized the same way). So the extra boolean is required. ScriptRoot []byte `protobuf:"bytes,1,opt,name=script_root,json=scriptRoot,proto3" json:"script_root,omitempty"` - // - //Indicates that the above script_root is expected to be empty because this - //is a BIP-0086 key spend only commitment where only the internal key is - //committed to instead of also including a script root hash. + // Indicates that the above script_root is expected to be empty because this + // is a BIP-0086 key spend only commitment where only the internal key is + // committed to instead of also including a script root hash. KeySpendOnly bool `protobuf:"varint,2,opt,name=key_spend_only,json=keySpendOnly,proto3" json:"key_spend_only,omitempty"` } @@ -1182,20 +1150,17 @@ type MuSig2CombineKeysRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //A list of all public keys (serialized in 32-byte x-only format!) - //participating in the signing session. The list will always be sorted - //lexicographically internally. This must include the local key which is - //described by the above key_loc. + // A list of all public keys (serialized in 32-byte x-only format!) + // participating in the signing session. The list will always be sorted + // lexicographically internally. This must include the local key which is + // described by the above key_loc. AllSignerPubkeys [][]byte `protobuf:"bytes,1,rep,name=all_signer_pubkeys,json=allSignerPubkeys,proto3" json:"all_signer_pubkeys,omitempty"` - // - //A series of optional generic tweaks to be applied to the the aggregated - //public key. + // A series of optional generic tweaks to be applied to the the aggregated + // public key. Tweaks []*TweakDesc `protobuf:"bytes,2,rep,name=tweaks,proto3" json:"tweaks,omitempty"` - // - //An optional taproot specific tweak that must be specified if the MuSig2 - //combined key will be used as the main taproot key of a taproot output - //on-chain. + // An optional taproot specific tweak that must be specified if the MuSig2 + // combined key will be used as the main taproot key of a taproot output + // on-chain. TaprootTweak *TaprootTweakDesc `protobuf:"bytes,3,opt,name=taproot_tweak,json=taprootTweak,proto3" json:"taproot_tweak,omitempty"` } @@ -1257,16 +1222,14 @@ type MuSig2CombineKeysResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The combined public key (in the 32-byte x-only format) with all tweaks - //applied to it. If a taproot tweak is specified, this corresponds to the - //taproot key that can be put into the on-chain output. + // The combined public key (in the 32-byte x-only format) with all tweaks + // applied to it. If a taproot tweak is specified, this corresponds to the + // taproot key that can be put into the on-chain output. CombinedKey []byte `protobuf:"bytes,1,opt,name=combined_key,json=combinedKey,proto3" json:"combined_key,omitempty"` - // - //The raw combined public key (in the 32-byte x-only format) before any tweaks - //are applied to it. If a taproot tweak is specified, this corresponds to the - //internal key that needs to be put into the witness if the script spend path - //is used. + // The raw combined public key (in the 32-byte x-only format) before any tweaks + // are applied to it. If a taproot tweak is specified, this corresponds to the + // internal key that needs to be put into the witness if the script spend path + // is used. TaprootInternalKey []byte `protobuf:"bytes,2,opt,name=taproot_internal_key,json=taprootInternalKey,proto3" json:"taproot_internal_key,omitempty"` } @@ -1321,27 +1284,22 @@ type MuSig2SessionRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The key locator that identifies which key to use for signing. + // The key locator that identifies which key to use for signing. KeyLoc *KeyLocator `protobuf:"bytes,1,opt,name=key_loc,json=keyLoc,proto3" json:"key_loc,omitempty"` - // - //A list of all public keys (serialized in 32-byte x-only format!) - //participating in the signing session. The list will always be sorted - //lexicographically internally. This must include the local key which is - //described by the above key_loc. + // A list of all public keys (serialized in 32-byte x-only format!) + // participating in the signing session. The list will always be sorted + // lexicographically internally. This must include the local key which is + // described by the above key_loc. AllSignerPubkeys [][]byte `protobuf:"bytes,2,rep,name=all_signer_pubkeys,json=allSignerPubkeys,proto3" json:"all_signer_pubkeys,omitempty"` - // - //An optional list of all public nonces of other signing participants that - //might already be known. + // An optional list of all public nonces of other signing participants that + // might already be known. OtherSignerPublicNonces [][]byte `protobuf:"bytes,3,rep,name=other_signer_public_nonces,json=otherSignerPublicNonces,proto3" json:"other_signer_public_nonces,omitempty"` - // - //A series of optional generic tweaks to be applied to the the aggregated - //public key. + // A series of optional generic tweaks to be applied to the the aggregated + // public key. Tweaks []*TweakDesc `protobuf:"bytes,4,rep,name=tweaks,proto3" json:"tweaks,omitempty"` - // - //An optional taproot specific tweak that must be specified if the MuSig2 - //combined key will be used as the main taproot key of a taproot output - //on-chain. + // An optional taproot specific tweak that must be specified if the MuSig2 + // combined key will be used as the main taproot key of a taproot output + // on-chain. TaprootTweak *TaprootTweakDesc `protobuf:"bytes,5,opt,name=taproot_tweak,json=taprootTweak,proto3" json:"taproot_tweak,omitempty"` } @@ -1417,30 +1375,25 @@ type MuSig2SessionResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The unique ID that represents this signing session. A session can be used - //for producing a signature a single time. If the signing fails for any - //reason, a new session with the same participants needs to be created. + // The unique ID that represents this signing session. A session can be used + // for producing a signature a single time. If the signing fails for any + // reason, a new session with the same participants needs to be created. SessionId []byte `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"` - // - //The combined public key (in the 32-byte x-only format) with all tweaks - //applied to it. If a taproot tweak is specified, this corresponds to the - //taproot key that can be put into the on-chain output. + // The combined public key (in the 32-byte x-only format) with all tweaks + // applied to it. If a taproot tweak is specified, this corresponds to the + // taproot key that can be put into the on-chain output. CombinedKey []byte `protobuf:"bytes,2,opt,name=combined_key,json=combinedKey,proto3" json:"combined_key,omitempty"` - // - //The raw combined public key (in the 32-byte x-only format) before any tweaks - //are applied to it. If a taproot tweak is specified, this corresponds to the - //internal key that needs to be put into the witness if the script spend path - //is used. + // The raw combined public key (in the 32-byte x-only format) before any tweaks + // are applied to it. If a taproot tweak is specified, this corresponds to the + // internal key that needs to be put into the witness if the script spend path + // is used. TaprootInternalKey []byte `protobuf:"bytes,3,opt,name=taproot_internal_key,json=taprootInternalKey,proto3" json:"taproot_internal_key,omitempty"` - // - //The two public nonces the local signer uses, combined into a single value - //of 66 bytes. Can be split into the two 33-byte points to get the individual - //nonces. + // The two public nonces the local signer uses, combined into a single value + // of 66 bytes. Can be split into the two 33-byte points to get the individual + // nonces. LocalPublicNonces []byte `protobuf:"bytes,4,opt,name=local_public_nonces,json=localPublicNonces,proto3" json:"local_public_nonces,omitempty"` - // - //Indicates whether all nonces required to start the signing process are known - //now. + // Indicates whether all nonces required to start the signing process are known + // now. HaveAllNonces bool `protobuf:"varint,5,opt,name=have_all_nonces,json=haveAllNonces,proto3" json:"have_all_nonces,omitempty"` } @@ -1516,12 +1469,10 @@ type MuSig2RegisterNoncesRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The unique ID of the signing session those nonces should be registered with. + // The unique ID of the signing session those nonces should be registered with. SessionId []byte `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"` - // - //A list of all public nonces of other signing participants that should be - //registered. + // A list of all public nonces of other signing participants that should be + // registered. OtherSignerPublicNonces [][]byte `protobuf:"bytes,3,rep,name=other_signer_public_nonces,json=otherSignerPublicNonces,proto3" json:"other_signer_public_nonces,omitempty"` } @@ -1576,9 +1527,8 @@ type MuSig2RegisterNoncesResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //Indicates whether all nonces required to start the signing process are known - //now. + // Indicates whether all nonces required to start the signing process are known + // now. HaveAllNonces bool `protobuf:"varint,1,opt,name=have_all_nonces,json=haveAllNonces,proto3" json:"have_all_nonces,omitempty"` } @@ -1626,16 +1576,13 @@ type MuSig2SignRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The unique ID of the signing session to use for signing. + // The unique ID of the signing session to use for signing. SessionId []byte `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"` - // - //The 32-byte SHA256 digest of the message to sign. + // The 32-byte SHA256 digest of the message to sign. MessageDigest []byte `protobuf:"bytes,2,opt,name=message_digest,json=messageDigest,proto3" json:"message_digest,omitempty"` - // - //Cleanup indicates that after signing, the session state can be cleaned up, - //since another participant is going to be responsible for combining the - //partial signatures. + // Cleanup indicates that after signing, the session state can be cleaned up, + // since another participant is going to be responsible for combining the + // partial signatures. Cleanup bool `protobuf:"varint,3,opt,name=cleanup,proto3" json:"cleanup,omitempty"` } @@ -1697,8 +1644,7 @@ type MuSig2SignResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The partial signature created by the local signer. + // The partial signature created by the local signer. LocalPartialSignature []byte `protobuf:"bytes,1,opt,name=local_partial_signature,json=localPartialSignature,proto3" json:"local_partial_signature,omitempty"` } @@ -1746,12 +1692,10 @@ type MuSig2CombineSigRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The unique ID of the signing session to combine the signatures for. + // The unique ID of the signing session to combine the signatures for. SessionId []byte `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"` - // - //The list of all other participants' partial signatures to add to the current - //session. + // The list of all other participants' partial signatures to add to the current + // session. OtherPartialSignatures [][]byte `protobuf:"bytes,2,rep,name=other_partial_signatures,json=otherPartialSignatures,proto3" json:"other_partial_signatures,omitempty"` } @@ -1806,13 +1750,11 @@ type MuSig2CombineSigResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //Indicates whether all partial signatures required to create a final, full - //signature are known yet. If this is true, then the final_signature field is - //set, otherwise it is empty. + // Indicates whether all partial signatures required to create a final, full + // signature are known yet. If this is true, then the final_signature field is + // set, otherwise it is empty. HaveAllSignatures bool `protobuf:"varint,1,opt,name=have_all_signatures,json=haveAllSignatures,proto3" json:"have_all_signatures,omitempty"` - // - //The final, full signature that is valid for the combined public key. + // The final, full signature that is valid for the combined public key. FinalSignature []byte `protobuf:"bytes,2,opt,name=final_signature,json=finalSignature,proto3" json:"final_signature,omitempty"` } @@ -1867,8 +1809,7 @@ type MuSig2CleanupRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The unique ID of the signing session that should be removed/cleaned up. + // The unique ID of the signing session that should be removed/cleaned up. SessionId []byte `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"` } diff --git a/lnrpc/signrpc/signer_grpc.pb.go b/lnrpc/signrpc/signer_grpc.pb.go index e8017b4a8..304b56aa8 100644 --- a/lnrpc/signrpc/signer_grpc.pb.go +++ b/lnrpc/signrpc/signer_grpc.pb.go @@ -18,116 +18,105 @@ const _ = grpc.SupportPackageIsVersion7 // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type SignerClient interface { + // SignOutputRaw is a method that can be used to generated a signature for a + // set of inputs/outputs to a transaction. Each request specifies details + // concerning how the outputs should be signed, which keys they should be + // signed with, and also any optional tweaks. The return value is a fixed + // 64-byte signature (the same format as we use on the wire in Lightning). // - //SignOutputRaw is a method that can be used to generated a signature for a - //set of inputs/outputs to a transaction. Each request specifies details - //concerning how the outputs should be signed, which keys they should be - //signed with, and also any optional tweaks. The return value is a fixed - //64-byte signature (the same format as we use on the wire in Lightning). - // - //If we are unable to sign using the specified keys, then an error will be - //returned. + // If we are unable to sign using the specified keys, then an error will be + // returned. SignOutputRaw(ctx context.Context, in *SignReq, opts ...grpc.CallOption) (*SignResp, error) + // ComputeInputScript generates a complete InputIndex for the passed + // transaction with the signature as defined within the passed SignDescriptor. + // This method should be capable of generating the proper input script for both + // regular p2wkh/p2tr outputs and p2wkh outputs nested within a regular p2sh + // output. // - //ComputeInputScript generates a complete InputIndex for the passed - //transaction with the signature as defined within the passed SignDescriptor. - //This method should be capable of generating the proper input script for both - //regular p2wkh/p2tr outputs and p2wkh outputs nested within a regular p2sh - //output. - // - //Note that when using this method to sign inputs belonging to the wallet, - //the only items of the SignDescriptor that need to be populated are pkScript - //in the TxOut field, the value in that same field, and finally the input - //index. + // Note that when using this method to sign inputs belonging to the wallet, + // the only items of the SignDescriptor that need to be populated are pkScript + // in the TxOut field, the value in that same field, and finally the input + // index. ComputeInputScript(ctx context.Context, in *SignReq, opts ...grpc.CallOption) (*InputScriptResp, error) + // SignMessage signs a message with the key specified in the key locator. The + // returned signature is fixed-size LN wire format encoded. // - //SignMessage signs a message with the key specified in the key locator. The - //returned signature is fixed-size LN wire format encoded. - // - //The main difference to SignMessage in the main RPC is that a specific key is - //used to sign the message instead of the node identity private key. + // The main difference to SignMessage in the main RPC is that a specific key is + // used to sign the message instead of the node identity private key. SignMessage(ctx context.Context, in *SignMessageReq, opts ...grpc.CallOption) (*SignMessageResp, error) + // VerifyMessage verifies a signature over a message using the public key + // provided. The signature must be fixed-size LN wire format encoded. // - //VerifyMessage verifies a signature over a message using the public key - //provided. The signature must be fixed-size LN wire format encoded. - // - //The main difference to VerifyMessage in the main RPC is that the public key - //used to sign the message does not have to be a node known to the network. + // The main difference to VerifyMessage in the main RPC is that the public key + // used to sign the message does not have to be a node known to the network. VerifyMessage(ctx context.Context, in *VerifyMessageReq, opts ...grpc.CallOption) (*VerifyMessageResp, error) - // - //DeriveSharedKey returns a shared secret key by performing Diffie-Hellman key - //derivation between the ephemeral public key in the request and the node's - //key specified in the key_desc parameter. Either a key locator or a raw - //public key is expected in the key_desc, if neither is supplied, defaults to - //the node's identity private key: - //P_shared = privKeyNode * ephemeralPubkey - //The resulting shared public key is serialized in the compressed format and - //hashed with sha256, resulting in the final key length of 256bit. + // DeriveSharedKey returns a shared secret key by performing Diffie-Hellman key + // derivation between the ephemeral public key in the request and the node's + // key specified in the key_desc parameter. Either a key locator or a raw + // public key is expected in the key_desc, if neither is supplied, defaults to + // the node's identity private key: + // P_shared = privKeyNode * ephemeralPubkey + // The resulting shared public key is serialized in the compressed format and + // hashed with sha256, resulting in the final key length of 256bit. DeriveSharedKey(ctx context.Context, in *SharedKeyRequest, opts ...grpc.CallOption) (*SharedKeyResponse, error) + // MuSig2CombineKeys (experimental!) is a stateless helper RPC that can be used + // to calculate the combined MuSig2 public key from a list of all participating + // signers' public keys. This RPC is completely stateless and deterministic and + // does not create any signing session. It can be used to determine the Taproot + // public key that should be put in an on-chain output once all public keys are + // known. A signing session is only needed later when that output should be + // _spent_ again. // - //MuSig2CombineKeys (experimental!) is a stateless helper RPC that can be used - //to calculate the combined MuSig2 public key from a list of all participating - //signers' public keys. This RPC is completely stateless and deterministic and - //does not create any signing session. It can be used to determine the Taproot - //public key that should be put in an on-chain output once all public keys are - //known. A signing session is only needed later when that output should be - //_spent_ again. - // - //NOTE: The MuSig2 BIP is not final yet and therefore this API must be - //considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming - //releases. Backward compatibility is not guaranteed! + // NOTE: The MuSig2 BIP is not final yet and therefore this API must be + // considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming + // releases. Backward compatibility is not guaranteed! MuSig2CombineKeys(ctx context.Context, in *MuSig2CombineKeysRequest, opts ...grpc.CallOption) (*MuSig2CombineKeysResponse, error) + // MuSig2CreateSession (experimental!) creates a new MuSig2 signing session + // using the local key identified by the key locator. The complete list of all + // public keys of all signing parties must be provided, including the public + // key of the local signing key. If nonces of other parties are already known, + // they can be submitted as well to reduce the number of RPC calls necessary + // later on. // - //MuSig2CreateSession (experimental!) creates a new MuSig2 signing session - //using the local key identified by the key locator. The complete list of all - //public keys of all signing parties must be provided, including the public - //key of the local signing key. If nonces of other parties are already known, - //they can be submitted as well to reduce the number of RPC calls necessary - //later on. - // - //NOTE: The MuSig2 BIP is not final yet and therefore this API must be - //considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming - //releases. Backward compatibility is not guaranteed! + // NOTE: The MuSig2 BIP is not final yet and therefore this API must be + // considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming + // releases. Backward compatibility is not guaranteed! MuSig2CreateSession(ctx context.Context, in *MuSig2SessionRequest, opts ...grpc.CallOption) (*MuSig2SessionResponse, error) + // MuSig2RegisterNonces (experimental!) registers one or more public nonces of + // other signing participants for a session identified by its ID. This RPC can + // be called multiple times until all nonces are registered. // - //MuSig2RegisterNonces (experimental!) registers one or more public nonces of - //other signing participants for a session identified by its ID. This RPC can - //be called multiple times until all nonces are registered. - // - //NOTE: The MuSig2 BIP is not final yet and therefore this API must be - //considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming - //releases. Backward compatibility is not guaranteed! + // NOTE: The MuSig2 BIP is not final yet and therefore this API must be + // considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming + // releases. Backward compatibility is not guaranteed! MuSig2RegisterNonces(ctx context.Context, in *MuSig2RegisterNoncesRequest, opts ...grpc.CallOption) (*MuSig2RegisterNoncesResponse, error) + // MuSig2Sign (experimental!) creates a partial signature using the local + // signing key that was specified when the session was created. This can only + // be called when all public nonces of all participants are known and have been + // registered with the session. If this node isn't responsible for combining + // all the partial signatures, then the cleanup flag should be set, indicating + // that the session can be removed from memory once the signature was produced. // - //MuSig2Sign (experimental!) creates a partial signature using the local - //signing key that was specified when the session was created. This can only - //be called when all public nonces of all participants are known and have been - //registered with the session. If this node isn't responsible for combining - //all the partial signatures, then the cleanup flag should be set, indicating - //that the session can be removed from memory once the signature was produced. - // - //NOTE: The MuSig2 BIP is not final yet and therefore this API must be - //considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming - //releases. Backward compatibility is not guaranteed! + // NOTE: The MuSig2 BIP is not final yet and therefore this API must be + // considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming + // releases. Backward compatibility is not guaranteed! MuSig2Sign(ctx context.Context, in *MuSig2SignRequest, opts ...grpc.CallOption) (*MuSig2SignResponse, error) + // MuSig2CombineSig (experimental!) combines the given partial signature(s) + // with the local one, if it already exists. Once a partial signature of all + // participants is registered, the final signature will be combined and + // returned. // - //MuSig2CombineSig (experimental!) combines the given partial signature(s) - //with the local one, if it already exists. Once a partial signature of all - //participants is registered, the final signature will be combined and - //returned. - // - //NOTE: The MuSig2 BIP is not final yet and therefore this API must be - //considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming - //releases. Backward compatibility is not guaranteed! + // NOTE: The MuSig2 BIP is not final yet and therefore this API must be + // considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming + // releases. Backward compatibility is not guaranteed! MuSig2CombineSig(ctx context.Context, in *MuSig2CombineSigRequest, opts ...grpc.CallOption) (*MuSig2CombineSigResponse, error) + // MuSig2Cleanup (experimental!) allows a caller to clean up a session early in + // cases where it's obvious that the signing session won't succeed and the + // resources can be released. // - //MuSig2Cleanup (experimental!) allows a caller to clean up a session early in - //cases where it's obvious that the signing session won't succeed and the - //resources can be released. - // - //NOTE: The MuSig2 BIP is not final yet and therefore this API must be - //considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming - //releases. Backward compatibility is not guaranteed! + // NOTE: The MuSig2 BIP is not final yet and therefore this API must be + // considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming + // releases. Backward compatibility is not guaranteed! MuSig2Cleanup(ctx context.Context, in *MuSig2CleanupRequest, opts ...grpc.CallOption) (*MuSig2CleanupResponse, error) } @@ -242,116 +231,105 @@ func (c *signerClient) MuSig2Cleanup(ctx context.Context, in *MuSig2CleanupReque // All implementations must embed UnimplementedSignerServer // for forward compatibility type SignerServer interface { + // SignOutputRaw is a method that can be used to generated a signature for a + // set of inputs/outputs to a transaction. Each request specifies details + // concerning how the outputs should be signed, which keys they should be + // signed with, and also any optional tweaks. The return value is a fixed + // 64-byte signature (the same format as we use on the wire in Lightning). // - //SignOutputRaw is a method that can be used to generated a signature for a - //set of inputs/outputs to a transaction. Each request specifies details - //concerning how the outputs should be signed, which keys they should be - //signed with, and also any optional tweaks. The return value is a fixed - //64-byte signature (the same format as we use on the wire in Lightning). - // - //If we are unable to sign using the specified keys, then an error will be - //returned. + // If we are unable to sign using the specified keys, then an error will be + // returned. SignOutputRaw(context.Context, *SignReq) (*SignResp, error) + // ComputeInputScript generates a complete InputIndex for the passed + // transaction with the signature as defined within the passed SignDescriptor. + // This method should be capable of generating the proper input script for both + // regular p2wkh/p2tr outputs and p2wkh outputs nested within a regular p2sh + // output. // - //ComputeInputScript generates a complete InputIndex for the passed - //transaction with the signature as defined within the passed SignDescriptor. - //This method should be capable of generating the proper input script for both - //regular p2wkh/p2tr outputs and p2wkh outputs nested within a regular p2sh - //output. - // - //Note that when using this method to sign inputs belonging to the wallet, - //the only items of the SignDescriptor that need to be populated are pkScript - //in the TxOut field, the value in that same field, and finally the input - //index. + // Note that when using this method to sign inputs belonging to the wallet, + // the only items of the SignDescriptor that need to be populated are pkScript + // in the TxOut field, the value in that same field, and finally the input + // index. ComputeInputScript(context.Context, *SignReq) (*InputScriptResp, error) + // SignMessage signs a message with the key specified in the key locator. The + // returned signature is fixed-size LN wire format encoded. // - //SignMessage signs a message with the key specified in the key locator. The - //returned signature is fixed-size LN wire format encoded. - // - //The main difference to SignMessage in the main RPC is that a specific key is - //used to sign the message instead of the node identity private key. + // The main difference to SignMessage in the main RPC is that a specific key is + // used to sign the message instead of the node identity private key. SignMessage(context.Context, *SignMessageReq) (*SignMessageResp, error) + // VerifyMessage verifies a signature over a message using the public key + // provided. The signature must be fixed-size LN wire format encoded. // - //VerifyMessage verifies a signature over a message using the public key - //provided. The signature must be fixed-size LN wire format encoded. - // - //The main difference to VerifyMessage in the main RPC is that the public key - //used to sign the message does not have to be a node known to the network. + // The main difference to VerifyMessage in the main RPC is that the public key + // used to sign the message does not have to be a node known to the network. VerifyMessage(context.Context, *VerifyMessageReq) (*VerifyMessageResp, error) - // - //DeriveSharedKey returns a shared secret key by performing Diffie-Hellman key - //derivation between the ephemeral public key in the request and the node's - //key specified in the key_desc parameter. Either a key locator or a raw - //public key is expected in the key_desc, if neither is supplied, defaults to - //the node's identity private key: - //P_shared = privKeyNode * ephemeralPubkey - //The resulting shared public key is serialized in the compressed format and - //hashed with sha256, resulting in the final key length of 256bit. + // DeriveSharedKey returns a shared secret key by performing Diffie-Hellman key + // derivation between the ephemeral public key in the request and the node's + // key specified in the key_desc parameter. Either a key locator or a raw + // public key is expected in the key_desc, if neither is supplied, defaults to + // the node's identity private key: + // P_shared = privKeyNode * ephemeralPubkey + // The resulting shared public key is serialized in the compressed format and + // hashed with sha256, resulting in the final key length of 256bit. DeriveSharedKey(context.Context, *SharedKeyRequest) (*SharedKeyResponse, error) + // MuSig2CombineKeys (experimental!) is a stateless helper RPC that can be used + // to calculate the combined MuSig2 public key from a list of all participating + // signers' public keys. This RPC is completely stateless and deterministic and + // does not create any signing session. It can be used to determine the Taproot + // public key that should be put in an on-chain output once all public keys are + // known. A signing session is only needed later when that output should be + // _spent_ again. // - //MuSig2CombineKeys (experimental!) is a stateless helper RPC that can be used - //to calculate the combined MuSig2 public key from a list of all participating - //signers' public keys. This RPC is completely stateless and deterministic and - //does not create any signing session. It can be used to determine the Taproot - //public key that should be put in an on-chain output once all public keys are - //known. A signing session is only needed later when that output should be - //_spent_ again. - // - //NOTE: The MuSig2 BIP is not final yet and therefore this API must be - //considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming - //releases. Backward compatibility is not guaranteed! + // NOTE: The MuSig2 BIP is not final yet and therefore this API must be + // considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming + // releases. Backward compatibility is not guaranteed! MuSig2CombineKeys(context.Context, *MuSig2CombineKeysRequest) (*MuSig2CombineKeysResponse, error) + // MuSig2CreateSession (experimental!) creates a new MuSig2 signing session + // using the local key identified by the key locator. The complete list of all + // public keys of all signing parties must be provided, including the public + // key of the local signing key. If nonces of other parties are already known, + // they can be submitted as well to reduce the number of RPC calls necessary + // later on. // - //MuSig2CreateSession (experimental!) creates a new MuSig2 signing session - //using the local key identified by the key locator. The complete list of all - //public keys of all signing parties must be provided, including the public - //key of the local signing key. If nonces of other parties are already known, - //they can be submitted as well to reduce the number of RPC calls necessary - //later on. - // - //NOTE: The MuSig2 BIP is not final yet and therefore this API must be - //considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming - //releases. Backward compatibility is not guaranteed! + // NOTE: The MuSig2 BIP is not final yet and therefore this API must be + // considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming + // releases. Backward compatibility is not guaranteed! MuSig2CreateSession(context.Context, *MuSig2SessionRequest) (*MuSig2SessionResponse, error) + // MuSig2RegisterNonces (experimental!) registers one or more public nonces of + // other signing participants for a session identified by its ID. This RPC can + // be called multiple times until all nonces are registered. // - //MuSig2RegisterNonces (experimental!) registers one or more public nonces of - //other signing participants for a session identified by its ID. This RPC can - //be called multiple times until all nonces are registered. - // - //NOTE: The MuSig2 BIP is not final yet and therefore this API must be - //considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming - //releases. Backward compatibility is not guaranteed! + // NOTE: The MuSig2 BIP is not final yet and therefore this API must be + // considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming + // releases. Backward compatibility is not guaranteed! MuSig2RegisterNonces(context.Context, *MuSig2RegisterNoncesRequest) (*MuSig2RegisterNoncesResponse, error) + // MuSig2Sign (experimental!) creates a partial signature using the local + // signing key that was specified when the session was created. This can only + // be called when all public nonces of all participants are known and have been + // registered with the session. If this node isn't responsible for combining + // all the partial signatures, then the cleanup flag should be set, indicating + // that the session can be removed from memory once the signature was produced. // - //MuSig2Sign (experimental!) creates a partial signature using the local - //signing key that was specified when the session was created. This can only - //be called when all public nonces of all participants are known and have been - //registered with the session. If this node isn't responsible for combining - //all the partial signatures, then the cleanup flag should be set, indicating - //that the session can be removed from memory once the signature was produced. - // - //NOTE: The MuSig2 BIP is not final yet and therefore this API must be - //considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming - //releases. Backward compatibility is not guaranteed! + // NOTE: The MuSig2 BIP is not final yet and therefore this API must be + // considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming + // releases. Backward compatibility is not guaranteed! MuSig2Sign(context.Context, *MuSig2SignRequest) (*MuSig2SignResponse, error) + // MuSig2CombineSig (experimental!) combines the given partial signature(s) + // with the local one, if it already exists. Once a partial signature of all + // participants is registered, the final signature will be combined and + // returned. // - //MuSig2CombineSig (experimental!) combines the given partial signature(s) - //with the local one, if it already exists. Once a partial signature of all - //participants is registered, the final signature will be combined and - //returned. - // - //NOTE: The MuSig2 BIP is not final yet and therefore this API must be - //considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming - //releases. Backward compatibility is not guaranteed! + // NOTE: The MuSig2 BIP is not final yet and therefore this API must be + // considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming + // releases. Backward compatibility is not guaranteed! MuSig2CombineSig(context.Context, *MuSig2CombineSigRequest) (*MuSig2CombineSigResponse, error) + // MuSig2Cleanup (experimental!) allows a caller to clean up a session early in + // cases where it's obvious that the signing session won't succeed and the + // resources can be released. // - //MuSig2Cleanup (experimental!) allows a caller to clean up a session early in - //cases where it's obvious that the signing session won't succeed and the - //resources can be released. - // - //NOTE: The MuSig2 BIP is not final yet and therefore this API must be - //considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming - //releases. Backward compatibility is not guaranteed! + // NOTE: The MuSig2 BIP is not final yet and therefore this API must be + // considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming + // releases. Backward compatibility is not guaranteed! MuSig2Cleanup(context.Context, *MuSig2CleanupRequest) (*MuSig2CleanupResponse, error) mustEmbedUnimplementedSignerServer() } diff --git a/lnrpc/verrpc/verrpc_grpc.pb.go b/lnrpc/verrpc/verrpc_grpc.pb.go index acb077236..bca96ed7d 100644 --- a/lnrpc/verrpc/verrpc_grpc.pb.go +++ b/lnrpc/verrpc/verrpc_grpc.pb.go @@ -19,8 +19,8 @@ const _ = grpc.SupportPackageIsVersion7 // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type VersionerClient interface { // lncli: `version` - //GetVersion returns the current version and build information of the running - //daemon. + // GetVersion returns the current version and build information of the running + // daemon. GetVersion(ctx context.Context, in *VersionRequest, opts ...grpc.CallOption) (*Version, error) } @@ -46,8 +46,8 @@ func (c *versionerClient) GetVersion(ctx context.Context, in *VersionRequest, op // for forward compatibility type VersionerServer interface { // lncli: `version` - //GetVersion returns the current version and build information of the running - //daemon. + // GetVersion returns the current version and build information of the running + // daemon. GetVersion(context.Context, *VersionRequest) (*Version, error) mustEmbedUnimplementedVersionerServer() } diff --git a/lnrpc/walletrpc/walletkit.pb.go b/lnrpc/walletrpc/walletkit.pb.go index b9dfd6647..c920f6cff 100644 --- a/lnrpc/walletrpc/walletkit.pb.go +++ b/lnrpc/walletrpc/walletkit.pb.go @@ -81,65 +81,52 @@ type WitnessType int32 const ( WitnessType_UNKNOWN_WITNESS WitnessType = 0 - // - //A witness that allows us to spend the output of a commitment transaction - //after a relative lock-time lockout. + // A witness that allows us to spend the output of a commitment transaction + // after a relative lock-time lockout. WitnessType_COMMITMENT_TIME_LOCK WitnessType = 1 - // - //A witness that allows us to spend a settled no-delay output immediately on a - //counterparty's commitment transaction. + // A witness that allows us to spend a settled no-delay output immediately on a + // counterparty's commitment transaction. WitnessType_COMMITMENT_NO_DELAY WitnessType = 2 - // - //A witness that allows us to sweep the settled output of a malicious - //counterparty's who broadcasts a revoked commitment transaction. + // A witness that allows us to sweep the settled output of a malicious + // counterparty's who broadcasts a revoked commitment transaction. WitnessType_COMMITMENT_REVOKE WitnessType = 3 - // - //A witness that allows us to sweep an HTLC which we offered to the remote - //party in the case that they broadcast a revoked commitment state. + // A witness that allows us to sweep an HTLC which we offered to the remote + // party in the case that they broadcast a revoked commitment state. WitnessType_HTLC_OFFERED_REVOKE WitnessType = 4 - // - //A witness that allows us to sweep an HTLC output sent to us in the case that - //the remote party broadcasts a revoked commitment state. + // A witness that allows us to sweep an HTLC output sent to us in the case that + // the remote party broadcasts a revoked commitment state. WitnessType_HTLC_ACCEPTED_REVOKE WitnessType = 5 - // - //A witness that allows us to sweep an HTLC output that we extended to a - //party, but was never fulfilled. This HTLC output isn't directly on the - //commitment transaction, but is the result of a confirmed second-level HTLC - //transaction. As a result, we can only spend this after a CSV delay. + // A witness that allows us to sweep an HTLC output that we extended to a + // party, but was never fulfilled. This HTLC output isn't directly on the + // commitment transaction, but is the result of a confirmed second-level HTLC + // transaction. As a result, we can only spend this after a CSV delay. WitnessType_HTLC_OFFERED_TIMEOUT_SECOND_LEVEL WitnessType = 6 - // - //A witness that allows us to sweep an HTLC output that was offered to us, and - //for which we have a payment preimage. This HTLC output isn't directly on our - //commitment transaction, but is the result of confirmed second-level HTLC - //transaction. As a result, we can only spend this after a CSV delay. + // A witness that allows us to sweep an HTLC output that was offered to us, and + // for which we have a payment preimage. This HTLC output isn't directly on our + // commitment transaction, but is the result of confirmed second-level HTLC + // transaction. As a result, we can only spend this after a CSV delay. WitnessType_HTLC_ACCEPTED_SUCCESS_SECOND_LEVEL WitnessType = 7 - // - //A witness that allows us to sweep an HTLC that we offered to the remote - //party which lies in the commitment transaction of the remote party. We can - //spend this output after the absolute CLTV timeout of the HTLC as passed. + // A witness that allows us to sweep an HTLC that we offered to the remote + // party which lies in the commitment transaction of the remote party. We can + // spend this output after the absolute CLTV timeout of the HTLC as passed. WitnessType_HTLC_OFFERED_REMOTE_TIMEOUT WitnessType = 8 - // - //A witness that allows us to sweep an HTLC that was offered to us by the - //remote party. We use this witness in the case that the remote party goes to - //chain, and we know the pre-image to the HTLC. We can sweep this without any - //additional timeout. + // A witness that allows us to sweep an HTLC that was offered to us by the + // remote party. We use this witness in the case that the remote party goes to + // chain, and we know the pre-image to the HTLC. We can sweep this without any + // additional timeout. WitnessType_HTLC_ACCEPTED_REMOTE_SUCCESS WitnessType = 9 - // - //A witness that allows us to sweep an HTLC from the remote party's commitment - //transaction in the case that the broadcast a revoked commitment, but then - //also immediately attempt to go to the second level to claim the HTLC. + // A witness that allows us to sweep an HTLC from the remote party's commitment + // transaction in the case that the broadcast a revoked commitment, but then + // also immediately attempt to go to the second level to claim the HTLC. WitnessType_HTLC_SECOND_LEVEL_REVOKE WitnessType = 10 - // - //A witness type that allows us to spend a regular p2wkh output that's sent to - //an output which is under complete control of the backing wallet. + // A witness type that allows us to spend a regular p2wkh output that's sent to + // an output which is under complete control of the backing wallet. WitnessType_WITNESS_KEY_HASH WitnessType = 11 - // - //A witness type that allows us to sweep an output that sends to a nested P2SH - //script that pays to a key solely under our control. + // A witness type that allows us to sweep an output that sends to a nested P2SH + // script that pays to a key solely under our control. WitnessType_NESTED_WITNESS_KEY_HASH WitnessType = 12 - // - //A witness type that allows us to spend our anchor on the commitment - //transaction. + // A witness type that allows us to spend our anchor on the commitment + // transaction. WitnessType_COMMITMENT_ANCHOR WitnessType = 13 ) @@ -217,11 +204,10 @@ type ListUnspentRequest struct { MaxConfs int32 `protobuf:"varint,2,opt,name=max_confs,json=maxConfs,proto3" json:"max_confs,omitempty"` // An optional filter to only include outputs belonging to an account. Account string `protobuf:"bytes,3,opt,name=account,proto3" json:"account,omitempty"` - // - //When min_confs and max_confs are zero, setting false implicitly - //overrides max_confs to be MaxInt32, otherwise max_confs remains - //zero. An error is returned if the value is true and both min_confs - //and max_confs are non-zero. (default: false) + // When min_confs and max_confs are zero, setting false implicitly + // overrides max_confs to be MaxInt32, otherwise max_confs remains + // zero. An error is returned if the value is true and both min_confs + // and max_confs are non-zero. (default: false) UnconfirmedOnly bool `protobuf:"varint,4,opt,name=unconfirmed_only,json=unconfirmedOnly,proto3" json:"unconfirmed_only,omitempty"` } @@ -338,9 +324,8 @@ type LeaseOutputRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //An ID of 32 random bytes that must be unique for each distinct application - //using this RPC which will be used to bound the output lease to. + // An ID of 32 random bytes that must be unique for each distinct application + // using this RPC which will be used to bound the output lease to. Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // The identifying outpoint of the output being leased. Outpoint *lnrpc.OutPoint `protobuf:"bytes,2,opt,name=outpoint,proto3" json:"outpoint,omitempty"` @@ -407,8 +392,7 @@ type LeaseOutputResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The absolute expiration of the output lease represented as a unix timestamp. + // The absolute expiration of the output lease represented as a unix timestamp. Expiration uint64 `protobuf:"varint,1,opt,name=expiration,proto3" json:"expiration,omitempty"` } @@ -551,14 +535,12 @@ type KeyReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //Is the key finger print of the root pubkey that this request is targeting. - //This allows the WalletKit to possibly serve out keys for multiple HD chains - //via public derivation. + // Is the key finger print of the root pubkey that this request is targeting. + // This allows the WalletKit to possibly serve out keys for multiple HD chains + // via public derivation. KeyFingerPrint int32 `protobuf:"varint,1,opt,name=key_finger_print,json=keyFingerPrint,proto3" json:"key_finger_print,omitempty"` - // - //The target key family to derive a key from. In other contexts, this is - //known as the "account". + // The target key family to derive a key from. In other contexts, this is + // known as the "account". KeyFamily int32 `protobuf:"varint,2,opt,name=key_family,json=keyFamily,proto3" json:"key_family,omitempty"` } @@ -613,15 +595,12 @@ type AddrRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The name of the account to retrieve the next address of. If empty, the - //default wallet account is used. + // The name of the account to retrieve the next address of. If empty, the + // default wallet account is used. Account string `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"` - // - //The type of address to derive. + // The type of address to derive. Type AddressType `protobuf:"varint,2,opt,name=type,proto3,enum=walletrpc.AddressType" json:"type,omitempty"` - // - //Whether a change address should be derived. + // Whether a change address should be derived. Change bool `protobuf:"varint,3,opt,name=change,proto3" json:"change,omitempty"` } @@ -683,8 +662,7 @@ type AddrResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The address encoded using a bech32 format. + // The address encoded using a bech32 format. Addr string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"` } @@ -736,31 +714,26 @@ type Account struct { Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // The type of addresses the account supports. AddressType AddressType `protobuf:"varint,2,opt,name=address_type,json=addressType,proto3,enum=walletrpc.AddressType" json:"address_type,omitempty"` - // - //The public key backing the account that all keys are derived from - //represented as an extended key. This will always be empty for the default - //imported account in which single public keys are imported into. + // The public key backing the account that all keys are derived from + // represented as an extended key. This will always be empty for the default + // imported account in which single public keys are imported into. ExtendedPublicKey string `protobuf:"bytes,3,opt,name=extended_public_key,json=extendedPublicKey,proto3" json:"extended_public_key,omitempty"` - // - //The fingerprint of the root key from which the account public key was - //derived from. This will always be zero for the default imported account in - //which single public keys are imported into. The bytes are in big-endian - //order. + // The fingerprint of the root key from which the account public key was + // derived from. This will always be zero for the default imported account in + // which single public keys are imported into. The bytes are in big-endian + // order. MasterKeyFingerprint []byte `protobuf:"bytes,4,opt,name=master_key_fingerprint,json=masterKeyFingerprint,proto3" json:"master_key_fingerprint,omitempty"` - // - //The derivation path corresponding to the account public key. This will - //always be empty for the default imported account in which single public keys - //are imported into. + // The derivation path corresponding to the account public key. This will + // always be empty for the default imported account in which single public keys + // are imported into. DerivationPath string `protobuf:"bytes,5,opt,name=derivation_path,json=derivationPath,proto3" json:"derivation_path,omitempty"` - // - //The number of keys derived from the external branch of the account public - //key. This will always be zero for the default imported account in which - //single public keys are imported into. + // The number of keys derived from the external branch of the account public + // key. This will always be zero for the default imported account in which + // single public keys are imported into. ExternalKeyCount uint32 `protobuf:"varint,6,opt,name=external_key_count,json=externalKeyCount,proto3" json:"external_key_count,omitempty"` - // - //The number of keys derived from the internal branch of the account public - //key. This will always be zero for the default imported account in which - //single public keys are imported into. + // The number of keys derived from the internal branch of the account public + // key. This will always be zero for the default imported account in which + // single public keys are imported into. InternalKeyCount uint32 `protobuf:"varint,7,opt,name=internal_key_count,json=internalKeyCount,proto3" json:"internal_key_count,omitempty"` // Whether the wallet stores private keys for the account. WatchOnly bool `protobuf:"varint,8,opt,name=watch_only,json=watchOnly,proto3" json:"watch_only,omitempty"` @@ -859,15 +832,14 @@ type AddressProperty struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields + // The address encoded using the appropriate format depending on the + // address type (base58, bech32, bech32m). // - //The address encoded using the appropriate format depending on the - //address type (base58, bech32, bech32m). - // - //Note that lnd's internal/custom keys for channels and other - //functionality are derived from the same scope. Since they - //aren't really used as addresses and will never have an - //on-chain balance, we'll show the public key instead (only if - //the show_custom_accounts flag is provided). + // Note that lnd's internal/custom keys for channels and other + // functionality are derived from the same scope. Since they + // aren't really used as addresses and will never have an + // on-chain balance, we'll show the public key instead (only if + // the show_custom_accounts flag is provided). Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` // Denotes if the address is a change address. IsInternal bool `protobuf:"varint,2,opt,name=is_internal,json=isInternal,proto3" json:"is_internal,omitempty"` @@ -937,16 +909,14 @@ type AccountWithAddresses struct { Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // The type of addresses the account supports. AddressType AddressType `protobuf:"varint,2,opt,name=address_type,json=addressType,proto3,enum=walletrpc.AddressType" json:"address_type,omitempty"` - // - //The derivation path corresponding to the account public key. This will - //always be empty for the default imported account in which single public keys - //are imported into. + // The derivation path corresponding to the account public key. This will + // always be empty for the default imported account in which single public keys + // are imported into. DerivationPath string `protobuf:"bytes,3,opt,name=derivation_path,json=derivationPath,proto3" json:"derivation_path,omitempty"` - // - //List of address, its type internal/external & balance. - //Note that the order of addresses will be random and not according to the - //derivation index, since that information is not stored by the underlying - //wallet. + // List of address, its type internal/external & balance. + // Note that the order of addresses will be random and not according to the + // derivation index, since that information is not stored by the underlying + // wallet. Addresses []*AddressProperty `protobuf:"bytes,4,rep,name=addresses,proto3" json:"addresses,omitempty"` } @@ -1323,28 +1293,24 @@ type ImportAccountRequest struct { // A name to identify the account with. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - // - //A public key that corresponds to a wallet account represented as an extended - //key. It must conform to a derivation path of the form - //m/purpose'/coin_type'/account'. + // A public key that corresponds to a wallet account represented as an extended + // key. It must conform to a derivation path of the form + // m/purpose'/coin_type'/account'. ExtendedPublicKey string `protobuf:"bytes,2,opt,name=extended_public_key,json=extendedPublicKey,proto3" json:"extended_public_key,omitempty"` - // - //The fingerprint of the root key (also known as the key with derivation path - //m/) from which the account public key was derived from. This may be required - //by some hardware wallets for proper identification and signing. The bytes - //must be in big-endian order. + // The fingerprint of the root key (also known as the key with derivation path + // m/) from which the account public key was derived from. This may be required + // by some hardware wallets for proper identification and signing. The bytes + // must be in big-endian order. MasterKeyFingerprint []byte `protobuf:"bytes,3,opt,name=master_key_fingerprint,json=masterKeyFingerprint,proto3" json:"master_key_fingerprint,omitempty"` - // - //An address type is only required when the extended account public key has a - //legacy version (xpub, tpub, etc.), such that the wallet cannot detect what - //address scheme it belongs to. + // An address type is only required when the extended account public key has a + // legacy version (xpub, tpub, etc.), such that the wallet cannot detect what + // address scheme it belongs to. AddressType AddressType `protobuf:"varint,4,opt,name=address_type,json=addressType,proto3,enum=walletrpc.AddressType" json:"address_type,omitempty"` - // - //Whether a dry run should be attempted when importing the account. This - //serves as a way to confirm whether the account is being imported correctly - //by returning the first N addresses for the external and internal branches of - //the account. If these addresses match as expected, then it should be safe to - //import the account as is. + // Whether a dry run should be attempted when importing the account. This + // serves as a way to confirm whether the account is being imported correctly + // by returning the first N addresses for the external and internal branches of + // the account. If these addresses match as expected, then it should be safe to + // import the account as is. DryRun bool `protobuf:"varint,5,opt,name=dry_run,json=dryRun,proto3" json:"dry_run,omitempty"` } @@ -1422,15 +1388,13 @@ type ImportAccountResponse struct { // The details of the imported account. Account *Account `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"` - // - //The first N addresses that belong to the external branch of the account. - //The external branch is typically used for external non-change addresses. - //These are only returned if a dry run was specified within the request. + // The first N addresses that belong to the external branch of the account. + // The external branch is typically used for external non-change addresses. + // These are only returned if a dry run was specified within the request. DryRunExternalAddrs []string `protobuf:"bytes,2,rep,name=dry_run_external_addrs,json=dryRunExternalAddrs,proto3" json:"dry_run_external_addrs,omitempty"` - // - //The first N addresses that belong to the internal branch of the account. - //The internal branch is typically used for change addresses. These are only - //returned if a dry run was specified within the request. + // The first N addresses that belong to the internal branch of the account. + // The internal branch is typically used for change addresses. These are only + // returned if a dry run was specified within the request. DryRunInternalAddrs []string `protobuf:"bytes,3,rep,name=dry_run_internal_addrs,json=dryRunInternalAddrs,proto3" json:"dry_run_internal_addrs,omitempty"` } @@ -1587,11 +1551,9 @@ type Transaction struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The raw serialized transaction. + // The raw serialized transaction. TxHex []byte `protobuf:"bytes,1,opt,name=tx_hex,json=txHex,proto3" json:"tx_hex,omitempty"` - // - //An optional label to save with the transaction. Limited to 500 characters. + // An optional label to save with the transaction. Limited to 500 characters. Label string `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"` } @@ -1646,12 +1608,11 @@ type PublishResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields + // If blank, then no error occurred and the transaction was successfully + // published. If not the empty string, then a string representation of the + // broadcast error. // - //If blank, then no error occurred and the transaction was successfully - //published. If not the empty string, then a string representation of the - //broadcast error. - // - //TODO(roasbeef): map to a proper enum type + // TODO(roasbeef): map to a proper enum type PublishError string `protobuf:"bytes,1,opt,name=publish_error,json=publishError,proto3" json:"publish_error,omitempty"` } @@ -1699,12 +1660,10 @@ type SendOutputsRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The number of satoshis per kilo weight that should be used when crafting - //this transaction. + // The number of satoshis per kilo weight that should be used when crafting + // this transaction. SatPerKw int64 `protobuf:"varint,1,opt,name=sat_per_kw,json=satPerKw,proto3" json:"sat_per_kw,omitempty"` - // - //A slice of the outputs that should be created in the transaction produced. + // A slice of the outputs that should be created in the transaction produced. Outputs []*signrpc.TxOut `protobuf:"bytes,2,rep,name=outputs,proto3" json:"outputs,omitempty"` // An optional label for the transaction, limited to 500 characters. Label string `protobuf:"bytes,3,opt,name=label,proto3" json:"label,omitempty"` @@ -1787,8 +1746,7 @@ type SendOutputsResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The serialized transaction sent out on the network. + // The serialized transaction sent out on the network. RawTx []byte `protobuf:"bytes,1,opt,name=raw_tx,json=rawTx,proto3" json:"raw_tx,omitempty"` } @@ -1836,8 +1794,7 @@ type EstimateFeeRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The number of confirmations to shoot for when estimating the fee. + // The number of confirmations to shoot for when estimating the fee. ConfTarget int32 `protobuf:"varint,1,opt,name=conf_target,json=confTarget,proto3" json:"conf_target,omitempty"` } @@ -1885,9 +1842,8 @@ type EstimateFeeResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The amount of satoshis per kw that should be used in order to reach the - //confirmation target in the request. + // The amount of satoshis per kw that should be used in order to reach the + // confirmation target in the request. SatPerKw int64 `protobuf:"varint,1,opt,name=sat_per_kw,json=satPerKw,proto3" json:"sat_per_kw,omitempty"` } @@ -1941,19 +1897,17 @@ type PendingSweep struct { WitnessType WitnessType `protobuf:"varint,2,opt,name=witness_type,json=witnessType,proto3,enum=walletrpc.WitnessType" json:"witness_type,omitempty"` // The value of the output we're attempting to sweep. AmountSat uint32 `protobuf:"varint,3,opt,name=amount_sat,json=amountSat,proto3" json:"amount_sat,omitempty"` - // - //Deprecated, use sat_per_vbyte. - //The fee rate we'll use to sweep the output, expressed in sat/vbyte. The fee - //rate is only determined once a sweeping transaction for the output is - //created, so it's possible for this to be 0 before this. + // Deprecated, use sat_per_vbyte. + // The fee rate we'll use to sweep the output, expressed in sat/vbyte. The fee + // rate is only determined once a sweeping transaction for the output is + // created, so it's possible for this to be 0 before this. // // Deprecated: Do not use. SatPerByte uint32 `protobuf:"varint,4,opt,name=sat_per_byte,json=satPerByte,proto3" json:"sat_per_byte,omitempty"` // The number of broadcast attempts we've made to sweep the output. BroadcastAttempts uint32 `protobuf:"varint,5,opt,name=broadcast_attempts,json=broadcastAttempts,proto3" json:"broadcast_attempts,omitempty"` - // - //The next height of the chain at which we'll attempt to broadcast the - //sweep transaction of the output. + // The next height of the chain at which we'll attempt to broadcast the + // sweep transaction of the output. NextBroadcastHeight uint32 `protobuf:"varint,6,opt,name=next_broadcast_height,json=nextBroadcastHeight,proto3" json:"next_broadcast_height,omitempty"` // The requested confirmation target for this output. RequestedConfTarget uint32 `protobuf:"varint,8,opt,name=requested_conf_target,json=requestedConfTarget,proto3" json:"requested_conf_target,omitempty"` @@ -1962,16 +1916,14 @@ type PendingSweep struct { // // Deprecated: Do not use. RequestedSatPerByte uint32 `protobuf:"varint,9,opt,name=requested_sat_per_byte,json=requestedSatPerByte,proto3" json:"requested_sat_per_byte,omitempty"` - // - //The fee rate we'll use to sweep the output, expressed in sat/vbyte. The fee - //rate is only determined once a sweeping transaction for the output is - //created, so it's possible for this to be 0 before this. + // The fee rate we'll use to sweep the output, expressed in sat/vbyte. The fee + // rate is only determined once a sweeping transaction for the output is + // created, so it's possible for this to be 0 before this. SatPerVbyte uint64 `protobuf:"varint,10,opt,name=sat_per_vbyte,json=satPerVbyte,proto3" json:"sat_per_vbyte,omitempty"` // The requested fee rate, expressed in sat/vbyte, for this output. RequestedSatPerVbyte uint64 `protobuf:"varint,11,opt,name=requested_sat_per_vbyte,json=requestedSatPerVbyte,proto3" json:"requested_sat_per_vbyte,omitempty"` - // - //Whether this input must be force-swept. This means that it is swept even - //if it has a negative yield. + // Whether this input must be force-swept. This means that it is swept even + // if it has a negative yield. Force bool `protobuf:"varint,7,opt,name=force,proto3" json:"force,omitempty"` } @@ -2129,8 +2081,7 @@ type PendingSweepsResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The set of outputs currently being swept by lnd's central batching engine. + // The set of outputs currently being swept by lnd's central batching engine. PendingSweeps []*PendingSweep `protobuf:"bytes,1,rep,name=pending_sweeps,json=pendingSweeps,proto3" json:"pending_sweeps,omitempty"` } @@ -2182,20 +2133,17 @@ type BumpFeeRequest struct { Outpoint *lnrpc.OutPoint `protobuf:"bytes,1,opt,name=outpoint,proto3" json:"outpoint,omitempty"` // The target number of blocks that the input should be spent within. TargetConf uint32 `protobuf:"varint,2,opt,name=target_conf,json=targetConf,proto3" json:"target_conf,omitempty"` - // - //Deprecated, use sat_per_vbyte. - //The fee rate, expressed in sat/vbyte, that should be used to spend the input - //with. + // Deprecated, use sat_per_vbyte. + // The fee rate, expressed in sat/vbyte, that should be used to spend the input + // with. // // Deprecated: Do not use. SatPerByte uint32 `protobuf:"varint,3,opt,name=sat_per_byte,json=satPerByte,proto3" json:"sat_per_byte,omitempty"` - // - //Whether this input must be force-swept. This means that it is swept even - //if it has a negative yield. + // Whether this input must be force-swept. This means that it is swept even + // if it has a negative yield. Force bool `protobuf:"varint,4,opt,name=force,proto3" json:"force,omitempty"` - // - //The fee rate, expressed in sat/vbyte, that should be used to spend the input - //with. + // The fee rate, expressed in sat/vbyte, that should be used to spend the input + // with. SatPerVbyte uint64 `protobuf:"varint,5,opt,name=sat_per_vbyte,json=satPerVbyte,proto3" json:"sat_per_vbyte,omitempty"` } @@ -2310,10 +2258,9 @@ type ListSweepsRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //Retrieve the full sweep transaction details. If false, only the sweep txids - //will be returned. Note that some sweeps that LND publishes will have been - //replaced-by-fee, so will not be included in this output. + // Retrieve the full sweep transaction details. If false, only the sweep txids + // will be returned. Note that some sweeps that LND publishes will have been + // replaced-by-fee, so will not be included in this output. Verbose bool `protobuf:"varint,1,opt,name=verbose,proto3" json:"verbose,omitempty"` } @@ -2362,6 +2309,7 @@ type ListSweepsResponse struct { unknownFields protoimpl.UnknownFields // Types that are assignable to Sweeps: + // // *ListSweepsResponse_TransactionDetails // *ListSweepsResponse_TransactionIds Sweeps isListSweepsResponse_Sweeps `protobuf_oneof:"sweeps"` @@ -2546,16 +2494,17 @@ type FundPsbtRequest struct { unknownFields protoimpl.UnknownFields // Types that are assignable to Template: + // // *FundPsbtRequest_Psbt // *FundPsbtRequest_Raw Template isFundPsbtRequest_Template `protobuf_oneof:"template"` // Types that are assignable to Fees: + // // *FundPsbtRequest_TargetConf // *FundPsbtRequest_SatPerVbyte Fees isFundPsbtRequest_Fees `protobuf_oneof:"fees"` - // - //The name of the account to fund the PSBT with. If empty, the default wallet - //account is used. + // The name of the account to fund the PSBT with. If empty, the default wallet + // account is used. Account string `protobuf:"bytes,5,opt,name=account,proto3" json:"account,omitempty"` // The minimum number of confirmations each one of your outputs used for // the transaction must satisfy. @@ -2664,21 +2613,19 @@ type isFundPsbtRequest_Template interface { } type FundPsbtRequest_Psbt struct { + // Use an existing PSBT packet as the template for the funded PSBT. // - //Use an existing PSBT packet as the template for the funded PSBT. - // - //The packet must contain at least one non-dust output. If one or more - //inputs are specified, no coin selection is performed. In that case every - //input must be an UTXO known to the wallet that has not been locked - //before. The sum of all inputs must be sufficiently greater than the sum - //of all outputs to pay a miner fee with the specified fee rate. A change - //output is added to the PSBT if necessary. + // The packet must contain at least one non-dust output. If one or more + // inputs are specified, no coin selection is performed. In that case every + // input must be an UTXO known to the wallet that has not been locked + // before. The sum of all inputs must be sufficiently greater than the sum + // of all outputs to pay a miner fee with the specified fee rate. A change + // output is added to the PSBT if necessary. Psbt []byte `protobuf:"bytes,1,opt,name=psbt,proto3,oneof"` } type FundPsbtRequest_Raw struct { - // - //Use the outputs and optional inputs from this raw template. + // Use the outputs and optional inputs from this raw template. Raw *TxTemplate `protobuf:"bytes,2,opt,name=raw,proto3,oneof"` } @@ -2691,15 +2638,13 @@ type isFundPsbtRequest_Fees interface { } type FundPsbtRequest_TargetConf struct { - // - //The target number of blocks that the transaction should be confirmed in. + // The target number of blocks that the transaction should be confirmed in. TargetConf uint32 `protobuf:"varint,3,opt,name=target_conf,json=targetConf,proto3,oneof"` } type FundPsbtRequest_SatPerVbyte struct { - // - //The fee rate, expressed in sat/vbyte, that should be used to spend the - //input with. + // The fee rate, expressed in sat/vbyte, that should be used to spend the + // input with. SatPerVbyte uint64 `protobuf:"varint,4,opt,name=sat_per_vbyte,json=satPerVbyte,proto3,oneof"` } @@ -2712,15 +2657,12 @@ type FundPsbtResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The funded but not yet signed PSBT packet. + // The funded but not yet signed PSBT packet. FundedPsbt []byte `protobuf:"bytes,1,opt,name=funded_psbt,json=fundedPsbt,proto3" json:"funded_psbt,omitempty"` - // - //The index of the added change output or -1 if no change was left over. + // The index of the added change output or -1 if no change was left over. ChangeOutputIndex int32 `protobuf:"varint,2,opt,name=change_output_index,json=changeOutputIndex,proto3" json:"change_output_index,omitempty"` - // - //The list of lock leases that were acquired for the inputs in the funded PSBT - //packet. + // The list of lock leases that were acquired for the inputs in the funded PSBT + // packet. LockedUtxos []*UtxoLease `protobuf:"bytes,3,rep,name=locked_utxos,json=lockedUtxos,proto3" json:"locked_utxos,omitempty"` } @@ -2782,17 +2724,15 @@ type TxTemplate struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields + // An optional list of inputs to use. Every input must be an UTXO known to the + // wallet that has not been locked before. The sum of all inputs must be + // sufficiently greater than the sum of all outputs to pay a miner fee with the + // fee rate specified in the parent message. // - //An optional list of inputs to use. Every input must be an UTXO known to the - //wallet that has not been locked before. The sum of all inputs must be - //sufficiently greater than the sum of all outputs to pay a miner fee with the - //fee rate specified in the parent message. - // - //If no inputs are specified, coin selection will be performed instead and - //inputs of sufficient value will be added to the resulting PSBT. + // If no inputs are specified, coin selection will be performed instead and + // inputs of sufficient value will be added to the resulting PSBT. Inputs []*lnrpc.OutPoint `protobuf:"bytes,1,rep,name=inputs,proto3" json:"inputs,omitempty"` - // - //A map of all addresses and the amounts to send to in the funded PSBT. + // A map of all addresses and the amounts to send to in the funded PSBT. Outputs map[string]uint64 `protobuf:"bytes,2,rep,name=outputs,proto3" json:"outputs,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` } @@ -2847,19 +2787,15 @@ type UtxoLease struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //A 32 byte random ID that identifies the lease. + // A 32 byte random ID that identifies the lease. Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // The identifying outpoint of the output being leased. Outpoint *lnrpc.OutPoint `protobuf:"bytes,2,opt,name=outpoint,proto3" json:"outpoint,omitempty"` - // - //The absolute expiration of the output lease represented as a unix timestamp. + // The absolute expiration of the output lease represented as a unix timestamp. Expiration uint64 `protobuf:"varint,3,opt,name=expiration,proto3" json:"expiration,omitempty"` - // - //The public key script of the leased output. + // The public key script of the leased output. PkScript []byte `protobuf:"bytes,4,opt,name=pk_script,json=pkScript,proto3" json:"pk_script,omitempty"` - // - //The value of the leased output in satoshis. + // The value of the leased output in satoshis. Value uint64 `protobuf:"varint,5,opt,name=value,proto3" json:"value,omitempty"` } @@ -2935,9 +2871,8 @@ type SignPsbtRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The PSBT that should be signed. The PSBT must contain all required inputs, - //outputs, UTXO data and custom fields required to identify the signing key. + // The PSBT that should be signed. The PSBT must contain all required inputs, + // outputs, UTXO data and custom fields required to identify the signing key. FundedPsbt []byte `protobuf:"bytes,1,opt,name=funded_psbt,json=fundedPsbt,proto3" json:"funded_psbt,omitempty"` } @@ -3042,14 +2977,12 @@ type FinalizePsbtRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //A PSBT that should be signed and finalized. The PSBT must contain all - //required inputs, outputs, UTXO data and partial signatures of all other - //signers. + // A PSBT that should be signed and finalized. The PSBT must contain all + // required inputs, outputs, UTXO data and partial signatures of all other + // signers. FundedPsbt []byte `protobuf:"bytes,1,opt,name=funded_psbt,json=fundedPsbt,proto3" json:"funded_psbt,omitempty"` - // - //The name of the account to finalize the PSBT with. If empty, the default - //wallet account is used. + // The name of the account to finalize the PSBT with. If empty, the default + // wallet account is used. Account string `protobuf:"bytes,5,opt,name=account,proto3" json:"account,omitempty"` } @@ -3247,10 +3180,9 @@ type ListSweepsResponse_TransactionIDs struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //Reversed, hex-encoded string representing the transaction ids of the - //sweeps that our node has broadcast. Note that these transactions may - //not have confirmed yet, we record sweeps on broadcast, not confirmation. + // Reversed, hex-encoded string representing the transaction ids of the + // sweeps that our node has broadcast. Note that these transactions may + // not have confirmed yet, we record sweeps on broadcast, not confirmation. TransactionIds []string `protobuf:"bytes,1,rep,name=transaction_ids,json=transactionIds,proto3" json:"transaction_ids,omitempty"` } diff --git a/lnrpc/walletrpc/walletkit_grpc.pb.go b/lnrpc/walletrpc/walletkit_grpc.pb.go index 688e6312e..3a722afa3 100644 --- a/lnrpc/walletrpc/walletkit_grpc.pb.go +++ b/lnrpc/walletrpc/walletkit_grpc.pb.go @@ -19,195 +19,173 @@ const _ = grpc.SupportPackageIsVersion7 // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type WalletKitClient interface { - // - //ListUnspent returns a list of all utxos spendable by the wallet with a - //number of confirmations between the specified minimum and maximum. By - //default, all utxos are listed. To list only the unconfirmed utxos, set - //the unconfirmed_only to true. + // ListUnspent returns a list of all utxos spendable by the wallet with a + // number of confirmations between the specified minimum and maximum. By + // default, all utxos are listed. To list only the unconfirmed utxos, set + // the unconfirmed_only to true. ListUnspent(ctx context.Context, in *ListUnspentRequest, opts ...grpc.CallOption) (*ListUnspentResponse, error) - // - //LeaseOutput locks an output to the given ID, preventing it from being - //available for any future coin selection attempts. The absolute time of the - //lock's expiration is returned. The expiration of the lock can be extended by - //successive invocations of this RPC. Outputs can be unlocked before their - //expiration through `ReleaseOutput`. + // LeaseOutput locks an output to the given ID, preventing it from being + // available for any future coin selection attempts. The absolute time of the + // lock's expiration is returned. The expiration of the lock can be extended by + // successive invocations of this RPC. Outputs can be unlocked before their + // expiration through `ReleaseOutput`. LeaseOutput(ctx context.Context, in *LeaseOutputRequest, opts ...grpc.CallOption) (*LeaseOutputResponse, error) - // - //ReleaseOutput unlocks an output, allowing it to be available for coin - //selection if it remains unspent. The ID should match the one used to - //originally lock the output. + // ReleaseOutput unlocks an output, allowing it to be available for coin + // selection if it remains unspent. The ID should match the one used to + // originally lock the output. ReleaseOutput(ctx context.Context, in *ReleaseOutputRequest, opts ...grpc.CallOption) (*ReleaseOutputResponse, error) - // - //ListLeases lists all currently locked utxos. + // ListLeases lists all currently locked utxos. ListLeases(ctx context.Context, in *ListLeasesRequest, opts ...grpc.CallOption) (*ListLeasesResponse, error) - // - //DeriveNextKey attempts to derive the *next* key within the key family - //(account in BIP43) specified. This method should return the next external - //child within this branch. + // DeriveNextKey attempts to derive the *next* key within the key family + // (account in BIP43) specified. This method should return the next external + // child within this branch. DeriveNextKey(ctx context.Context, in *KeyReq, opts ...grpc.CallOption) (*signrpc.KeyDescriptor, error) - // - //DeriveKey attempts to derive an arbitrary key specified by the passed - //KeyLocator. + // DeriveKey attempts to derive an arbitrary key specified by the passed + // KeyLocator. DeriveKey(ctx context.Context, in *signrpc.KeyLocator, opts ...grpc.CallOption) (*signrpc.KeyDescriptor, error) - // - //NextAddr returns the next unused address within the wallet. + // NextAddr returns the next unused address within the wallet. NextAddr(ctx context.Context, in *AddrRequest, opts ...grpc.CallOption) (*AddrResponse, error) - // - //ListAccounts retrieves all accounts belonging to the wallet by default. A - //name and key scope filter can be provided to filter through all of the - //wallet accounts and return only those matching. + // ListAccounts retrieves all accounts belonging to the wallet by default. A + // name and key scope filter can be provided to filter through all of the + // wallet accounts and return only those matching. ListAccounts(ctx context.Context, in *ListAccountsRequest, opts ...grpc.CallOption) (*ListAccountsResponse, error) - // - //RequiredReserve returns the minimum amount of satoshis that should be kept - //in the wallet in order to fee bump anchor channels if necessary. The value - //scales with the number of public anchor channels but is capped at a maximum. + // RequiredReserve returns the minimum amount of satoshis that should be kept + // in the wallet in order to fee bump anchor channels if necessary. The value + // scales with the number of public anchor channels but is capped at a maximum. RequiredReserve(ctx context.Context, in *RequiredReserveRequest, opts ...grpc.CallOption) (*RequiredReserveResponse, error) - // - //ListAddresses retrieves all the addresses along with their balance. An - //account name filter can be provided to filter through all of the - //wallet accounts and return the addresses of only those matching. + // ListAddresses retrieves all the addresses along with their balance. An + // account name filter can be provided to filter through all of the + // wallet accounts and return the addresses of only those matching. ListAddresses(ctx context.Context, in *ListAddressesRequest, opts ...grpc.CallOption) (*ListAddressesResponse, error) + // ImportAccount imports an account backed by an account extended public key. + // The master key fingerprint denotes the fingerprint of the root key + // corresponding to the account public key (also known as the key with + // derivation path m/). This may be required by some hardware wallets for + // proper identification and signing. // - //ImportAccount imports an account backed by an account extended public key. - //The master key fingerprint denotes the fingerprint of the root key - //corresponding to the account public key (also known as the key with - //derivation path m/). This may be required by some hardware wallets for - //proper identification and signing. + // The address type can usually be inferred from the key's version, but may be + // required for certain keys to map them into the proper scope. // - //The address type can usually be inferred from the key's version, but may be - //required for certain keys to map them into the proper scope. + // For BIP-0044 keys, an address type must be specified as we intend to not + // support importing BIP-0044 keys into the wallet using the legacy + // pay-to-pubkey-hash (P2PKH) scheme. A nested witness address type will force + // the standard BIP-0049 derivation scheme, while a witness address type will + // force the standard BIP-0084 derivation scheme. // - //For BIP-0044 keys, an address type must be specified as we intend to not - //support importing BIP-0044 keys into the wallet using the legacy - //pay-to-pubkey-hash (P2PKH) scheme. A nested witness address type will force - //the standard BIP-0049 derivation scheme, while a witness address type will - //force the standard BIP-0084 derivation scheme. + // For BIP-0049 keys, an address type must also be specified to make a + // distinction between the standard BIP-0049 address schema (nested witness + // pubkeys everywhere) and our own BIP-0049Plus address schema (nested pubkeys + // externally, witness pubkeys internally). // - //For BIP-0049 keys, an address type must also be specified to make a - //distinction between the standard BIP-0049 address schema (nested witness - //pubkeys everywhere) and our own BIP-0049Plus address schema (nested pubkeys - //externally, witness pubkeys internally). - // - //NOTE: Events (deposits/spends) for keys derived from an account will only be - //detected by lnd if they happen after the import. Rescans to detect past - //events will be supported later on. + // NOTE: Events (deposits/spends) for keys derived from an account will only be + // detected by lnd if they happen after the import. Rescans to detect past + // events will be supported later on. ImportAccount(ctx context.Context, in *ImportAccountRequest, opts ...grpc.CallOption) (*ImportAccountResponse, error) + // ImportPublicKey imports a public key as watch-only into the wallet. // - //ImportPublicKey imports a public key as watch-only into the wallet. - // - //NOTE: Events (deposits/spends) for a key will only be detected by lnd if - //they happen after the import. Rescans to detect past events will be - //supported later on. + // NOTE: Events (deposits/spends) for a key will only be detected by lnd if + // they happen after the import. Rescans to detect past events will be + // supported later on. ImportPublicKey(ctx context.Context, in *ImportPublicKeyRequest, opts ...grpc.CallOption) (*ImportPublicKeyResponse, error) - // - //PublishTransaction attempts to publish the passed transaction to the - //network. Once this returns without an error, the wallet will continually - //attempt to re-broadcast the transaction on start up, until it enters the - //chain. + // PublishTransaction attempts to publish the passed transaction to the + // network. Once this returns without an error, the wallet will continually + // attempt to re-broadcast the transaction on start up, until it enters the + // chain. PublishTransaction(ctx context.Context, in *Transaction, opts ...grpc.CallOption) (*PublishResponse, error) - // - //SendOutputs is similar to the existing sendmany call in Bitcoind, and - //allows the caller to create a transaction that sends to several outputs at - //once. This is ideal when wanting to batch create a set of transactions. + // SendOutputs is similar to the existing sendmany call in Bitcoind, and + // allows the caller to create a transaction that sends to several outputs at + // once. This is ideal when wanting to batch create a set of transactions. SendOutputs(ctx context.Context, in *SendOutputsRequest, opts ...grpc.CallOption) (*SendOutputsResponse, error) - // - //EstimateFee attempts to query the internal fee estimator of the wallet to - //determine the fee (in sat/kw) to attach to a transaction in order to - //achieve the confirmation target. + // EstimateFee attempts to query the internal fee estimator of the wallet to + // determine the fee (in sat/kw) to attach to a transaction in order to + // achieve the confirmation target. EstimateFee(ctx context.Context, in *EstimateFeeRequest, opts ...grpc.CallOption) (*EstimateFeeResponse, error) + // PendingSweeps returns lists of on-chain outputs that lnd is currently + // attempting to sweep within its central batching engine. Outputs with similar + // fee rates are batched together in order to sweep them within a single + // transaction. // - //PendingSweeps returns lists of on-chain outputs that lnd is currently - //attempting to sweep within its central batching engine. Outputs with similar - //fee rates are batched together in order to sweep them within a single - //transaction. - // - //NOTE: Some of the fields within PendingSweepsRequest are not guaranteed to - //remain supported. This is an advanced API that depends on the internals of - //the UtxoSweeper, so things may change. + // NOTE: Some of the fields within PendingSweepsRequest are not guaranteed to + // remain supported. This is an advanced API that depends on the internals of + // the UtxoSweeper, so things may change. PendingSweeps(ctx context.Context, in *PendingSweepsRequest, opts ...grpc.CallOption) (*PendingSweepsResponse, error) + // BumpFee bumps the fee of an arbitrary input within a transaction. This RPC + // takes a different approach than bitcoind's bumpfee command. lnd has a + // central batching engine in which inputs with similar fee rates are batched + // together to save on transaction fees. Due to this, we cannot rely on + // bumping the fee on a specific transaction, since transactions can change at + // any point with the addition of new inputs. The list of inputs that + // currently exist within lnd's central batching engine can be retrieved + // through the PendingSweeps RPC. // - //BumpFee bumps the fee of an arbitrary input within a transaction. This RPC - //takes a different approach than bitcoind's bumpfee command. lnd has a - //central batching engine in which inputs with similar fee rates are batched - //together to save on transaction fees. Due to this, we cannot rely on - //bumping the fee on a specific transaction, since transactions can change at - //any point with the addition of new inputs. The list of inputs that - //currently exist within lnd's central batching engine can be retrieved - //through the PendingSweeps RPC. + // When bumping the fee of an input that currently exists within lnd's central + // batching engine, a higher fee transaction will be created that replaces the + // lower fee transaction through the Replace-By-Fee (RBF) policy. If it // - //When bumping the fee of an input that currently exists within lnd's central - //batching engine, a higher fee transaction will be created that replaces the - //lower fee transaction through the Replace-By-Fee (RBF) policy. If it + // This RPC also serves useful when wanting to perform a Child-Pays-For-Parent + // (CPFP), where the child transaction pays for its parent's fee. This can be + // done by specifying an outpoint within the low fee transaction that is under + // the control of the wallet. // - //This RPC also serves useful when wanting to perform a Child-Pays-For-Parent - //(CPFP), where the child transaction pays for its parent's fee. This can be - //done by specifying an outpoint within the low fee transaction that is under - //the control of the wallet. + // The fee preference can be expressed either as a specific fee rate or a delta + // of blocks in which the output should be swept on-chain within. If a fee + // preference is not explicitly specified, then an error is returned. // - //The fee preference can be expressed either as a specific fee rate or a delta - //of blocks in which the output should be swept on-chain within. If a fee - //preference is not explicitly specified, then an error is returned. - // - //Note that this RPC currently doesn't perform any validation checks on the - //fee preference being provided. For now, the responsibility of ensuring that - //the new fee preference is sufficient is delegated to the user. + // Note that this RPC currently doesn't perform any validation checks on the + // fee preference being provided. For now, the responsibility of ensuring that + // the new fee preference is sufficient is delegated to the user. BumpFee(ctx context.Context, in *BumpFeeRequest, opts ...grpc.CallOption) (*BumpFeeResponse, error) - // - //ListSweeps returns a list of the sweep transactions our node has produced. - //Note that these sweeps may not be confirmed yet, as we record sweeps on - //broadcast, not confirmation. + // ListSweeps returns a list of the sweep transactions our node has produced. + // Note that these sweeps may not be confirmed yet, as we record sweeps on + // broadcast, not confirmation. ListSweeps(ctx context.Context, in *ListSweepsRequest, opts ...grpc.CallOption) (*ListSweepsResponse, error) - // - //LabelTransaction adds a label to a transaction. If the transaction already - //has a label the call will fail unless the overwrite bool is set. This will - //overwrite the exiting transaction label. Labels must not be empty, and - //cannot exceed 500 characters. + // LabelTransaction adds a label to a transaction. If the transaction already + // has a label the call will fail unless the overwrite bool is set. This will + // overwrite the exiting transaction label. Labels must not be empty, and + // cannot exceed 500 characters. LabelTransaction(ctx context.Context, in *LabelTransactionRequest, opts ...grpc.CallOption) (*LabelTransactionResponse, error) + // FundPsbt creates a fully populated PSBT that contains enough inputs to fund + // the outputs specified in the template. There are two ways of specifying a + // template: Either by passing in a PSBT with at least one output declared or + // by passing in a raw TxTemplate message. // - //FundPsbt creates a fully populated PSBT that contains enough inputs to fund - //the outputs specified in the template. There are two ways of specifying a - //template: Either by passing in a PSBT with at least one output declared or - //by passing in a raw TxTemplate message. + // If there are no inputs specified in the template, coin selection is + // performed automatically. If the template does contain any inputs, it is + // assumed that full coin selection happened externally and no additional + // inputs are added. If the specified inputs aren't enough to fund the outputs + // with the given fee rate, an error is returned. // - //If there are no inputs specified in the template, coin selection is - //performed automatically. If the template does contain any inputs, it is - //assumed that full coin selection happened externally and no additional - //inputs are added. If the specified inputs aren't enough to fund the outputs - //with the given fee rate, an error is returned. + // After either selecting or verifying the inputs, all input UTXOs are locked + // with an internal app ID. // - //After either selecting or verifying the inputs, all input UTXOs are locked - //with an internal app ID. - // - //NOTE: If this method returns without an error, it is the caller's - //responsibility to either spend the locked UTXOs (by finalizing and then - //publishing the transaction) or to unlock/release the locked UTXOs in case of - //an error on the caller's side. + // NOTE: If this method returns without an error, it is the caller's + // responsibility to either spend the locked UTXOs (by finalizing and then + // publishing the transaction) or to unlock/release the locked UTXOs in case of + // an error on the caller's side. FundPsbt(ctx context.Context, in *FundPsbtRequest, opts ...grpc.CallOption) (*FundPsbtResponse, error) + // SignPsbt expects a partial transaction with all inputs and outputs fully + // declared and tries to sign all unsigned inputs that have all required fields + // (UTXO information, BIP32 derivation information, witness or sig scripts) + // set. + // If no error is returned, the PSBT is ready to be given to the next signer or + // to be finalized if lnd was the last signer. // - //SignPsbt expects a partial transaction with all inputs and outputs fully - //declared and tries to sign all unsigned inputs that have all required fields - //(UTXO information, BIP32 derivation information, witness or sig scripts) - //set. - //If no error is returned, the PSBT is ready to be given to the next signer or - //to be finalized if lnd was the last signer. - // - //NOTE: This RPC only signs inputs (and only those it can sign), it does not - //perform any other tasks (such as coin selection, UTXO locking or - //input/output/fee value validation, PSBT finalization). Any input that is - //incomplete will be skipped. + // NOTE: This RPC only signs inputs (and only those it can sign), it does not + // perform any other tasks (such as coin selection, UTXO locking or + // input/output/fee value validation, PSBT finalization). Any input that is + // incomplete will be skipped. SignPsbt(ctx context.Context, in *SignPsbtRequest, opts ...grpc.CallOption) (*SignPsbtResponse, error) + // FinalizePsbt expects a partial transaction with all inputs and outputs fully + // declared and tries to sign all inputs that belong to the wallet. Lnd must be + // the last signer of the transaction. That means, if there are any unsigned + // non-witness inputs or inputs without UTXO information attached or inputs + // without witness data that do not belong to lnd's wallet, this method will + // fail. If no error is returned, the PSBT is ready to be extracted and the + // final TX within to be broadcast. // - //FinalizePsbt expects a partial transaction with all inputs and outputs fully - //declared and tries to sign all inputs that belong to the wallet. Lnd must be - //the last signer of the transaction. That means, if there are any unsigned - //non-witness inputs or inputs without UTXO information attached or inputs - //without witness data that do not belong to lnd's wallet, this method will - //fail. If no error is returned, the PSBT is ready to be extracted and the - //final TX within to be broadcast. - // - //NOTE: This method does NOT publish the transaction once finalized. It is the - //caller's responsibility to either publish the transaction on success or - //unlock/release any locked UTXOs in case of an error in this method. + // NOTE: This method does NOT publish the transaction once finalized. It is the + // caller's responsibility to either publish the transaction on success or + // unlock/release any locked UTXOs in case of an error in this method. FinalizePsbt(ctx context.Context, in *FinalizePsbtRequest, opts ...grpc.CallOption) (*FinalizePsbtResponse, error) } @@ -421,195 +399,173 @@ func (c *walletKitClient) FinalizePsbt(ctx context.Context, in *FinalizePsbtRequ // All implementations must embed UnimplementedWalletKitServer // for forward compatibility type WalletKitServer interface { - // - //ListUnspent returns a list of all utxos spendable by the wallet with a - //number of confirmations between the specified minimum and maximum. By - //default, all utxos are listed. To list only the unconfirmed utxos, set - //the unconfirmed_only to true. + // ListUnspent returns a list of all utxos spendable by the wallet with a + // number of confirmations between the specified minimum and maximum. By + // default, all utxos are listed. To list only the unconfirmed utxos, set + // the unconfirmed_only to true. ListUnspent(context.Context, *ListUnspentRequest) (*ListUnspentResponse, error) - // - //LeaseOutput locks an output to the given ID, preventing it from being - //available for any future coin selection attempts. The absolute time of the - //lock's expiration is returned. The expiration of the lock can be extended by - //successive invocations of this RPC. Outputs can be unlocked before their - //expiration through `ReleaseOutput`. + // LeaseOutput locks an output to the given ID, preventing it from being + // available for any future coin selection attempts. The absolute time of the + // lock's expiration is returned. The expiration of the lock can be extended by + // successive invocations of this RPC. Outputs can be unlocked before their + // expiration through `ReleaseOutput`. LeaseOutput(context.Context, *LeaseOutputRequest) (*LeaseOutputResponse, error) - // - //ReleaseOutput unlocks an output, allowing it to be available for coin - //selection if it remains unspent. The ID should match the one used to - //originally lock the output. + // ReleaseOutput unlocks an output, allowing it to be available for coin + // selection if it remains unspent. The ID should match the one used to + // originally lock the output. ReleaseOutput(context.Context, *ReleaseOutputRequest) (*ReleaseOutputResponse, error) - // - //ListLeases lists all currently locked utxos. + // ListLeases lists all currently locked utxos. ListLeases(context.Context, *ListLeasesRequest) (*ListLeasesResponse, error) - // - //DeriveNextKey attempts to derive the *next* key within the key family - //(account in BIP43) specified. This method should return the next external - //child within this branch. + // DeriveNextKey attempts to derive the *next* key within the key family + // (account in BIP43) specified. This method should return the next external + // child within this branch. DeriveNextKey(context.Context, *KeyReq) (*signrpc.KeyDescriptor, error) - // - //DeriveKey attempts to derive an arbitrary key specified by the passed - //KeyLocator. + // DeriveKey attempts to derive an arbitrary key specified by the passed + // KeyLocator. DeriveKey(context.Context, *signrpc.KeyLocator) (*signrpc.KeyDescriptor, error) - // - //NextAddr returns the next unused address within the wallet. + // NextAddr returns the next unused address within the wallet. NextAddr(context.Context, *AddrRequest) (*AddrResponse, error) - // - //ListAccounts retrieves all accounts belonging to the wallet by default. A - //name and key scope filter can be provided to filter through all of the - //wallet accounts and return only those matching. + // ListAccounts retrieves all accounts belonging to the wallet by default. A + // name and key scope filter can be provided to filter through all of the + // wallet accounts and return only those matching. ListAccounts(context.Context, *ListAccountsRequest) (*ListAccountsResponse, error) - // - //RequiredReserve returns the minimum amount of satoshis that should be kept - //in the wallet in order to fee bump anchor channels if necessary. The value - //scales with the number of public anchor channels but is capped at a maximum. + // RequiredReserve returns the minimum amount of satoshis that should be kept + // in the wallet in order to fee bump anchor channels if necessary. The value + // scales with the number of public anchor channels but is capped at a maximum. RequiredReserve(context.Context, *RequiredReserveRequest) (*RequiredReserveResponse, error) - // - //ListAddresses retrieves all the addresses along with their balance. An - //account name filter can be provided to filter through all of the - //wallet accounts and return the addresses of only those matching. + // ListAddresses retrieves all the addresses along with their balance. An + // account name filter can be provided to filter through all of the + // wallet accounts and return the addresses of only those matching. ListAddresses(context.Context, *ListAddressesRequest) (*ListAddressesResponse, error) + // ImportAccount imports an account backed by an account extended public key. + // The master key fingerprint denotes the fingerprint of the root key + // corresponding to the account public key (also known as the key with + // derivation path m/). This may be required by some hardware wallets for + // proper identification and signing. // - //ImportAccount imports an account backed by an account extended public key. - //The master key fingerprint denotes the fingerprint of the root key - //corresponding to the account public key (also known as the key with - //derivation path m/). This may be required by some hardware wallets for - //proper identification and signing. + // The address type can usually be inferred from the key's version, but may be + // required for certain keys to map them into the proper scope. // - //The address type can usually be inferred from the key's version, but may be - //required for certain keys to map them into the proper scope. + // For BIP-0044 keys, an address type must be specified as we intend to not + // support importing BIP-0044 keys into the wallet using the legacy + // pay-to-pubkey-hash (P2PKH) scheme. A nested witness address type will force + // the standard BIP-0049 derivation scheme, while a witness address type will + // force the standard BIP-0084 derivation scheme. // - //For BIP-0044 keys, an address type must be specified as we intend to not - //support importing BIP-0044 keys into the wallet using the legacy - //pay-to-pubkey-hash (P2PKH) scheme. A nested witness address type will force - //the standard BIP-0049 derivation scheme, while a witness address type will - //force the standard BIP-0084 derivation scheme. + // For BIP-0049 keys, an address type must also be specified to make a + // distinction between the standard BIP-0049 address schema (nested witness + // pubkeys everywhere) and our own BIP-0049Plus address schema (nested pubkeys + // externally, witness pubkeys internally). // - //For BIP-0049 keys, an address type must also be specified to make a - //distinction between the standard BIP-0049 address schema (nested witness - //pubkeys everywhere) and our own BIP-0049Plus address schema (nested pubkeys - //externally, witness pubkeys internally). - // - //NOTE: Events (deposits/spends) for keys derived from an account will only be - //detected by lnd if they happen after the import. Rescans to detect past - //events will be supported later on. + // NOTE: Events (deposits/spends) for keys derived from an account will only be + // detected by lnd if they happen after the import. Rescans to detect past + // events will be supported later on. ImportAccount(context.Context, *ImportAccountRequest) (*ImportAccountResponse, error) + // ImportPublicKey imports a public key as watch-only into the wallet. // - //ImportPublicKey imports a public key as watch-only into the wallet. - // - //NOTE: Events (deposits/spends) for a key will only be detected by lnd if - //they happen after the import. Rescans to detect past events will be - //supported later on. + // NOTE: Events (deposits/spends) for a key will only be detected by lnd if + // they happen after the import. Rescans to detect past events will be + // supported later on. ImportPublicKey(context.Context, *ImportPublicKeyRequest) (*ImportPublicKeyResponse, error) - // - //PublishTransaction attempts to publish the passed transaction to the - //network. Once this returns without an error, the wallet will continually - //attempt to re-broadcast the transaction on start up, until it enters the - //chain. + // PublishTransaction attempts to publish the passed transaction to the + // network. Once this returns without an error, the wallet will continually + // attempt to re-broadcast the transaction on start up, until it enters the + // chain. PublishTransaction(context.Context, *Transaction) (*PublishResponse, error) - // - //SendOutputs is similar to the existing sendmany call in Bitcoind, and - //allows the caller to create a transaction that sends to several outputs at - //once. This is ideal when wanting to batch create a set of transactions. + // SendOutputs is similar to the existing sendmany call in Bitcoind, and + // allows the caller to create a transaction that sends to several outputs at + // once. This is ideal when wanting to batch create a set of transactions. SendOutputs(context.Context, *SendOutputsRequest) (*SendOutputsResponse, error) - // - //EstimateFee attempts to query the internal fee estimator of the wallet to - //determine the fee (in sat/kw) to attach to a transaction in order to - //achieve the confirmation target. + // EstimateFee attempts to query the internal fee estimator of the wallet to + // determine the fee (in sat/kw) to attach to a transaction in order to + // achieve the confirmation target. EstimateFee(context.Context, *EstimateFeeRequest) (*EstimateFeeResponse, error) + // PendingSweeps returns lists of on-chain outputs that lnd is currently + // attempting to sweep within its central batching engine. Outputs with similar + // fee rates are batched together in order to sweep them within a single + // transaction. // - //PendingSweeps returns lists of on-chain outputs that lnd is currently - //attempting to sweep within its central batching engine. Outputs with similar - //fee rates are batched together in order to sweep them within a single - //transaction. - // - //NOTE: Some of the fields within PendingSweepsRequest are not guaranteed to - //remain supported. This is an advanced API that depends on the internals of - //the UtxoSweeper, so things may change. + // NOTE: Some of the fields within PendingSweepsRequest are not guaranteed to + // remain supported. This is an advanced API that depends on the internals of + // the UtxoSweeper, so things may change. PendingSweeps(context.Context, *PendingSweepsRequest) (*PendingSweepsResponse, error) + // BumpFee bumps the fee of an arbitrary input within a transaction. This RPC + // takes a different approach than bitcoind's bumpfee command. lnd has a + // central batching engine in which inputs with similar fee rates are batched + // together to save on transaction fees. Due to this, we cannot rely on + // bumping the fee on a specific transaction, since transactions can change at + // any point with the addition of new inputs. The list of inputs that + // currently exist within lnd's central batching engine can be retrieved + // through the PendingSweeps RPC. // - //BumpFee bumps the fee of an arbitrary input within a transaction. This RPC - //takes a different approach than bitcoind's bumpfee command. lnd has a - //central batching engine in which inputs with similar fee rates are batched - //together to save on transaction fees. Due to this, we cannot rely on - //bumping the fee on a specific transaction, since transactions can change at - //any point with the addition of new inputs. The list of inputs that - //currently exist within lnd's central batching engine can be retrieved - //through the PendingSweeps RPC. + // When bumping the fee of an input that currently exists within lnd's central + // batching engine, a higher fee transaction will be created that replaces the + // lower fee transaction through the Replace-By-Fee (RBF) policy. If it // - //When bumping the fee of an input that currently exists within lnd's central - //batching engine, a higher fee transaction will be created that replaces the - //lower fee transaction through the Replace-By-Fee (RBF) policy. If it + // This RPC also serves useful when wanting to perform a Child-Pays-For-Parent + // (CPFP), where the child transaction pays for its parent's fee. This can be + // done by specifying an outpoint within the low fee transaction that is under + // the control of the wallet. // - //This RPC also serves useful when wanting to perform a Child-Pays-For-Parent - //(CPFP), where the child transaction pays for its parent's fee. This can be - //done by specifying an outpoint within the low fee transaction that is under - //the control of the wallet. + // The fee preference can be expressed either as a specific fee rate or a delta + // of blocks in which the output should be swept on-chain within. If a fee + // preference is not explicitly specified, then an error is returned. // - //The fee preference can be expressed either as a specific fee rate or a delta - //of blocks in which the output should be swept on-chain within. If a fee - //preference is not explicitly specified, then an error is returned. - // - //Note that this RPC currently doesn't perform any validation checks on the - //fee preference being provided. For now, the responsibility of ensuring that - //the new fee preference is sufficient is delegated to the user. + // Note that this RPC currently doesn't perform any validation checks on the + // fee preference being provided. For now, the responsibility of ensuring that + // the new fee preference is sufficient is delegated to the user. BumpFee(context.Context, *BumpFeeRequest) (*BumpFeeResponse, error) - // - //ListSweeps returns a list of the sweep transactions our node has produced. - //Note that these sweeps may not be confirmed yet, as we record sweeps on - //broadcast, not confirmation. + // ListSweeps returns a list of the sweep transactions our node has produced. + // Note that these sweeps may not be confirmed yet, as we record sweeps on + // broadcast, not confirmation. ListSweeps(context.Context, *ListSweepsRequest) (*ListSweepsResponse, error) - // - //LabelTransaction adds a label to a transaction. If the transaction already - //has a label the call will fail unless the overwrite bool is set. This will - //overwrite the exiting transaction label. Labels must not be empty, and - //cannot exceed 500 characters. + // LabelTransaction adds a label to a transaction. If the transaction already + // has a label the call will fail unless the overwrite bool is set. This will + // overwrite the exiting transaction label. Labels must not be empty, and + // cannot exceed 500 characters. LabelTransaction(context.Context, *LabelTransactionRequest) (*LabelTransactionResponse, error) + // FundPsbt creates a fully populated PSBT that contains enough inputs to fund + // the outputs specified in the template. There are two ways of specifying a + // template: Either by passing in a PSBT with at least one output declared or + // by passing in a raw TxTemplate message. // - //FundPsbt creates a fully populated PSBT that contains enough inputs to fund - //the outputs specified in the template. There are two ways of specifying a - //template: Either by passing in a PSBT with at least one output declared or - //by passing in a raw TxTemplate message. + // If there are no inputs specified in the template, coin selection is + // performed automatically. If the template does contain any inputs, it is + // assumed that full coin selection happened externally and no additional + // inputs are added. If the specified inputs aren't enough to fund the outputs + // with the given fee rate, an error is returned. // - //If there are no inputs specified in the template, coin selection is - //performed automatically. If the template does contain any inputs, it is - //assumed that full coin selection happened externally and no additional - //inputs are added. If the specified inputs aren't enough to fund the outputs - //with the given fee rate, an error is returned. + // After either selecting or verifying the inputs, all input UTXOs are locked + // with an internal app ID. // - //After either selecting or verifying the inputs, all input UTXOs are locked - //with an internal app ID. - // - //NOTE: If this method returns without an error, it is the caller's - //responsibility to either spend the locked UTXOs (by finalizing and then - //publishing the transaction) or to unlock/release the locked UTXOs in case of - //an error on the caller's side. + // NOTE: If this method returns without an error, it is the caller's + // responsibility to either spend the locked UTXOs (by finalizing and then + // publishing the transaction) or to unlock/release the locked UTXOs in case of + // an error on the caller's side. FundPsbt(context.Context, *FundPsbtRequest) (*FundPsbtResponse, error) + // SignPsbt expects a partial transaction with all inputs and outputs fully + // declared and tries to sign all unsigned inputs that have all required fields + // (UTXO information, BIP32 derivation information, witness or sig scripts) + // set. + // If no error is returned, the PSBT is ready to be given to the next signer or + // to be finalized if lnd was the last signer. // - //SignPsbt expects a partial transaction with all inputs and outputs fully - //declared and tries to sign all unsigned inputs that have all required fields - //(UTXO information, BIP32 derivation information, witness or sig scripts) - //set. - //If no error is returned, the PSBT is ready to be given to the next signer or - //to be finalized if lnd was the last signer. - // - //NOTE: This RPC only signs inputs (and only those it can sign), it does not - //perform any other tasks (such as coin selection, UTXO locking or - //input/output/fee value validation, PSBT finalization). Any input that is - //incomplete will be skipped. + // NOTE: This RPC only signs inputs (and only those it can sign), it does not + // perform any other tasks (such as coin selection, UTXO locking or + // input/output/fee value validation, PSBT finalization). Any input that is + // incomplete will be skipped. SignPsbt(context.Context, *SignPsbtRequest) (*SignPsbtResponse, error) + // FinalizePsbt expects a partial transaction with all inputs and outputs fully + // declared and tries to sign all inputs that belong to the wallet. Lnd must be + // the last signer of the transaction. That means, if there are any unsigned + // non-witness inputs or inputs without UTXO information attached or inputs + // without witness data that do not belong to lnd's wallet, this method will + // fail. If no error is returned, the PSBT is ready to be extracted and the + // final TX within to be broadcast. // - //FinalizePsbt expects a partial transaction with all inputs and outputs fully - //declared and tries to sign all inputs that belong to the wallet. Lnd must be - //the last signer of the transaction. That means, if there are any unsigned - //non-witness inputs or inputs without UTXO information attached or inputs - //without witness data that do not belong to lnd's wallet, this method will - //fail. If no error is returned, the PSBT is ready to be extracted and the - //final TX within to be broadcast. - // - //NOTE: This method does NOT publish the transaction once finalized. It is the - //caller's responsibility to either publish the transaction on success or - //unlock/release any locked UTXOs in case of an error in this method. + // NOTE: This method does NOT publish the transaction once finalized. It is the + // caller's responsibility to either publish the transaction on success or + // unlock/release any locked UTXOs in case of an error in this method. FinalizePsbt(context.Context, *FinalizePsbtRequest) (*FinalizePsbtResponse, error) mustEmbedUnimplementedWalletKitServer() } diff --git a/lnrpc/walletunlocker.pb.go b/lnrpc/walletunlocker.pb.go index 30aa7aeb2..99b19cfc3 100644 --- a/lnrpc/walletunlocker.pb.go +++ b/lnrpc/walletunlocker.pb.go @@ -25,15 +25,13 @@ type GenSeedRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //aezeed_passphrase is an optional user provided passphrase that will be used - //to encrypt the generated aezeed cipher seed. When using REST, this field - //must be encoded as base64. + // aezeed_passphrase is an optional user provided passphrase that will be used + // to encrypt the generated aezeed cipher seed. When using REST, this field + // must be encoded as base64. AezeedPassphrase []byte `protobuf:"bytes,1,opt,name=aezeed_passphrase,json=aezeedPassphrase,proto3" json:"aezeed_passphrase,omitempty"` - // - //seed_entropy is an optional 16-bytes generated via CSPRNG. If not - //specified, then a fresh set of randomness will be used to create the seed. - //When using REST, this field must be encoded as base64. + // seed_entropy is an optional 16-bytes generated via CSPRNG. If not + // specified, then a fresh set of randomness will be used to create the seed. + // When using REST, this field must be encoded as base64. SeedEntropy []byte `protobuf:"bytes,2,opt,name=seed_entropy,json=seedEntropy,proto3" json:"seed_entropy,omitempty"` } @@ -88,16 +86,14 @@ type GenSeedResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //cipher_seed_mnemonic is a 24-word mnemonic that encodes a prior aezeed - //cipher seed obtained by the user. This field is optional, as if not - //provided, then the daemon will generate a new cipher seed for the user. - //Otherwise, then the daemon will attempt to recover the wallet state linked - //to this cipher seed. + // cipher_seed_mnemonic is a 24-word mnemonic that encodes a prior aezeed + // cipher seed obtained by the user. This field is optional, as if not + // provided, then the daemon will generate a new cipher seed for the user. + // Otherwise, then the daemon will attempt to recover the wallet state linked + // to this cipher seed. CipherSeedMnemonic []string `protobuf:"bytes,1,rep,name=cipher_seed_mnemonic,json=cipherSeedMnemonic,proto3" json:"cipher_seed_mnemonic,omitempty"` - // - //enciphered_seed are the raw aezeed cipher seed bytes. This is the raw - //cipher text before run through our mnemonic encoding scheme. + // enciphered_seed are the raw aezeed cipher seed bytes. This is the raw + // cipher text before run through our mnemonic encoding scheme. EncipheredSeed []byte `protobuf:"bytes,2,opt,name=enciphered_seed,json=encipheredSeed,proto3" json:"enciphered_seed,omitempty"` } @@ -152,77 +148,67 @@ type InitWalletRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //wallet_password is the passphrase that should be used to encrypt the - //wallet. This MUST be at least 8 chars in length. After creation, this - //password is required to unlock the daemon. When using REST, this field - //must be encoded as base64. + // wallet_password is the passphrase that should be used to encrypt the + // wallet. This MUST be at least 8 chars in length. After creation, this + // password is required to unlock the daemon. When using REST, this field + // must be encoded as base64. WalletPassword []byte `protobuf:"bytes,1,opt,name=wallet_password,json=walletPassword,proto3" json:"wallet_password,omitempty"` - // - //cipher_seed_mnemonic is a 24-word mnemonic that encodes a prior aezeed - //cipher seed obtained by the user. This may have been generated by the - //GenSeed method, or be an existing seed. + // cipher_seed_mnemonic is a 24-word mnemonic that encodes a prior aezeed + // cipher seed obtained by the user. This may have been generated by the + // GenSeed method, or be an existing seed. CipherSeedMnemonic []string `protobuf:"bytes,2,rep,name=cipher_seed_mnemonic,json=cipherSeedMnemonic,proto3" json:"cipher_seed_mnemonic,omitempty"` - // - //aezeed_passphrase is an optional user provided passphrase that will be used - //to encrypt the generated aezeed cipher seed. When using REST, this field - //must be encoded as base64. + // aezeed_passphrase is an optional user provided passphrase that will be used + // to encrypt the generated aezeed cipher seed. When using REST, this field + // must be encoded as base64. AezeedPassphrase []byte `protobuf:"bytes,3,opt,name=aezeed_passphrase,json=aezeedPassphrase,proto3" json:"aezeed_passphrase,omitempty"` - // - //recovery_window is an optional argument specifying the address lookahead - //when restoring a wallet seed. The recovery window applies to each - //individual branch of the BIP44 derivation paths. Supplying a recovery - //window of zero indicates that no addresses should be recovered, such after - //the first initialization of the wallet. + // recovery_window is an optional argument specifying the address lookahead + // when restoring a wallet seed. The recovery window applies to each + // individual branch of the BIP44 derivation paths. Supplying a recovery + // window of zero indicates that no addresses should be recovered, such after + // the first initialization of the wallet. RecoveryWindow int32 `protobuf:"varint,4,opt,name=recovery_window,json=recoveryWindow,proto3" json:"recovery_window,omitempty"` - // - //channel_backups is an optional argument that allows clients to recover the - //settled funds within a set of channels. This should be populated if the - //user was unable to close out all channels and sweep funds before partial or - //total data loss occurred. If specified, then after on-chain recovery of - //funds, lnd begin to carry out the data loss recovery protocol in order to - //recover the funds in each channel from a remote force closed transaction. + // channel_backups is an optional argument that allows clients to recover the + // settled funds within a set of channels. This should be populated if the + // user was unable to close out all channels and sweep funds before partial or + // total data loss occurred. If specified, then after on-chain recovery of + // funds, lnd begin to carry out the data loss recovery protocol in order to + // recover the funds in each channel from a remote force closed transaction. ChannelBackups *ChanBackupSnapshot `protobuf:"bytes,5,opt,name=channel_backups,json=channelBackups,proto3" json:"channel_backups,omitempty"` - // - //stateless_init is an optional argument instructing the daemon NOT to create - //any *.macaroon files in its filesystem. If this parameter is set, then the - //admin macaroon returned in the response MUST be stored by the caller of the - //RPC as otherwise all access to the daemon will be lost! + // stateless_init is an optional argument instructing the daemon NOT to create + // any *.macaroon files in its filesystem. If this parameter is set, then the + // admin macaroon returned in the response MUST be stored by the caller of the + // RPC as otherwise all access to the daemon will be lost! StatelessInit bool `protobuf:"varint,6,opt,name=stateless_init,json=statelessInit,proto3" json:"stateless_init,omitempty"` - // - //extended_master_key is an alternative to specifying cipher_seed_mnemonic and - //aezeed_passphrase. Instead of deriving the master root key from the entropy - //of an aezeed cipher seed, the given extended master root key is used - //directly as the wallet's master key. This allows users to import/use a - //master key from another wallet. When doing so, lnd still uses its default - //SegWit only (BIP49/84) derivation paths and funds from custom/non-default - //derivation paths will not automatically appear in the on-chain wallet. Using - //an 'xprv' instead of an aezeed also has the disadvantage that the wallet's - //birthday is not known as that is an information that's only encoded in the - //aezeed, not the xprv. Therefore a birthday needs to be specified in - //extended_master_key_birthday_timestamp or a "safe" default value will be - //used. + // extended_master_key is an alternative to specifying cipher_seed_mnemonic and + // aezeed_passphrase. Instead of deriving the master root key from the entropy + // of an aezeed cipher seed, the given extended master root key is used + // directly as the wallet's master key. This allows users to import/use a + // master key from another wallet. When doing so, lnd still uses its default + // SegWit only (BIP49/84) derivation paths and funds from custom/non-default + // derivation paths will not automatically appear in the on-chain wallet. Using + // an 'xprv' instead of an aezeed also has the disadvantage that the wallet's + // birthday is not known as that is an information that's only encoded in the + // aezeed, not the xprv. Therefore a birthday needs to be specified in + // extended_master_key_birthday_timestamp or a "safe" default value will be + // used. ExtendedMasterKey string `protobuf:"bytes,7,opt,name=extended_master_key,json=extendedMasterKey,proto3" json:"extended_master_key,omitempty"` - // - //extended_master_key_birthday_timestamp is the optional unix timestamp in - //seconds to use as the wallet's birthday when using an extended master key - //to restore the wallet. lnd will only start scanning for funds in blocks that - //are after the birthday which can speed up the process significantly. If the - //birthday is not known, this should be left at its default value of 0 in - //which case lnd will start scanning from the first SegWit block (481824 on - //mainnet). + // extended_master_key_birthday_timestamp is the optional unix timestamp in + // seconds to use as the wallet's birthday when using an extended master key + // to restore the wallet. lnd will only start scanning for funds in blocks that + // are after the birthday which can speed up the process significantly. If the + // birthday is not known, this should be left at its default value of 0 in + // which case lnd will start scanning from the first SegWit block (481824 on + // mainnet). ExtendedMasterKeyBirthdayTimestamp uint64 `protobuf:"varint,8,opt,name=extended_master_key_birthday_timestamp,json=extendedMasterKeyBirthdayTimestamp,proto3" json:"extended_master_key_birthday_timestamp,omitempty"` - // - //watch_only is the third option of initializing a wallet: by importing - //account xpubs only and therefore creating a watch-only wallet that does not - //contain any private keys. That means the wallet won't be able to sign for - //any of the keys and _needs_ to be run with a remote signer that has the - //corresponding private keys and can serve signing RPC requests. + // watch_only is the third option of initializing a wallet: by importing + // account xpubs only and therefore creating a watch-only wallet that does not + // contain any private keys. That means the wallet won't be able to sign for + // any of the keys and _needs_ to be run with a remote signer that has the + // corresponding private keys and can serve signing RPC requests. WatchOnly *WatchOnly `protobuf:"bytes,9,opt,name=watch_only,json=watchOnly,proto3" json:"watch_only,omitempty"` - // - //macaroon_root_key is an optional 32 byte macaroon root key that can be - //provided when initializing the wallet rather than letting lnd generate one - //on its own. + // macaroon_root_key is an optional 32 byte macaroon root key that can be + // provided when initializing the wallet rather than letting lnd generate one + // on its own. MacaroonRootKey []byte `protobuf:"bytes,10,opt,name=macaroon_root_key,json=macaroonRootKey,proto3" json:"macaroon_root_key,omitempty"` } @@ -333,12 +319,11 @@ type InitWalletResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The binary serialized admin macaroon that can be used to access the daemon - //after creating the wallet. If the stateless_init parameter was set to true, - //this is the ONLY copy of the macaroon and MUST be stored safely by the - //caller. Otherwise a copy of this macaroon is also persisted on disk by the - //daemon, together with other macaroon files. + // The binary serialized admin macaroon that can be used to access the daemon + // after creating the wallet. If the stateless_init parameter was set to true, + // this is the ONLY copy of the macaroon and MUST be stored safely by the + // caller. Otherwise a copy of this macaroon is also persisted on disk by the + // daemon, together with other macaroon files. AdminMacaroon []byte `protobuf:"bytes,1,opt,name=admin_macaroon,json=adminMacaroon,proto3" json:"admin_macaroon,omitempty"` } @@ -386,25 +371,22 @@ type WatchOnly struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The unix timestamp in seconds of when the master key was created. lnd will - //only start scanning for funds in blocks that are after the birthday which - //can speed up the process significantly. If the birthday is not known, this - //should be left at its default value of 0 in which case lnd will start - //scanning from the first SegWit block (481824 on mainnet). + // The unix timestamp in seconds of when the master key was created. lnd will + // only start scanning for funds in blocks that are after the birthday which + // can speed up the process significantly. If the birthday is not known, this + // should be left at its default value of 0 in which case lnd will start + // scanning from the first SegWit block (481824 on mainnet). MasterKeyBirthdayTimestamp uint64 `protobuf:"varint,1,opt,name=master_key_birthday_timestamp,json=masterKeyBirthdayTimestamp,proto3" json:"master_key_birthday_timestamp,omitempty"` - // - //The fingerprint of the root key (also known as the key with derivation path - //m/) from which the account public keys were derived from. This may be - //required by some hardware wallets for proper identification and signing. The - //bytes must be in big-endian order. + // The fingerprint of the root key (also known as the key with derivation path + // m/) from which the account public keys were derived from. This may be + // required by some hardware wallets for proper identification and signing. The + // bytes must be in big-endian order. MasterKeyFingerprint []byte `protobuf:"bytes,2,opt,name=master_key_fingerprint,json=masterKeyFingerprint,proto3" json:"master_key_fingerprint,omitempty"` - // - //The list of accounts to import. There _must_ be an account for all of lnd's - //main key scopes: BIP49/BIP84 (m/49'/0'/0', m/84'/0'/0', note that the - //coin type is always 0, even for testnet/regtest) and lnd's internal key - //scope (m/1017'/'/'), where account is the key family as - //defined in `keychain/derivation.go` (currently indices 0 to 9). + // The list of accounts to import. There _must_ be an account for all of lnd's + // main key scopes: BIP49/BIP84 (m/49'/0'/0', m/84'/0'/0', note that the + // coin type is always 0, even for testnet/regtest) and lnd's internal key + // scope (m/1017'/'/'), where account is the key family as + // defined in `keychain/derivation.go` (currently indices 0 to 9). Accounts []*WatchOnlyAccount `protobuf:"bytes,3,rep,name=accounts,proto3" json:"accounts,omitempty"` } @@ -466,24 +448,20 @@ type WatchOnlyAccount struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //Purpose is the first number in the derivation path, must be either 49, 84 - //or 1017. + // Purpose is the first number in the derivation path, must be either 49, 84 + // or 1017. Purpose uint32 `protobuf:"varint,1,opt,name=purpose,proto3" json:"purpose,omitempty"` - // - //Coin type is the second number in the derivation path, this is _always_ 0 - //for purposes 49 and 84. It only needs to be set to 1 for purpose 1017 on - //testnet or regtest. + // Coin type is the second number in the derivation path, this is _always_ 0 + // for purposes 49 and 84. It only needs to be set to 1 for purpose 1017 on + // testnet or regtest. CoinType uint32 `protobuf:"varint,2,opt,name=coin_type,json=coinType,proto3" json:"coin_type,omitempty"` - // - //Account is the third number in the derivation path. For purposes 49 and 84 - //at least the default account (index 0) needs to be created but optional - //additional accounts are allowed. For purpose 1017 there needs to be exactly - //one account for each of the key families defined in `keychain/derivation.go` - //(currently indices 0 to 9) + // Account is the third number in the derivation path. For purposes 49 and 84 + // at least the default account (index 0) needs to be created but optional + // additional accounts are allowed. For purpose 1017 there needs to be exactly + // one account for each of the key families defined in `keychain/derivation.go` + // (currently indices 0 to 9) Account uint32 `protobuf:"varint,3,opt,name=account,proto3" json:"account,omitempty"` - // - //The extended public key at depth 3 for the given account. + // The extended public key at depth 3 for the given account. Xpub string `protobuf:"bytes,4,opt,name=xpub,proto3" json:"xpub,omitempty"` } @@ -552,29 +530,25 @@ type UnlockWalletRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //wallet_password should be the current valid passphrase for the daemon. This - //will be required to decrypt on-disk material that the daemon requires to - //function properly. When using REST, this field must be encoded as base64. + // wallet_password should be the current valid passphrase for the daemon. This + // will be required to decrypt on-disk material that the daemon requires to + // function properly. When using REST, this field must be encoded as base64. WalletPassword []byte `protobuf:"bytes,1,opt,name=wallet_password,json=walletPassword,proto3" json:"wallet_password,omitempty"` - // - //recovery_window is an optional argument specifying the address lookahead - //when restoring a wallet seed. The recovery window applies to each - //individual branch of the BIP44 derivation paths. Supplying a recovery - //window of zero indicates that no addresses should be recovered, such after - //the first initialization of the wallet. + // recovery_window is an optional argument specifying the address lookahead + // when restoring a wallet seed. The recovery window applies to each + // individual branch of the BIP44 derivation paths. Supplying a recovery + // window of zero indicates that no addresses should be recovered, such after + // the first initialization of the wallet. RecoveryWindow int32 `protobuf:"varint,2,opt,name=recovery_window,json=recoveryWindow,proto3" json:"recovery_window,omitempty"` - // - //channel_backups is an optional argument that allows clients to recover the - //settled funds within a set of channels. This should be populated if the - //user was unable to close out all channels and sweep funds before partial or - //total data loss occurred. If specified, then after on-chain recovery of - //funds, lnd begin to carry out the data loss recovery protocol in order to - //recover the funds in each channel from a remote force closed transaction. + // channel_backups is an optional argument that allows clients to recover the + // settled funds within a set of channels. This should be populated if the + // user was unable to close out all channels and sweep funds before partial or + // total data loss occurred. If specified, then after on-chain recovery of + // funds, lnd begin to carry out the data loss recovery protocol in order to + // recover the funds in each channel from a remote force closed transaction. ChannelBackups *ChanBackupSnapshot `protobuf:"bytes,3,opt,name=channel_backups,json=channelBackups,proto3" json:"channel_backups,omitempty"` - // - //stateless_init is an optional argument instructing the daemon NOT to create - //any *.macaroon files in its file system. + // stateless_init is an optional argument instructing the daemon NOT to create + // any *.macaroon files in its file system. StatelessInit bool `protobuf:"varint,4,opt,name=stateless_init,json=statelessInit,proto3" json:"stateless_init,omitempty"` } @@ -681,24 +655,20 @@ type ChangePasswordRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //current_password should be the current valid passphrase used to unlock the - //daemon. When using REST, this field must be encoded as base64. + // current_password should be the current valid passphrase used to unlock the + // daemon. When using REST, this field must be encoded as base64. CurrentPassword []byte `protobuf:"bytes,1,opt,name=current_password,json=currentPassword,proto3" json:"current_password,omitempty"` - // - //new_password should be the new passphrase that will be needed to unlock the - //daemon. When using REST, this field must be encoded as base64. + // new_password should be the new passphrase that will be needed to unlock the + // daemon. When using REST, this field must be encoded as base64. NewPassword []byte `protobuf:"bytes,2,opt,name=new_password,json=newPassword,proto3" json:"new_password,omitempty"` - // - //stateless_init is an optional argument instructing the daemon NOT to create - //any *.macaroon files in its filesystem. If this parameter is set, then the - //admin macaroon returned in the response MUST be stored by the caller of the - //RPC as otherwise all access to the daemon will be lost! + // stateless_init is an optional argument instructing the daemon NOT to create + // any *.macaroon files in its filesystem. If this parameter is set, then the + // admin macaroon returned in the response MUST be stored by the caller of the + // RPC as otherwise all access to the daemon will be lost! StatelessInit bool `protobuf:"varint,3,opt,name=stateless_init,json=statelessInit,proto3" json:"stateless_init,omitempty"` - // - //new_macaroon_root_key is an optional argument instructing the daemon to - //rotate the macaroon root key when set to true. This will invalidate all - //previously generated macaroons. + // new_macaroon_root_key is an optional argument instructing the daemon to + // rotate the macaroon root key when set to true. This will invalidate all + // previously generated macaroons. NewMacaroonRootKey bool `protobuf:"varint,4,opt,name=new_macaroon_root_key,json=newMacaroonRootKey,proto3" json:"new_macaroon_root_key,omitempty"` } @@ -767,13 +737,12 @@ type ChangePasswordResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The binary serialized admin macaroon that can be used to access the daemon - //after rotating the macaroon root key. If both the stateless_init and - //new_macaroon_root_key parameter were set to true, this is the ONLY copy of - //the macaroon that was created from the new root key and MUST be stored - //safely by the caller. Otherwise a copy of this macaroon is also persisted on - //disk by the daemon, together with other macaroon files. + // The binary serialized admin macaroon that can be used to access the daemon + // after rotating the macaroon root key. If both the stateless_init and + // new_macaroon_root_key parameter were set to true, this is the ONLY copy of + // the macaroon that was created from the new root key and MUST be stored + // safely by the caller. Otherwise a copy of this macaroon is also persisted on + // disk by the daemon, together with other macaroon files. AdminMacaroon []byte `protobuf:"bytes,1,opt,name=admin_macaroon,json=adminMacaroon,proto3" json:"admin_macaroon,omitempty"` } diff --git a/lnrpc/walletunlocker_grpc.pb.go b/lnrpc/walletunlocker_grpc.pb.go index e35116126..7bd503fdc 100644 --- a/lnrpc/walletunlocker_grpc.pb.go +++ b/lnrpc/walletunlocker_grpc.pb.go @@ -18,37 +18,35 @@ const _ = grpc.SupportPackageIsVersion7 // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type WalletUnlockerClient interface { + // GenSeed is the first method that should be used to instantiate a new lnd + // instance. This method allows a caller to generate a new aezeed cipher seed + // given an optional passphrase. If provided, the passphrase will be necessary + // to decrypt the cipherseed to expose the internal wallet seed. // - //GenSeed is the first method that should be used to instantiate a new lnd - //instance. This method allows a caller to generate a new aezeed cipher seed - //given an optional passphrase. If provided, the passphrase will be necessary - //to decrypt the cipherseed to expose the internal wallet seed. - // - //Once the cipherseed is obtained and verified by the user, the InitWallet - //method should be used to commit the newly generated seed, and create the - //wallet. + // Once the cipherseed is obtained and verified by the user, the InitWallet + // method should be used to commit the newly generated seed, and create the + // wallet. GenSeed(ctx context.Context, in *GenSeedRequest, opts ...grpc.CallOption) (*GenSeedResponse, error) + // InitWallet is used when lnd is starting up for the first time to fully + // initialize the daemon and its internal wallet. At the very least a wallet + // password must be provided. This will be used to encrypt sensitive material + // on disk. // - //InitWallet is used when lnd is starting up for the first time to fully - //initialize the daemon and its internal wallet. At the very least a wallet - //password must be provided. This will be used to encrypt sensitive material - //on disk. + // In the case of a recovery scenario, the user can also specify their aezeed + // mnemonic and passphrase. If set, then the daemon will use this prior state + // to initialize its internal wallet. // - //In the case of a recovery scenario, the user can also specify their aezeed - //mnemonic and passphrase. If set, then the daemon will use this prior state - //to initialize its internal wallet. - // - //Alternatively, this can be used along with the GenSeed RPC to obtain a - //seed, then present it to the user. Once it has been verified by the user, - //the seed can be fed into this RPC in order to commit the new wallet. + // Alternatively, this can be used along with the GenSeed RPC to obtain a + // seed, then present it to the user. Once it has been verified by the user, + // the seed can be fed into this RPC in order to commit the new wallet. InitWallet(ctx context.Context, in *InitWalletRequest, opts ...grpc.CallOption) (*InitWalletResponse, error) // lncli: `unlock` - //UnlockWallet is used at startup of lnd to provide a password to unlock - //the wallet database. + // UnlockWallet is used at startup of lnd to provide a password to unlock + // the wallet database. UnlockWallet(ctx context.Context, in *UnlockWalletRequest, opts ...grpc.CallOption) (*UnlockWalletResponse, error) // lncli: `changepassword` - //ChangePassword changes the password of the encrypted wallet. This will - //automatically unlock the wallet database if successful. + // ChangePassword changes the password of the encrypted wallet. This will + // automatically unlock the wallet database if successful. ChangePassword(ctx context.Context, in *ChangePasswordRequest, opts ...grpc.CallOption) (*ChangePasswordResponse, error) } @@ -100,37 +98,35 @@ func (c *walletUnlockerClient) ChangePassword(ctx context.Context, in *ChangePas // All implementations must embed UnimplementedWalletUnlockerServer // for forward compatibility type WalletUnlockerServer interface { + // GenSeed is the first method that should be used to instantiate a new lnd + // instance. This method allows a caller to generate a new aezeed cipher seed + // given an optional passphrase. If provided, the passphrase will be necessary + // to decrypt the cipherseed to expose the internal wallet seed. // - //GenSeed is the first method that should be used to instantiate a new lnd - //instance. This method allows a caller to generate a new aezeed cipher seed - //given an optional passphrase. If provided, the passphrase will be necessary - //to decrypt the cipherseed to expose the internal wallet seed. - // - //Once the cipherseed is obtained and verified by the user, the InitWallet - //method should be used to commit the newly generated seed, and create the - //wallet. + // Once the cipherseed is obtained and verified by the user, the InitWallet + // method should be used to commit the newly generated seed, and create the + // wallet. GenSeed(context.Context, *GenSeedRequest) (*GenSeedResponse, error) + // InitWallet is used when lnd is starting up for the first time to fully + // initialize the daemon and its internal wallet. At the very least a wallet + // password must be provided. This will be used to encrypt sensitive material + // on disk. // - //InitWallet is used when lnd is starting up for the first time to fully - //initialize the daemon and its internal wallet. At the very least a wallet - //password must be provided. This will be used to encrypt sensitive material - //on disk. + // In the case of a recovery scenario, the user can also specify their aezeed + // mnemonic and passphrase. If set, then the daemon will use this prior state + // to initialize its internal wallet. // - //In the case of a recovery scenario, the user can also specify their aezeed - //mnemonic and passphrase. If set, then the daemon will use this prior state - //to initialize its internal wallet. - // - //Alternatively, this can be used along with the GenSeed RPC to obtain a - //seed, then present it to the user. Once it has been verified by the user, - //the seed can be fed into this RPC in order to commit the new wallet. + // Alternatively, this can be used along with the GenSeed RPC to obtain a + // seed, then present it to the user. Once it has been verified by the user, + // the seed can be fed into this RPC in order to commit the new wallet. InitWallet(context.Context, *InitWalletRequest) (*InitWalletResponse, error) // lncli: `unlock` - //UnlockWallet is used at startup of lnd to provide a password to unlock - //the wallet database. + // UnlockWallet is used at startup of lnd to provide a password to unlock + // the wallet database. UnlockWallet(context.Context, *UnlockWalletRequest) (*UnlockWalletResponse, error) // lncli: `changepassword` - //ChangePassword changes the password of the encrypted wallet. This will - //automatically unlock the wallet database if successful. + // ChangePassword changes the password of the encrypted wallet. This will + // automatically unlock the wallet database if successful. ChangePassword(context.Context, *ChangePasswordRequest) (*ChangePasswordResponse, error) mustEmbedUnimplementedWalletUnlockerServer() } diff --git a/lnrpc/watchtowerrpc/watchtower_grpc.pb.go b/lnrpc/watchtowerrpc/watchtower_grpc.pb.go index d5a13d3a3..058745047 100644 --- a/lnrpc/watchtowerrpc/watchtower_grpc.pb.go +++ b/lnrpc/watchtowerrpc/watchtower_grpc.pb.go @@ -19,9 +19,9 @@ const _ = grpc.SupportPackageIsVersion7 // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type WatchtowerClient interface { // lncli: tower info - //GetInfo returns general information concerning the companion watchtower - //including its public key and URIs where the server is currently - //listening for clients. + // GetInfo returns general information concerning the companion watchtower + // including its public key and URIs where the server is currently + // listening for clients. GetInfo(ctx context.Context, in *GetInfoRequest, opts ...grpc.CallOption) (*GetInfoResponse, error) } @@ -47,9 +47,9 @@ func (c *watchtowerClient) GetInfo(ctx context.Context, in *GetInfoRequest, opts // for forward compatibility type WatchtowerServer interface { // lncli: tower info - //GetInfo returns general information concerning the companion watchtower - //including its public key and URIs where the server is currently - //listening for clients. + // GetInfo returns general information concerning the companion watchtower + // including its public key and URIs where the server is currently + // listening for clients. GetInfo(context.Context, *GetInfoRequest) (*GetInfoResponse, error) mustEmbedUnimplementedWatchtowerServer() } diff --git a/lnrpc/wtclientrpc/wtclient.pb.go b/lnrpc/wtclientrpc/wtclient.pb.go index 40addafd1..e78772de7 100644 --- a/lnrpc/wtclientrpc/wtclient.pb.go +++ b/lnrpc/wtclientrpc/wtclient.pb.go @@ -170,10 +170,9 @@ type RemoveTowerRequest struct { // The identifying public key of the watchtower to remove. Pubkey []byte `protobuf:"bytes,1,opt,name=pubkey,proto3" json:"pubkey,omitempty"` - // - //If set, then the record for this address will be removed, indicating that is - //is stale. Otherwise, the watchtower will no longer be used for future - //session negotiations and backups. + // If set, then the record for this address will be removed, indicating that is + // is stale. Otherwise, the watchtower will no longer be used for future + // session negotiations and backups. Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"` } @@ -323,26 +322,22 @@ type TowerSession struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The total number of successful backups that have been made to the - //watchtower session. + // The total number of successful backups that have been made to the + // watchtower session. NumBackups uint32 `protobuf:"varint,1,opt,name=num_backups,json=numBackups,proto3" json:"num_backups,omitempty"` - // - //The total number of backups in the session that are currently pending to be - //acknowledged by the watchtower. + // The total number of backups in the session that are currently pending to be + // acknowledged by the watchtower. NumPendingBackups uint32 `protobuf:"varint,2,opt,name=num_pending_backups,json=numPendingBackups,proto3" json:"num_pending_backups,omitempty"` // The maximum number of backups allowed by the watchtower session. MaxBackups uint32 `protobuf:"varint,3,opt,name=max_backups,json=maxBackups,proto3" json:"max_backups,omitempty"` - // - //Deprecated, use sweep_sat_per_vbyte. - //The fee rate, in satoshis per vbyte, that will be used by the watchtower for - //the justice transaction in the event of a channel breach. + // Deprecated, use sweep_sat_per_vbyte. + // The fee rate, in satoshis per vbyte, that will be used by the watchtower for + // the justice transaction in the event of a channel breach. // // Deprecated: Do not use. SweepSatPerByte uint32 `protobuf:"varint,4,opt,name=sweep_sat_per_byte,json=sweepSatPerByte,proto3" json:"sweep_sat_per_byte,omitempty"` - // - //The fee rate, in satoshis per vbyte, that will be used by the watchtower for - //the justice transaction in the event of a channel breach. + // The fee rate, in satoshis per vbyte, that will be used by the watchtower for + // the justice transaction in the event of a channel breach. SweepSatPerVbyte uint32 `protobuf:"varint,5,opt,name=sweep_sat_per_vbyte,json=sweepSatPerVbyte,proto3" json:"sweep_sat_per_vbyte,omitempty"` } @@ -637,17 +632,14 @@ type StatsResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The total number of backups made to all active and exhausted watchtower - //sessions. + // The total number of backups made to all active and exhausted watchtower + // sessions. NumBackups uint32 `protobuf:"varint,1,opt,name=num_backups,json=numBackups,proto3" json:"num_backups,omitempty"` - // - //The total number of backups that are pending to be acknowledged by all - //active and exhausted watchtower sessions. + // The total number of backups that are pending to be acknowledged by all + // active and exhausted watchtower sessions. NumPendingBackups uint32 `protobuf:"varint,2,opt,name=num_pending_backups,json=numPendingBackups,proto3" json:"num_pending_backups,omitempty"` - // - //The total number of backups that all active and exhausted watchtower - //sessions have failed to acknowledge. + // The total number of backups that all active and exhausted watchtower + // sessions have failed to acknowledge. NumFailedBackups uint32 `protobuf:"varint,3,opt,name=num_failed_backups,json=numFailedBackups,proto3" json:"num_failed_backups,omitempty"` // The total number of new sessions made to watchtowers. NumSessionsAcquired uint32 `protobuf:"varint,4,opt,name=num_sessions_acquired,json=numSessionsAcquired,proto3" json:"num_sessions_acquired,omitempty"` @@ -727,8 +719,7 @@ type PolicyRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The client type from which to retrieve the active offering policy. + // The client type from which to retrieve the active offering policy. PolicyType PolicyType `protobuf:"varint,1,opt,name=policy_type,json=policyType,proto3,enum=wtclientrpc.PolicyType" json:"policy_type,omitempty"` } @@ -776,20 +767,17 @@ type PolicyResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // - //The maximum number of updates each session we negotiate with watchtowers - //should allow. + // The maximum number of updates each session we negotiate with watchtowers + // should allow. MaxUpdates uint32 `protobuf:"varint,1,opt,name=max_updates,json=maxUpdates,proto3" json:"max_updates,omitempty"` - // - //Deprecated, use sweep_sat_per_vbyte. - //The fee rate, in satoshis per vbyte, that will be used by watchtowers for - //justice transactions in response to channel breaches. + // Deprecated, use sweep_sat_per_vbyte. + // The fee rate, in satoshis per vbyte, that will be used by watchtowers for + // justice transactions in response to channel breaches. // // Deprecated: Do not use. SweepSatPerByte uint32 `protobuf:"varint,2,opt,name=sweep_sat_per_byte,json=sweepSatPerByte,proto3" json:"sweep_sat_per_byte,omitempty"` - // - //The fee rate, in satoshis per vbyte, that will be used by watchtowers for - //justice transactions in response to channel breaches. + // The fee rate, in satoshis per vbyte, that will be used by watchtowers for + // justice transactions in response to channel breaches. SweepSatPerVbyte uint32 `protobuf:"varint,3,opt,name=sweep_sat_per_vbyte,json=sweepSatPerVbyte,proto3" json:"sweep_sat_per_vbyte,omitempty"` } diff --git a/lnrpc/wtclientrpc/wtclient_grpc.pb.go b/lnrpc/wtclientrpc/wtclient_grpc.pb.go index 4a5fca350..169fc4e53 100644 --- a/lnrpc/wtclientrpc/wtclient_grpc.pb.go +++ b/lnrpc/wtclientrpc/wtclient_grpc.pb.go @@ -18,17 +18,15 @@ const _ = grpc.SupportPackageIsVersion7 // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type WatchtowerClientClient interface { - // - //AddTower adds a new watchtower reachable at the given address and - //considers it for new sessions. If the watchtower already exists, then - //any new addresses included will be considered when dialing it for - //session negotiations and backups. + // AddTower adds a new watchtower reachable at the given address and + // considers it for new sessions. If the watchtower already exists, then + // any new addresses included will be considered when dialing it for + // session negotiations and backups. AddTower(ctx context.Context, in *AddTowerRequest, opts ...grpc.CallOption) (*AddTowerResponse, error) - // - //RemoveTower removes a watchtower from being considered for future session - //negotiations and from being used for any subsequent backups until it's added - //again. If an address is provided, then this RPC only serves as a way of - //removing the address from the watchtower instead. + // RemoveTower removes a watchtower from being considered for future session + // negotiations and from being used for any subsequent backups until it's added + // again. If an address is provided, then this RPC only serves as a way of + // removing the address from the watchtower instead. RemoveTower(ctx context.Context, in *RemoveTowerRequest, opts ...grpc.CallOption) (*RemoveTowerResponse, error) // ListTowers returns the list of watchtowers registered with the client. ListTowers(ctx context.Context, in *ListTowersRequest, opts ...grpc.CallOption) (*ListTowersResponse, error) @@ -106,17 +104,15 @@ func (c *watchtowerClientClient) Policy(ctx context.Context, in *PolicyRequest, // All implementations must embed UnimplementedWatchtowerClientServer // for forward compatibility type WatchtowerClientServer interface { - // - //AddTower adds a new watchtower reachable at the given address and - //considers it for new sessions. If the watchtower already exists, then - //any new addresses included will be considered when dialing it for - //session negotiations and backups. + // AddTower adds a new watchtower reachable at the given address and + // considers it for new sessions. If the watchtower already exists, then + // any new addresses included will be considered when dialing it for + // session negotiations and backups. AddTower(context.Context, *AddTowerRequest) (*AddTowerResponse, error) - // - //RemoveTower removes a watchtower from being considered for future session - //negotiations and from being used for any subsequent backups until it's added - //again. If an address is provided, then this RPC only serves as a way of - //removing the address from the watchtower instead. + // RemoveTower removes a watchtower from being considered for future session + // negotiations and from being used for any subsequent backups until it's added + // again. If an address is provided, then this RPC only serves as a way of + // removing the address from the watchtower instead. RemoveTower(context.Context, *RemoveTowerRequest) (*RemoveTowerResponse, error) // ListTowers returns the list of watchtowers registered with the client. ListTowers(context.Context, *ListTowersRequest) (*ListTowersResponse, error)