github.com/decred/dcrlnd@v0.7.6/lnrpc/watchtowerrpc/interface.go (about)

     1  package watchtowerrpc
     2  
     3  import (
     4  	"net"
     5  
     6  	"github.com/decred/dcrd/dcrec/secp256k1/v4"
     7  )
     8  
     9  // WatchtowerBackend abstracts access to the watchtower information that is
    10  // served via RPC connections.
    11  type WatchtowerBackend interface {
    12  	// PubKey returns the public key for the watchtower used to
    13  	// authentication and encrypt traffic with clients.
    14  	PubKey() *secp256k1.PublicKey
    15  
    16  	// ListeningAddrs returns the listening addresses where the watchtower
    17  	// server can accept client connections.
    18  	ListeningAddrs() []net.Addr
    19  
    20  	// ExternalIPs returns the addresses where the watchtower can be reached
    21  	// by clients externally.
    22  	ExternalIPs() []net.Addr
    23  }