2
0
mirror of https://github.com/edouardparis/lntop synced 2024-11-09 19:11:05 +00:00
lntop/network/backend/backend.go
2021-06-09 14:32:37 +02:00

45 lines
1.2 KiB
Go

package backend
import (
"context"
"github.com/edouardparis/lntop/network/models"
"github.com/edouardparis/lntop/network/options"
)
type Backend interface {
Ping() error
SubscribeInvoice(context.Context, chan *models.Invoice) error
SubscribeChannels(context.Context, chan *models.ChannelUpdate) error
NodeName() string
Info(context.Context) (*models.Info, error)
GetNode(context.Context, string) (*models.Node, error)
GetWalletBalance(context.Context) (*models.WalletBalance, error)
GetChannelsBalance(context.Context) (*models.ChannelsBalance, error)
ListChannels(context.Context, ...options.Channel) ([]*models.Channel, error)
GetChannelInfo(context.Context, *models.Channel) error
CreateInvoice(context.Context, int64, string) (*models.Invoice, error)
GetInvoice(context.Context, string) (*models.Invoice, error)
DecodePayReq(context.Context, string) (*models.PayReq, error)
SendPayment(context.Context, *models.PayReq) (*models.Payment, error)
GetTransactions(context.Context) ([]*models.Transaction, error)
SubscribeTransactions(context.Context, chan *models.Transaction) error
SubscribeRoutingEvents(context.Context, chan *models.RoutingEvent) error
}