README

lnrpc

Build Status MIT licensed GoDoc

This lnrpc package implements both a client and server for lnds RPC system which is based off of the high-performance cross-platform gRPC RPC framework. By default, only the Go client+server libraries are compiled within the package. In order to compile the client side libraries for other supported languages, the protoc tool will need to be used to generate the compiled protos for a specific language.

The following languages are supported as clients to lnrpc: C++, Go, Node.js, Java, Ruby, Android Java, PHP, Python, C#, Objective-C.

Service: Lightning

The list of defined RPCs on the service Lightning are the following (with a brief description):

  • WalletBalance
    • Returns the wallet's current confirmed balance in ACM.
  • ChannelBalance
    • Returns the daemons' available aggregate channel balance in ACM.
  • GetTransactions
    • Returns a list of on-chain transactions that pay to or are spends from lnd.
  • SendCoins
    • Sends an amount of satoshis to a specific address.
  • ListUnspent
    • Lists available utxos within a range of confirmations.
  • SubscribeTransactions
    • Returns a stream which sends async notifications each time a transaction is created or one is received that pays to us.
  • SendMany
    • Allows the caller to create a transaction with an arbitrary fan-out (many outputs).
  • NewAddress
    • Returns a new address, the following address types are supported: pay-to-witness-key-hash (p2wkh) and nested-pay-to-witness-key-hash (np2wkh).
  • SignMessage
    • Signs a message with the node's identity key and returns a zbase32 encoded signature.
  • VerifyMessage
    • Verifies a signature signed by another node on a message. The other node must be an active node in the channel database.
  • ConnectPeer
    • Connects to a peer identified by a public key and host.
  • DisconnectPeer
    • Disconnects a peer identified by a public key.
  • ListPeers
    • Lists all available connected peers.
  • GetInfo
    • Returns basic data concerning the daemon.
  • PendingChannels
    • List the number of pending (not fully confirmed) channels.
  • ListChannels
    • List all active channels the daemon manages.
  • OpenChannelSync
    • OpenChannelSync is a synchronous version of the OpenChannel RPC call.
  • OpenChannel
    • Attempts to open a channel to a target peer with a specific amount and push amount.
  • CloseChannel
    • Attempts to close a target channel. A channel can either be closed cooperatively if the channel peer is online, or using a "force" close to broadcast the latest channel state.
  • SendPayment
    • Send a payment over Lightning to a target peer.
  • SendPaymentSync
    • SendPaymentSync is the synchronous non-streaming version of SendPayment.
  • SendToRoute
    • Send a payment over Lightning to a target peer through a route explicitly defined by the user.
  • SendToRouteSync
    • SendToRouteSync is the synchronous non-streaming version of SendToRoute.
  • AddInvoice
    • Adds an invoice to the daemon. Invoices are automatically settled once seen as an incoming HTLC.
  • ListInvoices
    • Lists all stored invoices.
  • LookupInvoice
    • Attempts to look up an invoice by payment hash (r-hash).
  • SubscribeInvoices
    • Creates a uni-directional stream which receives async notifications as the daemon settles invoices
  • DecodePayReq
    • Decode a payment request, returning a full description of the conditions encoded within the payment request.
  • ListPayments
    • List all outgoing Lightning payments the daemon has made.
  • DeleteAllPayments
    • Deletes all outgoing payments from DB.
  • DescribeGraph
    • Returns a description of the known channel graph from the PoV of the node.
  • GetChanInfo
    • Returns information for a specific channel identified by channel ID.
  • GetNodeInfo
    • Returns information for a particular node identified by its identity public key.
  • QueryRoutes
    • Queries for a possible route to a target peer which can carry a certain amount of payment.
  • GetNetworkInfo
    • Returns some network level statistics.
  • StopDaemon
    • Sends a shutdown request to the interrupt handler, triggering a graceful shutdown of the daemon.
  • SubscribeChannelGraph
    • Creates a stream which receives async notifications upon any changes to the channel graph topology from the point of view of the responding node.
  • DebugLevel
    • Set logging verbosity of lnd programmatically
  • FeeReport
    • Allows the caller to obtain a report detailing the current fee schedule enforced by the node globally for each channel.
  • UpdateChannelPolicy
    • Allows the caller to update the fee schedule and channel policies for all channels globally, or a particular channel

Service: WalletUnlocker

The list of defined RPCs on the service WalletUnlocker are the following (with a brief description):

  • CreateWallet
    • Set encryption password for the wallet database.
  • UnlockWallet
    • Provide a password to unlock the wallet database.

Installation and Updating

$ go get -u github.com/Actinium-project/lnd/lnrpc

Generate protobuf definitions

  1. Download v.3.4.0 of protoc for your operating system and add it to your PATH. For example, if using macOS:
$ curl -LO https://github.com/google/protobuf/releases/download/v3.4.0/protoc-3.4.0-osx-x86_64.zip
$ unzip protoc-3.4.0-osx-x86_64.zip -d protoc
$ export PATH=$PWD/protoc/bin:$PATH
  1. Install golang/protobuf at commit aa810b61a9c79d51363740d207bb46cf8e620ed5 (v1.2.0).
$ git clone https://github.com/golang/protobuf $GOPATH/src/github.com/golang/protobuf
$ cd $GOPATH/src/github.com/golang/protobuf
$ git reset --hard aa810b61a9c79d51363740d207bb46cf8e620ed5
$ make
  1. Install 'genproto' at commit a8101f21cf983e773d0c1133ebc5424792003214.
$ go get google.golang.org/genproto
$ cd $GOPATH/src/google.golang.org/genproto
$ git reset --hard a8101f21cf983e773d0c1133ebc5424792003214
  1. Install grpc-ecosystem/grpc-gateway at commit f2862b476edcef83412c7af8687c9cd8e4097c0f.
