2019-11-24 11:32:59 +00:00
|
|
|
package chantools
|
|
|
|
|
2019-12-07 14:21:08 +00:00
|
|
|
import "github.com/lightningnetwork/lnd/keychain"
|
|
|
|
|
2019-11-24 11:32:59 +00:00
|
|
|
type ClosingTX struct {
|
|
|
|
TXID string `json:"txid"`
|
|
|
|
ForceClose bool `json:"force_close"`
|
|
|
|
AllOutsSpent bool `json:"all_outputs_spent"`
|
|
|
|
OurAddr string `json:"our_addr"`
|
|
|
|
SweepPrivkey string `json:"sweep_privkey"`
|
2019-12-05 15:47:24 +00:00
|
|
|
ConfHeight uint32 `json:"conf_height"`
|
2019-11-24 11:32:59 +00:00
|
|
|
}
|
|
|
|
|
2019-12-07 14:21:08 +00:00
|
|
|
type BasePoint struct {
|
2019-12-05 15:47:24 +00:00
|
|
|
Family uint16 `json:"family,omitempty"`
|
|
|
|
Index uint32 `json:"index,omitempty"`
|
2019-12-07 14:21:08 +00:00
|
|
|
PubKey string `json:"pubkey"`
|
|
|
|
}
|
|
|
|
|
|
|
|
func (b *BasePoint) toDesc() *keychain.KeyDescriptor {
|
|
|
|
return &keychain.KeyDescriptor{
|
|
|
|
KeyLocator: keychain.KeyLocator{
|
|
|
|
Family: keychain.KeyFamily(b.Family),
|
|
|
|
Index: b.Index,
|
|
|
|
},
|
|
|
|
}
|
2019-11-24 14:59:24 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
type Out struct {
|
|
|
|
Script string `json:"script"`
|
|
|
|
ScriptAsm string `json:"script_asm"`
|
|
|
|
Value uint64 `json:"value"`
|
|
|
|
}
|
|
|
|
|
|
|
|
type ForceClose struct {
|
2019-12-05 15:47:24 +00:00
|
|
|
TXID string `json:"txid"`
|
|
|
|
Serialized string `json:"serialized"`
|
|
|
|
CSVDelay uint16 `json:"csv_delay"`
|
2019-12-07 14:21:08 +00:00
|
|
|
DelayBasePoint *BasePoint `json:"delay_basepoint"`
|
|
|
|
RevocationBasePoint *BasePoint `json:"revocation_basepoint"`
|
2019-12-05 15:47:24 +00:00
|
|
|
CommitPoint string `json:"commit_point"`
|
|
|
|
Outs []*Out `json:"outs"`
|
2019-11-24 14:59:24 +00:00
|
|
|
}
|
|
|
|
|
2019-11-24 11:32:59 +00:00
|
|
|
type SummaryEntry struct {
|
2019-11-24 14:59:24 +00:00
|
|
|
RemotePubkey string `json:"remote_pubkey"`
|
|
|
|
ChannelPoint string `json:"channel_point"`
|
|
|
|
FundingTXID string `json:"funding_txid"`
|
|
|
|
FundingTXIndex uint32 `json:"funding_tx_index"`
|
|
|
|
Capacity uint64 `json:"capacity"`
|
|
|
|
Initiator bool `json:"initiator"`
|
|
|
|
LocalBalance uint64 `json:"local_balance"`
|
|
|
|
RemoteBalance uint64 `json:"remote_balance"`
|
2019-12-08 10:19:10 +00:00
|
|
|
ChanExists bool `json:"chan_exists_onchain"`
|
|
|
|
HasPotential bool `json:"has_potential_funds"`
|
2019-11-24 14:59:24 +00:00
|
|
|
ClosingTX *ClosingTX `json:"closing_tx,omitempty"`
|
|
|
|
ForceClose *ForceClose `json:"force_close"`
|
2019-11-24 11:32:59 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
type SummaryEntryFile struct {
|
|
|
|
Channels []*SummaryEntry `json:"channels"`
|
|
|
|
OpenChannels uint32 `json:"open_channels"`
|
|
|
|
ClosedChannels uint32 `json:"closed_channels"`
|
|
|
|
ForceClosedChannels uint32 `json:"force_closed_channels"`
|
|
|
|
CoopClosedChannels uint32 `json:"coop_closed_channels"`
|
|
|
|
FullySpentChannels uint32 `json:"fully_spent_channels"`
|
2019-12-08 10:19:10 +00:00
|
|
|
ChannelsWithUnspent uint32 `json:"channels_with_unspent_funds"`
|
2019-11-24 11:32:59 +00:00
|
|
|
ChannelsWithPotential uint32 `json:"channels_with_potential_funds"`
|
|
|
|
FundsOpenChannels uint64 `json:"funds_open_channels"`
|
|
|
|
FundsClosedChannels uint64 `json:"funds_closed_channels"`
|
|
|
|
FundsClosedSpent uint64 `json:"funds_closed_channels_spent"`
|
|
|
|
FundsForceClose uint64 `json:"funds_force_closed_maybe_ours"`
|
|
|
|
FundsCoopClose uint64 `json:"funds_coop_closed_maybe_ours"`
|
|
|
|
}
|