$ git clone https://github.com/grpc-ecosystem/grpc-gateway $GOPATH/src/github.com/grpc-ecosystem/grpc-gateway
$ cd $GOPATH/src/github.com/grpc-ecosystem/grpc-gateway
$ git reset --hard f2862b476edcef83412c7af8687c9cd8e4097c0f
$ go install ./protoc-gen-grpc-gateway ./protoc-gen-swagger
  1. Run gen_protos.sh to generate new protobuf definitions.
Expand ▾ Collapse ▴

Documentation

Overview

    Package lnrpc is a reverse proxy.

    It translates gRPC into RESTful JSON APIs.

    Index

    Constants

    This section is empty.

    Variables

    View Source
    var AddressType_name = map[int32]string{
    	0: "WITNESS_PUBKEY_HASH",
    	1: "NESTED_PUBKEY_HASH",
    }
    View Source
    var AddressType_value = map[string]int32{
    	"WITNESS_PUBKEY_HASH": 0,
    	"NESTED_PUBKEY_HASH":  1,
    }
    View Source
    var ChannelCloseSummary_ClosureType_name = map[int32]string{
    	0: "COOPERATIVE_CLOSE",
    	1: "LOCAL_FORCE_CLOSE",
    	2: "REMOTE_FORCE_CLOSE",
    	3: "BREACH_CLOSE",
    	4: "FUNDING_CANCELED",
    	5: "ABANDONED",
    }
    View Source
    var ChannelCloseSummary_ClosureType_value = map[string]int32{
    	"COOPERATIVE_CLOSE":  0,
    	"LOCAL_FORCE_CLOSE":  1,
    	"REMOTE_FORCE_CLOSE": 2,
    	"BREACH_CLOSE":       3,
    	"FUNDING_CANCELED":   4,
    	"ABANDONED":          5,
    }
    View Source
    var ChannelEventUpdate_UpdateType_name = map[int32]string{
    	0: "OPEN_CHANNEL",
    	1: "CLOSED_CHANNEL",
    	2: "ACTIVE_CHANNEL",
    	3: "INACTIVE_CHANNEL",
    }
    View Source
    var ChannelEventUpdate_UpdateType_value = map[string]int32{
    	"OPEN_CHANNEL":     0,
    	"CLOSED_CHANNEL":   1,
    	"ACTIVE_CHANNEL":   2,
    	"INACTIVE_CHANNEL": 3,
    }
    View Source
    var Invoice_InvoiceState_name = map[int32]string{
    	0: "OPEN",
    	1: "SETTLED",
    	2: "CANCELED",
    }
    View Source
    var Invoice_InvoiceState_value = map[string]int32{
    	"OPEN":     0,
    	"SETTLED":  1,
    	"CANCELED": 2,
    }

    Functions

    func FileExists

    func FileExists(name string) bool

      FileExists reports whether the named file or directory exists.

      func RegisterLightningHandler

      func RegisterLightningHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error

        RegisterLightningHandler registers the http handlers for service Lightning to "mux". The handlers forward requests to the grpc endpoint over "conn".

        func RegisterLightningHandlerFromEndpoint

        func RegisterLightningHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)

          RegisterLightningHandlerFromEndpoint is same as RegisterLightningHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.

          func RegisterLightningServer

          func RegisterLightningServer(s *grpc.Server, srv LightningServer)

          func RegisterSubServer

          func RegisterSubServer(driver *SubServerDriver) error

            RegisterSubServer should be called by a sub-server within its package's init() method to register its existence with the main sub-server map. Each sub-server, if active, is meant to register via this method in their init() method. This allows callers to easily initialize and register all sub-servers without knowing any details beyond that the fact that they satisfy the necessary interfaces.

            NOTE: This function is safe for concurrent access.

            func RegisterWalletUnlockerHandler

            func RegisterWalletUnlockerHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error

              RegisterWalletUnlockerHandler registers the http handlers for service WalletUnlocker to "mux". The handlers forward requests to the grpc endpoint over "conn".

              func RegisterWalletUnlockerHandlerFromEndpoint

              func RegisterWalletUnlockerHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)

                RegisterWalletUnlockerHandlerFromEndpoint is same as RegisterWalletUnlockerHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.

                func RegisterWalletUnlockerServer

                func RegisterWalletUnlockerServer(s *grpc.Server, srv WalletUnlockerServer)

                func SupportedServers

                func SupportedServers() []string

                  SupportedServers returns slice of the names of all registered sub-servers.

                  NOTE: This function is safe for concurrent access.

                  Types

                  type AbandonChannelRequest

                  type AbandonChannelRequest struct {
                  	ChannelPoint         *ChannelPoint `protobuf:"bytes,1,opt,name=channel_point,json=channelPoint,proto3" json:"channel_point,omitempty"`
                  	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
                  	XXX_unrecognized     []byte        `json:"-"`
                  	XXX_sizecache        int32         `json:"-"`
                  }

                  func (*AbandonChannelRequest) Descriptor

                  func (*AbandonChannelRequest) Descriptor() ([]byte, []int)

                  func (*AbandonChannelRequest) GetChannelPoint

                  func (m *AbandonChannelRequest) GetChannelPoint() *ChannelPoint

                  func (*AbandonChannelRequest) ProtoMessage

                  func (*AbandonChannelRequest) ProtoMessage()

                  func (*AbandonChannelRequest) Reset

                  func (m *AbandonChannelRequest) Reset()

                  func (*AbandonChannelRequest) String

                  func (m *AbandonChannelRequest) String() string

                  func (*AbandonChannelRequest) XXX_DiscardUnknown

                  func (m *AbandonChannelRequest) XXX_DiscardUnknown()

                  func (*AbandonChannelRequest) XXX_Marshal

                  func (m *AbandonChannelRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                  func (*AbandonChannelRequest) XXX_Merge

                  func (dst *AbandonChannelRequest) XXX_Merge(src proto.Message)

                  func (*AbandonChannelRequest) XXX_Size

                  func (m *AbandonChannelRequest) XXX_Size() int

                  func (*AbandonChannelRequest) XXX_Unmarshal

                  func (m *AbandonChannelRequest) XXX_Unmarshal(b []byte) error

                  type AbandonChannelResponse

                  type AbandonChannelResponse struct {
                  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
                  	XXX_unrecognized     []byte   `json:"-"`
                  	XXX_sizecache        int32    `json:"-"`
                  }

                  func (*AbandonChannelResponse) Descriptor

                  func (*AbandonChannelResponse) Descriptor() ([]byte, []int)

                  func (*AbandonChannelResponse) ProtoMessage

                  func (*AbandonChannelResponse) ProtoMessage()

                  func (*AbandonChannelResponse) Reset

                  func (m *AbandonChannelResponse) Reset()

                  func (*AbandonChannelResponse) String

                  func (m *AbandonChannelResponse) String() string

                  func (*AbandonChannelResponse) XXX_DiscardUnknown

                  func (m *AbandonChannelResponse) XXX_DiscardUnknown()

                  func (*AbandonChannelResponse) XXX_Marshal

                  func (m *AbandonChannelResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                  func (*AbandonChannelResponse) XXX_Merge

                  func (dst *AbandonChannelResponse) XXX_Merge(src proto.Message)

                  func (*AbandonChannelResponse) XXX_Size

                  func (m *AbandonChannelResponse) XXX_Size() int

                  func (*AbandonChannelResponse) XXX_Unmarshal

                  func (m *AbandonChannelResponse) XXX_Unmarshal(b []byte) error

                  type AddInvoiceResponse

                  type AddInvoiceResponse struct {
                  	RHash []byte `protobuf:"bytes,1,opt,name=r_hash,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.
                  	PaymentRequest string `protobuf:"bytes,2,opt,name=payment_request,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.
                  	AddIndex             uint64   `protobuf:"varint,16,opt,name=add_index,proto3" json:"add_index,omitempty"`
                  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
                  	XXX_unrecognized     []byte   `json:"-"`
                  	XXX_sizecache        int32    `json:"-"`
                  }

                  func (*AddInvoiceResponse) Descriptor

                  func (*AddInvoiceResponse) Descriptor() ([]byte, []int)

                  func (*AddInvoiceResponse) GetAddIndex

                  func (m *AddInvoiceResponse) GetAddIndex() uint64

                  func (*AddInvoiceResponse) GetPaymentRequest

                  func (m *AddInvoiceResponse) GetPaymentRequest() string

                  func (*AddInvoiceResponse) GetRHash

                  func (m *AddInvoiceResponse) GetRHash() []byte

                  func (*AddInvoiceResponse) ProtoMessage

                  func (*AddInvoiceResponse) ProtoMessage()

                  func (*AddInvoiceResponse) Reset

                  func (m *AddInvoiceResponse) Reset()

                  func (*AddInvoiceResponse) String

                  func (m *AddInvoiceResponse) String() string

                  func (*AddInvoiceResponse) XXX_DiscardUnknown

                  func (m *AddInvoiceResponse) XXX_DiscardUnknown()

                  func (*AddInvoiceResponse) XXX_Marshal

                  func (m *AddInvoiceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                  func (*AddInvoiceResponse) XXX_Merge

                  func (dst *AddInvoiceResponse) XXX_Merge(src proto.Message)

                  func (*AddInvoiceResponse) XXX_Size

                  func (m *AddInvoiceResponse) XXX_Size() int

                  func (*AddInvoiceResponse) XXX_Unmarshal

                  func (m *AddInvoiceResponse) XXX_Unmarshal(b []byte) error

                  type AddressType

                  type AddressType int32

                    * `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)

                    const (
                    	AddressType_WITNESS_PUBKEY_HASH AddressType = 0
                    	AddressType_NESTED_PUBKEY_HASH  AddressType = 1
                    )

                    func (AddressType) EnumDescriptor

                    func (AddressType) EnumDescriptor() ([]byte, []int)

                    func (AddressType) String

                    func (x AddressType) String() string

                    type Chain

                    type Chain struct {
                    	// / The blockchain the node is on (eg bitcoin, actinium)
                    	Chain string `protobuf:"bytes,1,opt,name=chain,proto3" json:"chain,omitempty"`
                    	// / The network the node is on (eg regtest, testnet, mainnet)
                    	Network              string   `protobuf:"bytes,2,opt,name=network,proto3" json:"network,omitempty"`
                    	XXX_NoUnkeyedLiteral struct{} `json:"-"`
                    	XXX_unrecognized     []byte   `json:"-"`
                    	XXX_sizecache        int32    `json:"-"`
                    }

                    func (*Chain) Descriptor

                    func (*Chain) Descriptor() ([]byte, []int)

                    func (*Chain) GetChain

                    func (m *Chain) GetChain() string

                    func (*Chain) GetNetwork

                    func (m *Chain) GetNetwork() string

                    func (*Chain) ProtoMessage

                    func (*Chain) ProtoMessage()

                    func (*Chain) Reset

                    func (m *Chain) Reset()

                    func (*Chain) String

                    func (m *Chain) String() string

                    func (*Chain) XXX_DiscardUnknown

                    func (m *Chain) XXX_DiscardUnknown()

                    func (*Chain) XXX_Marshal

                    func (m *Chain) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                    func (*Chain) XXX_Merge

                    func (dst *Chain) XXX_Merge(src proto.Message)

                    func (*Chain) XXX_Size

                    func (m *Chain) XXX_Size() int

                    func (*Chain) XXX_Unmarshal

                    func (m *Chain) XXX_Unmarshal(b []byte) error

                    type ChanInfoRequest

                    type ChanInfoRequest struct {
                    	// *
                    	// 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"`
                    	XXX_NoUnkeyedLiteral struct{} `json:"-"`
                    	XXX_unrecognized     []byte   `json:"-"`
                    	XXX_sizecache        int32    `json:"-"`
                    }

                    func (*ChanInfoRequest) Descriptor

                    func (*ChanInfoRequest) Descriptor() ([]byte, []int)

                    func (*ChanInfoRequest) GetChanId

                    func (m *ChanInfoRequest) GetChanId() uint64

                    func (*ChanInfoRequest) ProtoMessage

                    func (*ChanInfoRequest) ProtoMessage()

                    func (*ChanInfoRequest) Reset

                    func (m *ChanInfoRequest) Reset()

                    func (*ChanInfoRequest) String

                    func (m *ChanInfoRequest) String() string

                    func (*ChanInfoRequest) XXX_DiscardUnknown

                    func (m *ChanInfoRequest) XXX_DiscardUnknown()

                    func (*ChanInfoRequest) XXX_Marshal

                    func (m *ChanInfoRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                    func (*ChanInfoRequest) XXX_Merge

                    func (dst *ChanInfoRequest) XXX_Merge(src proto.Message)

                    func (*ChanInfoRequest) XXX_Size

                    func (m *ChanInfoRequest) XXX_Size() int

                    func (*ChanInfoRequest) XXX_Unmarshal

                    func (m *ChanInfoRequest) XXX_Unmarshal(b []byte) error

                    type ChangePasswordRequest

                    type ChangePasswordRequest struct {
                    	// *
                    	// current_password should be the current valid passphrase used to unlock the
                    	// daemon.
                    	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.
                    	NewPassword          []byte   `protobuf:"bytes,2,opt,name=new_password,json=newPassword,proto3" json:"new_password,omitempty"`
                    	XXX_NoUnkeyedLiteral struct{} `json:"-"`
                    	XXX_unrecognized     []byte   `json:"-"`
                    	XXX_sizecache        int32    `json:"-"`
                    }

                    func (*ChangePasswordRequest) Descriptor

                    func (*ChangePasswordRequest) Descriptor() ([]byte, []int)

                    func (*ChangePasswordRequest) GetCurrentPassword

                    func (m *ChangePasswordRequest) GetCurrentPassword() []byte

                    func (*ChangePasswordRequest) GetNewPassword

                    func (m *ChangePasswordRequest) GetNewPassword() []byte

                    func (*ChangePasswordRequest) ProtoMessage

                    func (*ChangePasswordRequest) ProtoMessage()

                    func (*ChangePasswordRequest) Reset

                    func (m *ChangePasswordRequest) Reset()

                    func (*ChangePasswordRequest) String

                    func (m *ChangePasswordRequest) String() string

                    func (*ChangePasswordRequest) XXX_DiscardUnknown

                    func (m *ChangePasswordRequest) XXX_DiscardUnknown()

                    func (*ChangePasswordRequest) XXX_Marshal

                    func (m *ChangePasswordRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                    func (*ChangePasswordRequest) XXX_Merge

                    func (dst *ChangePasswordRequest) XXX_Merge(src proto.Message)

                    func (*ChangePasswordRequest) XXX_Size

                    func (m *ChangePasswordRequest) XXX_Size() int

                    func (*ChangePasswordRequest) XXX_Unmarshal

                    func (m *ChangePasswordRequest) XXX_Unmarshal(b []byte) error

                    type ChangePasswordResponse

                    type ChangePasswordResponse struct {
                    	XXX_NoUnkeyedLiteral struct{} `json:"-"`
                    	XXX_unrecognized     []byte   `json:"-"`
                    	XXX_sizecache        int32    `json:"-"`
                    }

                    func (*ChangePasswordResponse) Descriptor

                    func (*ChangePasswordResponse) Descriptor() ([]byte, []int)

                    func (*ChangePasswordResponse) ProtoMessage

                    func (*ChangePasswordResponse) ProtoMessage()

                    func (*ChangePasswordResponse) Reset

                    func (m *ChangePasswordResponse) Reset()

                    func (*ChangePasswordResponse) String

                    func (m *ChangePasswordResponse) String() string

                    func (*ChangePasswordResponse) XXX_DiscardUnknown

                    func (m *ChangePasswordResponse) XXX_DiscardUnknown()

                    func (*ChangePasswordResponse) XXX_Marshal

                    func (m *ChangePasswordResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                    func (*ChangePasswordResponse) XXX_Merge

                    func (dst *ChangePasswordResponse) XXX_Merge(src proto.Message)

                    func (*ChangePasswordResponse) XXX_Size

                    func (m *ChangePasswordResponse) XXX_Size() int

                    func (*ChangePasswordResponse) XXX_Unmarshal

                    func (m *ChangePasswordResponse) XXX_Unmarshal(b []byte) error

                    type Channel

                    type Channel struct {
                    	// / Whether this channel is active or not
                    	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,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.
                    	ChannelPoint string `protobuf:"bytes,3,opt,name=channel_point,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.
                    	ChanId uint64 `protobuf:"varint,4,opt,name=chan_id,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"`
                    	// / This node's current balance in this channel
                    	LocalBalance int64 `protobuf:"varint,6,opt,name=local_balance,proto3" json:"local_balance,omitempty"`
                    	// / The counterparty's current balance in this channel
                    	RemoteBalance int64 `protobuf:"varint,7,opt,name=remote_balance,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.
                    	CommitFee int64 `protobuf:"varint,8,opt,name=commit_fee,proto3" json:"commit_fee,omitempty"`
                    	// / The weight of the commitment transaction
                    	CommitWeight int64 `protobuf:"varint,9,opt,name=commit_weight,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.
                    	FeePerKw int64 `protobuf:"varint,10,opt,name=fee_per_kw,proto3" json:"fee_per_kw,omitempty"`
                    	// / The unsettled balance in this channel
                    	UnsettledBalance int64 `protobuf:"varint,11,opt,name=unsettled_balance,proto3" json:"unsettled_balance,omitempty"`
                    	// *
                    	// The total number of satoshis we've sent within this channel.
                    	TotalSatoshisSent int64 `protobuf:"varint,12,opt,name=total_satoshis_sent,proto3" json:"total_satoshis_sent,omitempty"`
                    	// *
                    	// The total number of satoshis we've received within this channel.
                    	TotalSatoshisReceived int64 `protobuf:"varint,13,opt,name=total_satoshis_received,proto3" json:"total_satoshis_received,omitempty"`
                    	// *
                    	// The total number of updates conducted within this channel.
                    	NumUpdates uint64 `protobuf:"varint,14,opt,name=num_updates,proto3" json:"num_updates,omitempty"`
                    	// *
                    	// The list of active, uncleared HTLCs currently pending within the channel.
                    	PendingHtlcs []*HTLC `protobuf:"bytes,15,rep,name=pending_htlcs,proto3" json:"pending_htlcs,omitempty"`
                    	// *
                    	// The CSV delay expressed in relative blocks. If the channel is force
                    	// closed, we'll need to wait for this many blocks before we can regain our
                    	// funds.
                    	CsvDelay uint32 `protobuf:"varint,16,opt,name=csv_delay,proto3" json:"csv_delay,omitempty"`
                    	// / Whether this channel is advertised to the network or not.
                    	Private bool `protobuf:"varint,17,opt,name=private,proto3" json:"private,omitempty"`
                    	// / True if we were the ones that creted the channel.
                    	Initiator            bool     `protobuf:"varint,18,opt,name=initiator,proto3" json:"initiator,omitempty"`
                    	XXX_NoUnkeyedLiteral struct{} `json:"-"`
                    	XXX_unrecognized     []byte   `json:"-"`
                    	XXX_sizecache        int32    `json:"-"`
                    }

                    func (*Channel) Descriptor

                    func (*Channel) Descriptor() ([]byte, []int)

                    func (*Channel) GetActive

                    func (m *Channel) GetActive() bool

                    func (*Channel) GetCapacity

                    func (m *Channel) GetCapacity() int64

                    func (*Channel) GetChanId

                    func (m *Channel) GetChanId() uint64

                    func (*Channel) GetChannelPoint

                    func (m *Channel) GetChannelPoint() string

                    func (*Channel) GetCommitFee

                    func (m *Channel) GetCommitFee() int64

                    func (*Channel) GetCommitWeight

                    func (m *Channel) GetCommitWeight() int64

                    func (*Channel) GetCsvDelay

                    func (m *Channel) GetCsvDelay() uint32

                    func (*Channel) GetFeePerKw

                    func (m *Channel) GetFeePerKw() int64

                    func (*Channel) GetInitiator

                    func (m *Channel) GetInitiator() bool

                    func (*Channel) GetLocalBalance

                    func (m *Channel) GetLocalBalance() int64

                    func (*Channel) GetNumUpdates

                    func (m *Channel) GetNumUpdates() uint64

                    func (*Channel) GetPendingHtlcs

                    func (m *Channel) GetPendingHtlcs() []*HTLC

                    func (*Channel) GetPrivate

                    func (m *Channel) GetPrivate() bool

                    func (*Channel) GetRemoteBalance

                    func (m *Channel) GetRemoteBalance() int64

                    func (*Channel) GetRemotePubkey

                    func (m *Channel) GetRemotePubkey() string

                    func (*Channel) GetTotalSatoshisReceived

                    func (m *Channel) GetTotalSatoshisReceived() int64

                    func (*Channel) GetTotalSatoshisSent

                    func (m *Channel) GetTotalSatoshisSent() int64

                    func (*Channel) GetUnsettledBalance

                    func (m *Channel) GetUnsettledBalance() int64

                    func (*Channel) ProtoMessage

                    func (*Channel) ProtoMessage()

                    func (*Channel) Reset

                    func (m *Channel) Reset()

                    func (*Channel) String

                    func (m *Channel) String() string

                    func (*Channel) XXX_DiscardUnknown

                    func (m *Channel) XXX_DiscardUnknown()

                    func (*Channel) XXX_Marshal

                    func (m *Channel) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                    func (*Channel) XXX_Merge

                    func (dst *Channel) XXX_Merge(src proto.Message)

                    func (*Channel) XXX_Size

                    func (m *Channel) XXX_Size() int

                    func (*Channel) XXX_Unmarshal

                    func (m *Channel) XXX_Unmarshal(b []byte) error

                    type ChannelBalanceRequest

                    type ChannelBalanceRequest struct {
                    	XXX_NoUnkeyedLiteral struct{} `json:"-"`
                    	XXX_unrecognized     []byte   `json:"-"`
                    	XXX_sizecache        int32    `json:"-"`
                    }

                    func (*ChannelBalanceRequest) Descriptor

                    func (*ChannelBalanceRequest) Descriptor() ([]byte, []int)

                    func (*ChannelBalanceRequest) ProtoMessage

                    func (*ChannelBalanceRequest) ProtoMessage()

                    func (*ChannelBalanceRequest) Reset

                    func (m *ChannelBalanceRequest) Reset()

                    func (*ChannelBalanceRequest) String

                    func (m *ChannelBalanceRequest) String() string

                    func (*ChannelBalanceRequest) XXX_DiscardUnknown

                    func (m *ChannelBalanceRequest) XXX_DiscardUnknown()

                    func (*ChannelBalanceRequest) XXX_Marshal

                    func (m *ChannelBalanceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                    func (*ChannelBalanceRequest) XXX_Merge

                    func (dst *ChannelBalanceRequest) XXX_Merge(src proto.Message)

                    func (*ChannelBalanceRequest) XXX_Size

                    func (m *ChannelBalanceRequest) XXX_Size() int

                    func (*ChannelBalanceRequest) XXX_Unmarshal

                    func (m *ChannelBalanceRequest) XXX_Unmarshal(b []byte) error

                    type ChannelBalanceResponse

                    type ChannelBalanceResponse struct {
                    	// / Sum of channels balances denominated in satoshis
                    	Balance int64 `protobuf:"varint,1,opt,name=balance,proto3" json:"balance,omitempty"`
                    	// / Sum of channels pending balances denominated in satoshis
                    	PendingOpenBalance   int64    `protobuf:"varint,2,opt,name=pending_open_balance,proto3" json:"pending_open_balance,omitempty"`
                    	XXX_NoUnkeyedLiteral struct{} `json:"-"`
                    	XXX_unrecognized     []byte   `json:"-"`
                    	XXX_sizecache        int32    `json:"-"`
                    }

                    func (*ChannelBalanceResponse) Descriptor

                    func (*ChannelBalanceResponse) Descriptor() ([]byte, []int)

                    func (*ChannelBalanceResponse) GetBalance

                    func (m *ChannelBalanceResponse) GetBalance() int64

                    func (*ChannelBalanceResponse) GetPendingOpenBalance

                    func (m *ChannelBalanceResponse) GetPendingOpenBalance() int64

                    func (*ChannelBalanceResponse) ProtoMessage

                    func (*ChannelBalanceResponse) ProtoMessage()

                    func (*ChannelBalanceResponse) Reset

                    func (m *ChannelBalanceResponse) Reset()

                    func (*ChannelBalanceResponse) String

                    func (m *ChannelBalanceResponse) String() string

                    func (*ChannelBalanceResponse) XXX_DiscardUnknown

                    func (m *ChannelBalanceResponse) XXX_DiscardUnknown()

                    func (*ChannelBalanceResponse) XXX_Marshal

                    func (m *ChannelBalanceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                    func (*ChannelBalanceResponse) XXX_Merge

                    func (dst *ChannelBalanceResponse) XXX_Merge(src proto.Message)

                    func (*ChannelBalanceResponse) XXX_Size

                    func (m *ChannelBalanceResponse) XXX_Size() int

                    func (*ChannelBalanceResponse) XXX_Unmarshal

                    func (m *ChannelBalanceResponse) XXX_Unmarshal(b []byte) error

                    type ChannelCloseSummary

                    type ChannelCloseSummary struct {
                    	// / The outpoint (txid:index) of the funding transaction.
                    	ChannelPoint string `protobuf:"bytes,1,opt,name=channel_point,proto3" json:"channel_point,omitempty"`
                    	// /  The unique channel ID for the channel.
                    	ChanId uint64 `protobuf:"varint,2,opt,name=chan_id,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,proto3" json:"chain_hash,omitempty"`
                    	// / The txid of the transaction which ultimately closed this channel.
                    	ClosingTxHash string `protobuf:"bytes,4,opt,name=closing_tx_hash,proto3" json:"closing_tx_hash,omitempty"`
                    	// / Public key of the remote peer that we formerly had a channel with.
                    	RemotePubkey string `protobuf:"bytes,5,opt,name=remote_pubkey,proto3" json:"remote_pubkey,omitempty"`
                    	// / Total capacity of the channel.
                    	Capacity int64 `protobuf:"varint,6,opt,name=capacity,proto3" json:"capacity,omitempty"`
                    	// / Height at which the funding transaction was spent.
                    	CloseHeight uint32 `protobuf:"varint,7,opt,name=close_height,proto3" json:"close_height,omitempty"`
                    	// / Settled balance at the time of channel closure
                    	SettledBalance int64 `protobuf:"varint,8,opt,name=settled_balance,proto3" json:"settled_balance,omitempty"`
                    	// / The sum of all the time-locked outputs at the time of channel closure
                    	TimeLockedBalance int64 `protobuf:"varint,9,opt,name=time_locked_balance,proto3" json:"time_locked_balance,omitempty"`
                    	// / Details on how the channel was closed.
                    	CloseType            ChannelCloseSummary_ClosureType `protobuf:"varint,10,opt,name=close_type,proto3,enum=lnrpc.ChannelCloseSummary_ClosureType" json:"close_type,omitempty"`
                    	XXX_NoUnkeyedLiteral struct{}                        `json:"-"`
                    	XXX_unrecognized     []byte                          `json:"-"`
                    	XXX_sizecache        int32                           `json:"-"`
                    }

                    func (*ChannelCloseSummary) Descriptor

                    func (*ChannelCloseSummary) Descriptor() ([]byte, []int)

                    func (*ChannelCloseSummary) GetCapacity

                    func (m *ChannelCloseSummary) GetCapacity() int64

                    func (*ChannelCloseSummary) GetChainHash

                    func (m *ChannelCloseSummary) GetChainHash() string

                    func (*ChannelCloseSummary) GetChanId

                    func (m *ChannelCloseSummary) GetChanId() uint64

                    func (*ChannelCloseSummary) GetChannelPoint

                    func (m *ChannelCloseSummary) GetChannelPoint() string

                    func (*ChannelCloseSummary) GetCloseHeight

                    func (m *ChannelCloseSummary) GetCloseHeight() uint32

                    func (*ChannelCloseSummary) GetCloseType

                    func (*ChannelCloseSummary) GetClosingTxHash

                    func (m *ChannelCloseSummary) GetClosingTxHash() string

                    func (*ChannelCloseSummary) GetRemotePubkey

                    func (m *ChannelCloseSummary) GetRemotePubkey() string

                    func (*ChannelCloseSummary) GetSettledBalance

                    func (m *ChannelCloseSummary) GetSettledBalance() int64

                    func (*ChannelCloseSummary) GetTimeLockedBalance

                    func (m *ChannelCloseSummary) GetTimeLockedBalance() int64

                    func (*ChannelCloseSummary) ProtoMessage

                    func (*ChannelCloseSummary) ProtoMessage()

                    func (*ChannelCloseSummary) Reset

                    func (m *ChannelCloseSummary) Reset()

                    func (*ChannelCloseSummary) String

                    func (m *ChannelCloseSummary) String() string

                    func (*ChannelCloseSummary) XXX_DiscardUnknown

                    func (m *ChannelCloseSummary) XXX_DiscardUnknown()

                    func (*ChannelCloseSummary) XXX_Marshal

                    func (m *ChannelCloseSummary) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                    func (*ChannelCloseSummary) XXX_Merge

                    func (dst *ChannelCloseSummary) XXX_Merge(src proto.Message)

                    func (*ChannelCloseSummary) XXX_Size

                    func (m *ChannelCloseSummary) XXX_Size() int

                    func (*ChannelCloseSummary) XXX_Unmarshal

                    func (m *ChannelCloseSummary) XXX_Unmarshal(b []byte) error

                    type ChannelCloseSummary_ClosureType

                    type ChannelCloseSummary_ClosureType int32
                    const (
                    	ChannelCloseSummary_COOPERATIVE_CLOSE  ChannelCloseSummary_ClosureType = 0
                    	ChannelCloseSummary_LOCAL_FORCE_CLOSE  ChannelCloseSummary_ClosureType = 1
                    	ChannelCloseSummary_REMOTE_FORCE_CLOSE ChannelCloseSummary_ClosureType = 2
                    	ChannelCloseSummary_BREACH_CLOSE       ChannelCloseSummary_ClosureType = 3
                    	ChannelCloseSummary_FUNDING_CANCELED   ChannelCloseSummary_ClosureType = 4
                    	ChannelCloseSummary_ABANDONED          ChannelCloseSummary_ClosureType = 5
                    )

                    func (ChannelCloseSummary_ClosureType) EnumDescriptor

                    func (ChannelCloseSummary_ClosureType) EnumDescriptor() ([]byte, []int)

                    func (ChannelCloseSummary_ClosureType) String

                    type ChannelCloseUpdate

                    type ChannelCloseUpdate struct {
                    	ClosingTxid          []byte   `protobuf:"bytes,1,opt,name=closing_txid,proto3" json:"closing_txid,omitempty"`
                    	Success              bool     `protobuf:"varint,2,opt,name=success,proto3" json:"success,omitempty"`
                    	XXX_NoUnkeyedLiteral struct{} `json:"-"`
                    	XXX_unrecognized     []byte   `json:"-"`
                    	XXX_sizecache        int32    `json:"-"`
                    }

                    func (*ChannelCloseUpdate) Descriptor

                    func (*ChannelCloseUpdate) Descriptor() ([]byte, []int)

                    func (*ChannelCloseUpdate) GetClosingTxid

                    func (m *ChannelCloseUpdate) GetClosingTxid() []byte

                    func (*ChannelCloseUpdate) GetSuccess

                    func (m *ChannelCloseUpdate) GetSuccess() bool

                    func (*ChannelCloseUpdate) ProtoMessage

                    func (*ChannelCloseUpdate) ProtoMessage()

                    func (*ChannelCloseUpdate) Reset

                    func (m *ChannelCloseUpdate) Reset()

                    func (*ChannelCloseUpdate) String

                    func (m *ChannelCloseUpdate) String() string

                    func (*ChannelCloseUpdate) XXX_DiscardUnknown

                    func (m *ChannelCloseUpdate) XXX_DiscardUnknown()

                    func (*ChannelCloseUpdate) XXX_Marshal

                    func (m *ChannelCloseUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                    func (*ChannelCloseUpdate) XXX_Merge

                    func (dst *ChannelCloseUpdate) XXX_Merge(src proto.Message)

                    func (*ChannelCloseUpdate) XXX_Size

                    func (m *ChannelCloseUpdate) XXX_Size() int

                    func (*ChannelCloseUpdate) XXX_Unmarshal

                    func (m *ChannelCloseUpdate) XXX_Unmarshal(b []byte) error

                    type ChannelEdge

                    type ChannelEdge struct {
                    	// *
                    	// 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,proto3" json:"channel_id,omitempty"`
                    	ChanPoint            string         `protobuf:"bytes,2,opt,name=chan_point,proto3" json:"chan_point,omitempty"`
                    	LastUpdate           uint32         `protobuf:"varint,3,opt,name=last_update,proto3" json:"last_update,omitempty"`
                    	Node1Pub             string         `protobuf:"bytes,4,opt,name=node1_pub,proto3" json:"node1_pub,omitempty"`
                    	Node2Pub             string         `protobuf:"bytes,5,opt,name=node2_pub,proto3" json:"node2_pub,omitempty"`
                    	Capacity             int64          `protobuf:"varint,6,opt,name=capacity,proto3" json:"capacity,omitempty"`
                    	Node1Policy          *RoutingPolicy `protobuf:"bytes,7,opt,name=node1_policy,proto3" json:"node1_policy,omitempty"`
                    	Node2Policy          *RoutingPolicy `protobuf:"bytes,8,opt,name=node2_policy,proto3" json:"node2_policy,omitempty"`
                    	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
                    	XXX_unrecognized     []byte         `json:"-"`
                    	XXX_sizecache        int32          `json:"-"`
                    }

                      * 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.

                      func (*ChannelEdge) Descriptor

                      func (*ChannelEdge) Descriptor() ([]byte, []int)

                      func (*ChannelEdge) GetCapacity

                      func (m *ChannelEdge) GetCapacity() int64

                      func (*ChannelEdge) GetChanPoint

                      func (m *ChannelEdge) GetChanPoint() string

                      func (*ChannelEdge) GetChannelId

                      func (m *ChannelEdge) GetChannelId() uint64

                      func (*ChannelEdge) GetLastUpdate

                      func (m *ChannelEdge) GetLastUpdate() uint32

                      func (*ChannelEdge) GetNode1Policy

                      func (m *ChannelEdge) GetNode1Policy() *RoutingPolicy

                      func (*ChannelEdge) GetNode1Pub

                      func (m *ChannelEdge) GetNode1Pub() string

                      func (*ChannelEdge) GetNode2Policy

                      func (m *ChannelEdge) GetNode2Policy() *RoutingPolicy

                      func (*ChannelEdge) GetNode2Pub

                      func (m *ChannelEdge) GetNode2Pub() string

                      func (*ChannelEdge) ProtoMessage

                      func (*ChannelEdge) ProtoMessage()

                      func (*ChannelEdge) Reset

                      func (m *ChannelEdge) Reset()

                      func (*ChannelEdge) String

                      func (m *ChannelEdge) String() string

                      func (*ChannelEdge) XXX_DiscardUnknown

                      func (m *ChannelEdge) XXX_DiscardUnknown()

                      func (*ChannelEdge) XXX_Marshal

                      func (m *ChannelEdge) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                      func (*ChannelEdge) XXX_Merge

                      func (dst *ChannelEdge) XXX_Merge(src proto.Message)

                      func (*ChannelEdge) XXX_Size

                      func (m *ChannelEdge) XXX_Size() int

                      func (*ChannelEdge) XXX_Unmarshal

                      func (m *ChannelEdge) XXX_Unmarshal(b []byte) error

                      type ChannelEdgeUpdate

                      type ChannelEdgeUpdate struct {
                      	// *
                      	// 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"`
                      	RoutingPolicy        *RoutingPolicy `protobuf:"bytes,4,opt,name=routing_policy,json=routingPolicy,proto3" json:"routing_policy,omitempty"`
                      	AdvertisingNode      string         `protobuf:"bytes,5,opt,name=advertising_node,json=advertisingNode,proto3" json:"advertising_node,omitempty"`
                      	ConnectingNode       string         `protobuf:"bytes,6,opt,name=connecting_node,json=connectingNode,proto3" json:"connecting_node,omitempty"`
                      	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
                      	XXX_unrecognized     []byte         `json:"-"`
                      	XXX_sizecache        int32          `json:"-"`
                      }

                      func (*ChannelEdgeUpdate) Descriptor

                      func (*ChannelEdgeUpdate) Descriptor() ([]byte, []int)

                      func (*ChannelEdgeUpdate) GetAdvertisingNode

                      func (m *ChannelEdgeUpdate) GetAdvertisingNode() string

                      func (*ChannelEdgeUpdate) GetCapacity

                      func (m *ChannelEdgeUpdate) GetCapacity() int64

                      func (*ChannelEdgeUpdate) GetChanId

                      func (m *ChannelEdgeUpdate) GetChanId() uint64

                      func (*ChannelEdgeUpdate) GetChanPoint

                      func (m *ChannelEdgeUpdate) GetChanPoint() *ChannelPoint

                      func (*ChannelEdgeUpdate) GetConnectingNode

                      func (m *ChannelEdgeUpdate) GetConnectingNode() string

                      func (*ChannelEdgeUpdate) GetRoutingPolicy

                      func (m *ChannelEdgeUpdate) GetRoutingPolicy() *RoutingPolicy

                      func (*ChannelEdgeUpdate) ProtoMessage

                      func (*ChannelEdgeUpdate) ProtoMessage()

                      func (*ChannelEdgeUpdate) Reset

                      func (m *ChannelEdgeUpdate) Reset()

                      func (*ChannelEdgeUpdate) String

                      func (m *ChannelEdgeUpdate) String() string

                      func (*ChannelEdgeUpdate) XXX_DiscardUnknown

                      func (m *ChannelEdgeUpdate) XXX_DiscardUnknown()

                      func (*ChannelEdgeUpdate) XXX_Marshal

                      func (m *ChannelEdgeUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

                      func (*ChannelEdgeUpdate) XXX_Merge

                      func (dst *ChannelEdgeUpdate) XXX_Merge(src proto.Message)

                      func (*ChannelEdgeUpdate) XXX_Size

                      func (m *ChannelEdgeUpdate) XXX_Size() int

                      func (*ChannelEdgeUpdate) XXX_Unmarshal

                      func (m *ChannelEdgeUpdate) XXX_Unmarshal(b []byte) error

                      type ChannelEventSubscription

                      type ChannelEventSubscription struct {
                      	XXX_NoUnkeyedLiteral struct{} `json:"-"`
                      	XXX_unrecognized     []byte   `json:"-"`
                      	XXX_sizecache        int32    `json:"-"`
                      }

                      func (*ChannelEventSubscription) Descriptor

                      func (*ChannelEventSubscription) Descriptor() ([]byte, []int)

                      func (*ChannelEventSubscription) ProtoMessage

                      func (*ChannelEventSubscription) ProtoMessage()

                      func (*ChannelEventSubscription) Reset

                      func (m *ChannelEventSubscription) Reset()

                      func (*ChannelEventSubscription) String

                      func (m *ChannelEventSubscription) String() string

                      func (*ChannelEventSubscription) XXX_DiscardUnknown

                      func (m *ChannelEventSubscription) XXX_DiscardUnknown()

                      func (*ChannelEventSubscription)