You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
22907 lines
854 KiB
22907 lines
854 KiB
// Code generated by protoc-gen-go. DO NOT EDIT. |
|
// versions: |
|
// protoc-gen-go v1.23.0 |
|
// protoc v3.6.1 |
|
// source: rpc.proto |
|
|
|
package lnrpc |
|
|
|
import ( |
|
context "context" |
|
proto "github.com/golang/protobuf/proto" |
|
grpc "google.golang.org/grpc" |
|
codes "google.golang.org/grpc/codes" |
|
status "google.golang.org/grpc/status" |
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect" |
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl" |
|
reflect "reflect" |
|
sync "sync" |
|
) |
|
|
|
const ( |
|
// Verify that this generated code is sufficiently up-to-date. |
|
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) |
|
// Verify that runtime/protoimpl is sufficiently up-to-date. |
|
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) |
|
) |
|
|
|
// This is a compile-time assertion that a sufficiently up-to-date version |
|
// of the legacy proto package is being used. |
|
const _ = proto.ProtoPackageIsVersion4 |
|
|
|
// |
|
//`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) |
|
type AddressType int32 |
|
|
|
const ( |
|
AddressType_WITNESS_PUBKEY_HASH AddressType = 0 |
|
AddressType_NESTED_PUBKEY_HASH AddressType = 1 |
|
AddressType_UNUSED_WITNESS_PUBKEY_HASH AddressType = 2 |
|
AddressType_UNUSED_NESTED_PUBKEY_HASH AddressType = 3 |
|
) |
|
|
|
// Enum value maps for AddressType. |
|
var ( |
|
AddressType_name = map[int32]string{ |
|
0: "WITNESS_PUBKEY_HASH", |
|
1: "NESTED_PUBKEY_HASH", |
|
2: "UNUSED_WITNESS_PUBKEY_HASH", |
|
3: "UNUSED_NESTED_PUBKEY_HASH", |
|
} |
|
AddressType_value = map[string]int32{ |
|
"WITNESS_PUBKEY_HASH": 0, |
|
"NESTED_PUBKEY_HASH": 1, |
|
"UNUSED_WITNESS_PUBKEY_HASH": 2, |
|
"UNUSED_NESTED_PUBKEY_HASH": 3, |
|
} |
|
) |
|
|
|
func (x AddressType) Enum() *AddressType { |
|
p := new(AddressType) |
|
*p = x |
|
return p |
|
} |
|
|
|
func (x AddressType) String() string { |
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
|
} |
|
|
|
func (AddressType) Descriptor() protoreflect.EnumDescriptor { |
|
return file_rpc_proto_enumTypes[0].Descriptor() |
|
} |
|
|
|
func (AddressType) Type() protoreflect.EnumType { |
|
return &file_rpc_proto_enumTypes[0] |
|
} |
|
|
|
func (x AddressType) Number() protoreflect.EnumNumber { |
|
return protoreflect.EnumNumber(x) |
|
} |
|
|
|
// Deprecated: Use AddressType.Descriptor instead. |
|
func (AddressType) EnumDescriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{0} |
|
} |
|
|
|
type CommitmentType int32 |
|
|
|
const ( |
|
// |
|
//A channel using the legacy commitment format having tweaked to_remote |
|
//keys. |
|
CommitmentType_LEGACY CommitmentType = 0 |
|
// |
|
//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 = 1 |
|
// |
|
//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 = 2 |
|
// |
|
//Returned when the commitment type isn't known or unavailable. |
|
CommitmentType_UNKNOWN_COMMITMENT_TYPE CommitmentType = 999 |
|
) |
|
|
|
// Enum value maps for CommitmentType. |
|
var ( |
|
CommitmentType_name = map[int32]string{ |
|
0: "LEGACY", |
|
1: "STATIC_REMOTE_KEY", |
|
2: "ANCHORS", |
|
999: "UNKNOWN_COMMITMENT_TYPE", |
|
} |
|
CommitmentType_value = map[string]int32{ |
|
"LEGACY": 0, |
|
"STATIC_REMOTE_KEY": 1, |
|
"ANCHORS": 2, |
|
"UNKNOWN_COMMITMENT_TYPE": 999, |
|
} |
|
) |
|
|
|
func (x CommitmentType) Enum() *CommitmentType { |
|
p := new(CommitmentType) |
|
*p = x |
|
return p |
|
} |
|
|
|
func (x CommitmentType) String() string { |
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
|
} |
|
|
|
func (CommitmentType) Descriptor() protoreflect.EnumDescriptor { |
|
return file_rpc_proto_enumTypes[1].Descriptor() |
|
} |
|
|
|
func (CommitmentType) Type() protoreflect.EnumType { |
|
return &file_rpc_proto_enumTypes[1] |
|
} |
|
|
|
func (x CommitmentType) Number() protoreflect.EnumNumber { |
|
return protoreflect.EnumNumber(x) |
|
} |
|
|
|
// Deprecated: Use CommitmentType.Descriptor instead. |
|
func (CommitmentType) EnumDescriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{1} |
|
} |
|
|
|
type Initiator int32 |
|
|
|
const ( |
|
Initiator_INITIATOR_UNKNOWN Initiator = 0 |
|
Initiator_INITIATOR_LOCAL Initiator = 1 |
|
Initiator_INITIATOR_REMOTE Initiator = 2 |
|
Initiator_INITIATOR_BOTH Initiator = 3 |
|
) |
|
|
|
// Enum value maps for Initiator. |
|
var ( |
|
Initiator_name = map[int32]string{ |
|
0: "INITIATOR_UNKNOWN", |
|
1: "INITIATOR_LOCAL", |
|
2: "INITIATOR_REMOTE", |
|
3: "INITIATOR_BOTH", |
|
} |
|
Initiator_value = map[string]int32{ |
|
"INITIATOR_UNKNOWN": 0, |
|
"INITIATOR_LOCAL": 1, |
|
"INITIATOR_REMOTE": 2, |
|
"INITIATOR_BOTH": 3, |
|
} |
|
) |
|
|
|
func (x Initiator) Enum() *Initiator { |
|
p := new(Initiator) |
|
*p = x |
|
return p |
|
} |
|
|
|
func (x Initiator) String() string { |
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
|
} |
|
|
|
func (Initiator) Descriptor() protoreflect.EnumDescriptor { |
|
return file_rpc_proto_enumTypes[2].Descriptor() |
|
} |
|
|
|
func (Initiator) Type() protoreflect.EnumType { |
|
return &file_rpc_proto_enumTypes[2] |
|
} |
|
|
|
func (x Initiator) Number() protoreflect.EnumNumber { |
|
return protoreflect.EnumNumber(x) |
|
} |
|
|
|
// Deprecated: Use Initiator.Descriptor instead. |
|
func (Initiator) EnumDescriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{2} |
|
} |
|
|
|
type ResolutionType int32 |
|
|
|
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. |
|
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. |
|
ResolutionType_OUTGOING_HTLC ResolutionType = 3 |
|
// We force closed and need to sweep our time locked commitment output. |
|
ResolutionType_COMMIT ResolutionType = 4 |
|
) |
|
|
|
// Enum value maps for ResolutionType. |
|
var ( |
|
ResolutionType_name = map[int32]string{ |
|
0: "TYPE_UNKNOWN", |
|
1: "ANCHOR", |
|
2: "INCOMING_HTLC", |
|
3: "OUTGOING_HTLC", |
|
4: "COMMIT", |
|
} |
|
ResolutionType_value = map[string]int32{ |
|
"TYPE_UNKNOWN": 0, |
|
"ANCHOR": 1, |
|
"INCOMING_HTLC": 2, |
|
"OUTGOING_HTLC": 3, |
|
"COMMIT": 4, |
|
} |
|
) |
|
|
|
func (x ResolutionType) Enum() *ResolutionType { |
|
p := new(ResolutionType) |
|
*p = x |
|
return p |
|
} |
|
|
|
func (x ResolutionType) String() string { |
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
|
} |
|
|
|
func (ResolutionType) Descriptor() protoreflect.EnumDescriptor { |
|
return file_rpc_proto_enumTypes[3].Descriptor() |
|
} |
|
|
|
func (ResolutionType) Type() protoreflect.EnumType { |
|
return &file_rpc_proto_enumTypes[3] |
|
} |
|
|
|
func (x ResolutionType) Number() protoreflect.EnumNumber { |
|
return protoreflect.EnumNumber(x) |
|
} |
|
|
|
// Deprecated: Use ResolutionType.Descriptor instead. |
|
func (ResolutionType) EnumDescriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{3} |
|
} |
|
|
|
type ResolutionOutcome int32 |
|
|
|
const ( |
|
// Outcome unknown. |
|
ResolutionOutcome_OUTCOME_UNKNOWN ResolutionOutcome = 0 |
|
// An output was claimed on chain. |
|
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. |
|
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. |
|
ResolutionOutcome_FIRST_STAGE ResolutionOutcome = 4 |
|
// A htlc was timed out on chain. |
|
ResolutionOutcome_TIMEOUT ResolutionOutcome = 5 |
|
) |
|
|
|
// Enum value maps for ResolutionOutcome. |
|
var ( |
|
ResolutionOutcome_name = map[int32]string{ |
|
0: "OUTCOME_UNKNOWN", |
|
1: "CLAIMED", |
|
2: "UNCLAIMED", |
|
3: "ABANDONED", |
|
4: "FIRST_STAGE", |
|
5: "TIMEOUT", |
|
} |
|
ResolutionOutcome_value = map[string]int32{ |
|
"OUTCOME_UNKNOWN": 0, |
|
"CLAIMED": 1, |
|
"UNCLAIMED": 2, |
|
"ABANDONED": 3, |
|
"FIRST_STAGE": 4, |
|
"TIMEOUT": 5, |
|
} |
|
) |
|
|
|
func (x ResolutionOutcome) Enum() *ResolutionOutcome { |
|
p := new(ResolutionOutcome) |
|
*p = x |
|
return p |
|
} |
|
|
|
func (x ResolutionOutcome) String() string { |
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
|
} |
|
|
|
func (ResolutionOutcome) Descriptor() protoreflect.EnumDescriptor { |
|
return file_rpc_proto_enumTypes[4].Descriptor() |
|
} |
|
|
|
func (ResolutionOutcome) Type() protoreflect.EnumType { |
|
return &file_rpc_proto_enumTypes[4] |
|
} |
|
|
|
func (x ResolutionOutcome) Number() protoreflect.EnumNumber { |
|
return protoreflect.EnumNumber(x) |
|
} |
|
|
|
// Deprecated: Use ResolutionOutcome.Descriptor instead. |
|
func (ResolutionOutcome) EnumDescriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{4} |
|
} |
|
|
|
type NodeMetricType int32 |
|
|
|
const ( |
|
NodeMetricType_UNKNOWN NodeMetricType = 0 |
|
NodeMetricType_BETWEENNESS_CENTRALITY NodeMetricType = 1 |
|
) |
|
|
|
// Enum value maps for NodeMetricType. |
|
var ( |
|
NodeMetricType_name = map[int32]string{ |
|
0: "UNKNOWN", |
|
1: "BETWEENNESS_CENTRALITY", |
|
} |
|
NodeMetricType_value = map[string]int32{ |
|
"UNKNOWN": 0, |
|
"BETWEENNESS_CENTRALITY": 1, |
|
} |
|
) |
|
|
|
func (x NodeMetricType) Enum() *NodeMetricType { |
|
p := new(NodeMetricType) |
|
*p = x |
|
return p |
|
} |
|
|
|
func (x NodeMetricType) String() string { |
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
|
} |
|
|
|
func (NodeMetricType) Descriptor() protoreflect.EnumDescriptor { |
|
return file_rpc_proto_enumTypes[5].Descriptor() |
|
} |
|
|
|
func (NodeMetricType) Type() protoreflect.EnumType { |
|
return &file_rpc_proto_enumTypes[5] |
|
} |
|
|
|
func (x NodeMetricType) Number() protoreflect.EnumNumber { |
|
return protoreflect.EnumNumber(x) |
|
} |
|
|
|
// Deprecated: Use NodeMetricType.Descriptor instead. |
|
func (NodeMetricType) EnumDescriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{5} |
|
} |
|
|
|
type InvoiceHTLCState int32 |
|
|
|
const ( |
|
InvoiceHTLCState_ACCEPTED InvoiceHTLCState = 0 |
|
InvoiceHTLCState_SETTLED InvoiceHTLCState = 1 |
|
InvoiceHTLCState_CANCELED InvoiceHTLCState = 2 |
|
) |
|
|
|
// Enum value maps for InvoiceHTLCState. |
|
var ( |
|
InvoiceHTLCState_name = map[int32]string{ |
|
0: "ACCEPTED", |
|
1: "SETTLED", |
|
2: "CANCELED", |
|
} |
|
InvoiceHTLCState_value = map[string]int32{ |
|
"ACCEPTED": 0, |
|
"SETTLED": 1, |
|
"CANCELED": 2, |
|
} |
|
) |
|
|
|
func (x InvoiceHTLCState) Enum() *InvoiceHTLCState { |
|
p := new(InvoiceHTLCState) |
|
*p = x |
|
return p |
|
} |
|
|
|
func (x InvoiceHTLCState) String() string { |
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
|
} |
|
|
|
func (InvoiceHTLCState) Descriptor() protoreflect.EnumDescriptor { |
|
return file_rpc_proto_enumTypes[6].Descriptor() |
|
} |
|
|
|
func (InvoiceHTLCState) Type() protoreflect.EnumType { |
|
return &file_rpc_proto_enumTypes[6] |
|
} |
|
|
|
func (x InvoiceHTLCState) Number() protoreflect.EnumNumber { |
|
return protoreflect.EnumNumber(x) |
|
} |
|
|
|
// Deprecated: Use InvoiceHTLCState.Descriptor instead. |
|
func (InvoiceHTLCState) EnumDescriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{6} |
|
} |
|
|
|
type PaymentFailureReason int32 |
|
|
|
const ( |
|
// |
|
//Payment isn't failed (yet). |
|
PaymentFailureReason_FAILURE_REASON_NONE PaymentFailureReason = 0 |
|
// |
|
//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. |
|
PaymentFailureReason_FAILURE_REASON_NO_ROUTE PaymentFailureReason = 2 |
|
// |
|
//A non-recoverable error has occured. |
|
PaymentFailureReason_FAILURE_REASON_ERROR PaymentFailureReason = 3 |
|
// |
|
//Payment details incorrect (unknown hash, invalid amt or |
|
//invalid final cltv delta) |
|
PaymentFailureReason_FAILURE_REASON_INCORRECT_PAYMENT_DETAILS PaymentFailureReason = 4 |
|
// |
|
//Insufficient local balance. |
|
PaymentFailureReason_FAILURE_REASON_INSUFFICIENT_BALANCE PaymentFailureReason = 5 |
|
) |
|
|
|
// Enum value maps for PaymentFailureReason. |
|
var ( |
|
PaymentFailureReason_name = map[int32]string{ |
|
0: "FAILURE_REASON_NONE", |
|
1: "FAILURE_REASON_TIMEOUT", |
|
2: "FAILURE_REASON_NO_ROUTE", |
|
3: "FAILURE_REASON_ERROR", |
|
4: "FAILURE_REASON_INCORRECT_PAYMENT_DETAILS", |
|
5: "FAILURE_REASON_INSUFFICIENT_BALANCE", |
|
} |
|
PaymentFailureReason_value = map[string]int32{ |
|
"FAILURE_REASON_NONE": 0, |
|
"FAILURE_REASON_TIMEOUT": 1, |
|
"FAILURE_REASON_NO_ROUTE": 2, |
|
"FAILURE_REASON_ERROR": 3, |
|
"FAILURE_REASON_INCORRECT_PAYMENT_DETAILS": 4, |
|
"FAILURE_REASON_INSUFFICIENT_BALANCE": 5, |
|
} |
|
) |
|
|
|
func (x PaymentFailureReason) Enum() *PaymentFailureReason { |
|
p := new(PaymentFailureReason) |
|
*p = x |
|
return p |
|
} |
|
|
|
func (x PaymentFailureReason) String() string { |
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
|
} |
|
|
|
func (PaymentFailureReason) Descriptor() protoreflect.EnumDescriptor { |
|
return file_rpc_proto_enumTypes[7].Descriptor() |
|
} |
|
|
|
func (PaymentFailureReason) Type() protoreflect.EnumType { |
|
return &file_rpc_proto_enumTypes[7] |
|
} |
|
|
|
func (x PaymentFailureReason) Number() protoreflect.EnumNumber { |
|
return protoreflect.EnumNumber(x) |
|
} |
|
|
|
// Deprecated: Use PaymentFailureReason.Descriptor instead. |
|
func (PaymentFailureReason) EnumDescriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{7} |
|
} |
|
|
|
type FeatureBit int32 |
|
|
|
const ( |
|
FeatureBit_DATALOSS_PROTECT_REQ FeatureBit = 0 |
|
FeatureBit_DATALOSS_PROTECT_OPT FeatureBit = 1 |
|
FeatureBit_INITIAL_ROUING_SYNC FeatureBit = 3 |
|
FeatureBit_UPFRONT_SHUTDOWN_SCRIPT_REQ FeatureBit = 4 |
|
FeatureBit_UPFRONT_SHUTDOWN_SCRIPT_OPT FeatureBit = 5 |
|
FeatureBit_GOSSIP_QUERIES_REQ FeatureBit = 6 |
|
FeatureBit_GOSSIP_QUERIES_OPT FeatureBit = 7 |
|
FeatureBit_TLV_ONION_REQ FeatureBit = 8 |
|
FeatureBit_TLV_ONION_OPT FeatureBit = 9 |
|
FeatureBit_EXT_GOSSIP_QUERIES_REQ FeatureBit = 10 |
|
FeatureBit_EXT_GOSSIP_QUERIES_OPT FeatureBit = 11 |
|
FeatureBit_STATIC_REMOTE_KEY_REQ FeatureBit = 12 |
|
FeatureBit_STATIC_REMOTE_KEY_OPT FeatureBit = 13 |
|
FeatureBit_PAYMENT_ADDR_REQ FeatureBit = 14 |
|
FeatureBit_PAYMENT_ADDR_OPT FeatureBit = 15 |
|
FeatureBit_MPP_REQ FeatureBit = 16 |
|
FeatureBit_MPP_OPT FeatureBit = 17 |
|
FeatureBit_WUMBO_CHANNELS_REQ FeatureBit = 18 |
|
FeatureBit_WUMBO_CHANNELS_OPT FeatureBit = 19 |
|
FeatureBit_ANCHORS_REQ FeatureBit = 20 |
|
FeatureBit_ANCHORS_OPT FeatureBit = 21 |
|
FeatureBit_ANCHORS_ZERO_FEE_HTLC_REQ FeatureBit = 22 |
|
FeatureBit_ANCHORS_ZERO_FEE_HTLC_OPT FeatureBit = 23 |
|
FeatureBit_AMP_REQ FeatureBit = 30 |
|
FeatureBit_AMP_OPT FeatureBit = 31 |
|
) |
|
|
|
// Enum value maps for FeatureBit. |
|
var ( |
|
FeatureBit_name = map[int32]string{ |
|
0: "DATALOSS_PROTECT_REQ", |
|
1: "DATALOSS_PROTECT_OPT", |
|
3: "INITIAL_ROUING_SYNC", |
|
4: "UPFRONT_SHUTDOWN_SCRIPT_REQ", |
|
5: "UPFRONT_SHUTDOWN_SCRIPT_OPT", |
|
6: "GOSSIP_QUERIES_REQ", |
|
7: "GOSSIP_QUERIES_OPT", |
|
8: "TLV_ONION_REQ", |
|
9: "TLV_ONION_OPT", |
|
10: "EXT_GOSSIP_QUERIES_REQ", |
|
11: "EXT_GOSSIP_QUERIES_OPT", |
|
12: "STATIC_REMOTE_KEY_REQ", |
|
13: "STATIC_REMOTE_KEY_OPT", |
|
14: "PAYMENT_ADDR_REQ", |
|
15: "PAYMENT_ADDR_OPT", |
|
16: "MPP_REQ", |
|
17: "MPP_OPT", |
|
18: "WUMBO_CHANNELS_REQ", |
|
19: "WUMBO_CHANNELS_OPT", |
|
20: "ANCHORS_REQ", |
|
21: "ANCHORS_OPT", |
|
22: "ANCHORS_ZERO_FEE_HTLC_REQ", |
|
23: "ANCHORS_ZERO_FEE_HTLC_OPT", |
|
30: "AMP_REQ", |
|
31: "AMP_OPT", |
|
} |
|
FeatureBit_value = map[string]int32{ |
|
"DATALOSS_PROTECT_REQ": 0, |
|
"DATALOSS_PROTECT_OPT": 1, |
|
"INITIAL_ROUING_SYNC": 3, |
|
"UPFRONT_SHUTDOWN_SCRIPT_REQ": 4, |
|
"UPFRONT_SHUTDOWN_SCRIPT_OPT": 5, |
|
"GOSSIP_QUERIES_REQ": 6, |
|
"GOSSIP_QUERIES_OPT": 7, |
|
"TLV_ONION_REQ": 8, |
|
"TLV_ONION_OPT": 9, |
|
"EXT_GOSSIP_QUERIES_REQ": 10, |
|
"EXT_GOSSIP_QUERIES_OPT": 11, |
|
"STATIC_REMOTE_KEY_REQ": 12, |
|
"STATIC_REMOTE_KEY_OPT": 13, |
|
"PAYMENT_ADDR_REQ": 14, |
|
"PAYMENT_ADDR_OPT": 15, |
|
"MPP_REQ": 16, |
|
"MPP_OPT": 17, |
|
"WUMBO_CHANNELS_REQ": 18, |
|
"WUMBO_CHANNELS_OPT": 19, |
|
"ANCHORS_REQ": 20, |
|
"ANCHORS_OPT": 21, |
|
"ANCHORS_ZERO_FEE_HTLC_REQ": 22, |
|
"ANCHORS_ZERO_FEE_HTLC_OPT": 23, |
|
"AMP_REQ": 30, |
|
"AMP_OPT": 31, |
|
} |
|
) |
|
|
|
func (x FeatureBit) Enum() *FeatureBit { |
|
p := new(FeatureBit) |
|
*p = x |
|
return p |
|
} |
|
|
|
func (x FeatureBit) String() string { |
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
|
} |
|
|
|
func (FeatureBit) Descriptor() protoreflect.EnumDescriptor { |
|
return file_rpc_proto_enumTypes[8].Descriptor() |
|
} |
|
|
|
func (FeatureBit) Type() protoreflect.EnumType { |
|
return &file_rpc_proto_enumTypes[8] |
|
} |
|
|
|
func (x FeatureBit) Number() protoreflect.EnumNumber { |
|
return protoreflect.EnumNumber(x) |
|
} |
|
|
|
// Deprecated: Use FeatureBit.Descriptor instead. |
|
func (FeatureBit) EnumDescriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{8} |
|
} |
|
|
|
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 |
|
) |
|
|
|
// Enum value maps for ChannelCloseSummary_ClosureType. |
|
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", |
|
} |
|
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, |
|
} |
|
) |
|
|
|
func (x ChannelCloseSummary_ClosureType) Enum() *ChannelCloseSummary_ClosureType { |
|
p := new(ChannelCloseSummary_ClosureType) |
|
*p = x |
|
return p |
|
} |
|
|
|
func (x ChannelCloseSummary_ClosureType) String() string { |
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
|
} |
|
|
|
func (ChannelCloseSummary_ClosureType) Descriptor() protoreflect.EnumDescriptor { |
|
return file_rpc_proto_enumTypes[9].Descriptor() |
|
} |
|
|
|
func (ChannelCloseSummary_ClosureType) Type() protoreflect.EnumType { |
|
return &file_rpc_proto_enumTypes[9] |
|
} |
|
|
|
func (x ChannelCloseSummary_ClosureType) Number() protoreflect.EnumNumber { |
|
return protoreflect.EnumNumber(x) |
|
} |
|
|
|
// Deprecated: Use ChannelCloseSummary_ClosureType.Descriptor instead. |
|
func (ChannelCloseSummary_ClosureType) EnumDescriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{36, 0} |
|
} |
|
|
|
type Peer_SyncType int32 |
|
|
|
const ( |
|
// |
|
//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. |
|
Peer_ACTIVE_SYNC Peer_SyncType = 1 |
|
// |
|
//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. |
|
Peer_PINNED_SYNC Peer_SyncType = 3 |
|
) |
|
|
|
// Enum value maps for Peer_SyncType. |
|
var ( |
|
Peer_SyncType_name = map[int32]string{ |
|
0: "UNKNOWN_SYNC", |
|
1: "ACTIVE_SYNC", |
|
2: "PASSIVE_SYNC", |
|
3: "PINNED_SYNC", |
|
} |
|
Peer_SyncType_value = map[string]int32{ |
|
"UNKNOWN_SYNC": 0, |
|
"ACTIVE_SYNC": 1, |
|
"PASSIVE_SYNC": 2, |
|
"PINNED_SYNC": 3, |
|
} |
|
) |
|
|
|
func (x Peer_SyncType) Enum() *Peer_SyncType { |
|
p := new(Peer_SyncType) |
|
*p = x |
|
return p |
|
} |
|
|
|
func (x Peer_SyncType) String() string { |
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
|
} |
|
|
|
func (Peer_SyncType) Descriptor() protoreflect.EnumDescriptor { |
|
return file_rpc_proto_enumTypes[10].Descriptor() |
|
} |
|
|
|
func (Peer_SyncType) Type() protoreflect.EnumType { |
|
return &file_rpc_proto_enumTypes[10] |
|
} |
|
|
|
func (x Peer_SyncType) Number() protoreflect.EnumNumber { |
|
return protoreflect.EnumNumber(x) |
|
} |
|
|
|
// Deprecated: Use Peer_SyncType.Descriptor instead. |
|
func (Peer_SyncType) EnumDescriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{40, 0} |
|
} |
|
|
|
type PeerEvent_EventType int32 |
|
|
|
const ( |
|
PeerEvent_PEER_ONLINE PeerEvent_EventType = 0 |
|
PeerEvent_PEER_OFFLINE PeerEvent_EventType = 1 |
|
) |
|
|
|
// Enum value maps for PeerEvent_EventType. |
|
var ( |
|
PeerEvent_EventType_name = map[int32]string{ |
|
0: "PEER_ONLINE", |
|
1: "PEER_OFFLINE", |
|
} |
|
PeerEvent_EventType_value = map[string]int32{ |
|
"PEER_ONLINE": 0, |
|
"PEER_OFFLINE": 1, |
|
} |
|
) |
|
|
|
func (x PeerEvent_EventType) Enum() *PeerEvent_EventType { |
|
p := new(PeerEvent_EventType) |
|
*p = x |
|
return p |
|
} |
|
|
|
func (x PeerEvent_EventType) String() string { |
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
|
} |
|
|
|
func (PeerEvent_EventType) Descriptor() protoreflect.EnumDescriptor { |
|
return file_rpc_proto_enumTypes[11].Descriptor() |
|
} |
|
|
|
func (PeerEvent_EventType) Type() protoreflect.EnumType { |
|
return &file_rpc_proto_enumTypes[11] |
|
} |
|
|
|
func (x PeerEvent_EventType) Number() protoreflect.EnumNumber { |
|
return protoreflect.EnumNumber(x) |
|
} |
|
|
|
// Deprecated: Use PeerEvent_EventType.Descriptor instead. |
|
func (PeerEvent_EventType) EnumDescriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{45, 0} |
|
} |
|
|
|
type PendingChannelsResponse_ForceClosedChannel_AnchorState int32 |
|
|
|
const ( |
|
PendingChannelsResponse_ForceClosedChannel_LIMBO PendingChannelsResponse_ForceClosedChannel_AnchorState = 0 |
|
PendingChannelsResponse_ForceClosedChannel_RECOVERED PendingChannelsResponse_ForceClosedChannel_AnchorState = 1 |
|
PendingChannelsResponse_ForceClosedChannel_LOST PendingChannelsResponse_ForceClosedChannel_AnchorState = 2 |
|
) |
|
|
|
// Enum value maps for PendingChannelsResponse_ForceClosedChannel_AnchorState. |
|
var ( |
|
PendingChannelsResponse_ForceClosedChannel_AnchorState_name = map[int32]string{ |
|
0: "LIMBO", |
|
1: "RECOVERED", |
|
2: "LOST", |
|
} |
|
PendingChannelsResponse_ForceClosedChannel_AnchorState_value = map[string]int32{ |
|
"LIMBO": 0, |
|
"RECOVERED": 1, |
|
"LOST": 2, |
|
} |
|
) |
|
|
|
func (x PendingChannelsResponse_ForceClosedChannel_AnchorState) Enum() *PendingChannelsResponse_ForceClosedChannel_AnchorState { |
|
p := new(PendingChannelsResponse_ForceClosedChannel_AnchorState) |
|
*p = x |
|
return p |
|
} |
|
|
|
func (x PendingChannelsResponse_ForceClosedChannel_AnchorState) String() string { |
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
|
} |
|
|
|
func (PendingChannelsResponse_ForceClosedChannel_AnchorState) Descriptor() protoreflect.EnumDescriptor { |
|
return file_rpc_proto_enumTypes[12].Descriptor() |
|
} |
|
|
|
func (PendingChannelsResponse_ForceClosedChannel_AnchorState) Type() protoreflect.EnumType { |
|
return &file_rpc_proto_enumTypes[12] |
|
} |
|
|
|
func (x PendingChannelsResponse_ForceClosedChannel_AnchorState) Number() protoreflect.EnumNumber { |
|
return protoreflect.EnumNumber(x) |
|
} |
|
|
|
// Deprecated: Use PendingChannelsResponse_ForceClosedChannel_AnchorState.Descriptor instead. |
|
func (PendingChannelsResponse_ForceClosedChannel_AnchorState) EnumDescriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{72, 5, 0} |
|
} |
|
|
|
type ChannelEventUpdate_UpdateType int32 |
|
|
|
const ( |
|
ChannelEventUpdate_OPEN_CHANNEL ChannelEventUpdate_UpdateType = 0 |
|
ChannelEventUpdate_CLOSED_CHANNEL ChannelEventUpdate_UpdateType = 1 |
|
ChannelEventUpdate_ACTIVE_CHANNEL ChannelEventUpdate_UpdateType = 2 |
|
ChannelEventUpdate_INACTIVE_CHANNEL ChannelEventUpdate_UpdateType = 3 |
|
ChannelEventUpdate_PENDING_OPEN_CHANNEL ChannelEventUpdate_UpdateType = 4 |
|
) |
|
|
|
// Enum value maps for ChannelEventUpdate_UpdateType. |
|
var ( |
|
ChannelEventUpdate_UpdateType_name = map[int32]string{ |
|
0: "OPEN_CHANNEL", |
|
1: "CLOSED_CHANNEL", |
|
2: "ACTIVE_CHANNEL", |
|
3: "INACTIVE_CHANNEL", |
|
4: "PENDING_OPEN_CHANNEL", |
|
} |
|
ChannelEventUpdate_UpdateType_value = map[string]int32{ |
|
"OPEN_CHANNEL": 0, |
|
"CLOSED_CHANNEL": 1, |
|
"ACTIVE_CHANNEL": 2, |
|
"INACTIVE_CHANNEL": 3, |
|
"PENDING_OPEN_CHANNEL": 4, |
|
} |
|
) |
|
|
|
func (x ChannelEventUpdate_UpdateType) Enum() *ChannelEventUpdate_UpdateType { |
|
p := new(ChannelEventUpdate_UpdateType) |
|
*p = x |
|
return p |
|
} |
|
|
|
func (x ChannelEventUpdate_UpdateType) String() string { |
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
|
} |
|
|
|
func (ChannelEventUpdate_UpdateType) Descriptor() protoreflect.EnumDescriptor { |
|
return file_rpc_proto_enumTypes[13].Descriptor() |
|
} |
|
|
|
func (ChannelEventUpdate_UpdateType) Type() protoreflect.EnumType { |
|
return &file_rpc_proto_enumTypes[13] |
|
} |
|
|
|
func (x ChannelEventUpdate_UpdateType) Number() protoreflect.EnumNumber { |
|
return protoreflect.EnumNumber(x) |
|
} |
|
|
|
// Deprecated: Use ChannelEventUpdate_UpdateType.Descriptor instead. |
|
func (ChannelEventUpdate_UpdateType) EnumDescriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{74, 0} |
|
} |
|
|
|
type Invoice_InvoiceState int32 |
|
|
|
const ( |
|
Invoice_OPEN Invoice_InvoiceState = 0 |
|
Invoice_SETTLED Invoice_InvoiceState = 1 |
|
Invoice_CANCELED Invoice_InvoiceState = 2 |
|
Invoice_ACCEPTED Invoice_InvoiceState = 3 |
|
) |
|
|
|
// Enum value maps for Invoice_InvoiceState. |
|
var ( |
|
Invoice_InvoiceState_name = map[int32]string{ |
|
0: "OPEN", |
|
1: "SETTLED", |
|
2: "CANCELED", |
|
3: "ACCEPTED", |
|
} |
|
Invoice_InvoiceState_value = map[string]int32{ |
|
"OPEN": 0, |
|
"SETTLED": 1, |
|
"CANCELED": 2, |
|
"ACCEPTED": 3, |
|
} |
|
) |
|
|
|
func (x Invoice_InvoiceState) Enum() *Invoice_InvoiceState { |
|
p := new(Invoice_InvoiceState) |
|
*p = x |
|
return p |
|
} |
|
|
|
func (x Invoice_InvoiceState) String() string { |
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
|
} |
|
|
|
func (Invoice_InvoiceState) Descriptor() protoreflect.EnumDescriptor { |
|
return file_rpc_proto_enumTypes[14].Descriptor() |
|
} |
|
|
|
func (Invoice_InvoiceState) Type() protoreflect.EnumType { |
|
return &file_rpc_proto_enumTypes[14] |
|
} |
|
|
|
func (x Invoice_InvoiceState) Number() protoreflect.EnumNumber { |
|
return protoreflect.EnumNumber(x) |
|
} |
|
|
|
// Deprecated: Use Invoice_InvoiceState.Descriptor instead. |
|
func (Invoice_InvoiceState) EnumDescriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{112, 0} |
|
} |
|
|
|
type Payment_PaymentStatus int32 |
|
|
|
const ( |
|
Payment_UNKNOWN Payment_PaymentStatus = 0 |
|
Payment_IN_FLIGHT Payment_PaymentStatus = 1 |
|
Payment_SUCCEEDED Payment_PaymentStatus = 2 |
|
Payment_FAILED Payment_PaymentStatus = 3 |
|
) |
|
|
|
// Enum value maps for Payment_PaymentStatus. |
|
var ( |
|
Payment_PaymentStatus_name = map[int32]string{ |
|
0: "UNKNOWN", |
|
1: "IN_FLIGHT", |
|
2: "SUCCEEDED", |
|
3: "FAILED", |
|
} |
|
Payment_PaymentStatus_value = map[string]int32{ |
|
"UNKNOWN": 0, |
|
"IN_FLIGHT": 1, |
|
"SUCCEEDED": 2, |
|
"FAILED": 3, |
|
} |
|
) |
|
|
|
func (x Payment_PaymentStatus) Enum() *Payment_PaymentStatus { |
|
p := new(Payment_PaymentStatus) |
|
*p = x |
|
return p |
|
} |
|
|
|
func (x Payment_PaymentStatus) String() string { |
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
|
} |
|
|
|
func (Payment_PaymentStatus) Descriptor() protoreflect.EnumDescriptor { |
|
return file_rpc_proto_enumTypes[15].Descriptor() |
|
} |
|
|
|
func (Payment_PaymentStatus) Type() protoreflect.EnumType { |
|
return &file_rpc_proto_enumTypes[15] |
|
} |
|
|
|
func (x Payment_PaymentStatus) Number() protoreflect.EnumNumber { |
|
return protoreflect.EnumNumber(x) |
|
} |
|
|
|
// Deprecated: Use Payment_PaymentStatus.Descriptor instead. |
|
func (Payment_PaymentStatus) EnumDescriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{120, 0} |
|
} |
|
|
|
type HTLCAttempt_HTLCStatus int32 |
|
|
|
const ( |
|
HTLCAttempt_IN_FLIGHT HTLCAttempt_HTLCStatus = 0 |
|
HTLCAttempt_SUCCEEDED HTLCAttempt_HTLCStatus = 1 |
|
HTLCAttempt_FAILED HTLCAttempt_HTLCStatus = 2 |
|
) |
|
|
|
// Enum value maps for HTLCAttempt_HTLCStatus. |
|
var ( |
|
HTLCAttempt_HTLCStatus_name = map[int32]string{ |
|
0: "IN_FLIGHT", |
|
1: "SUCCEEDED", |
|
2: "FAILED", |
|
} |
|
HTLCAttempt_HTLCStatus_value = map[string]int32{ |
|
"IN_FLIGHT": 0, |
|
"SUCCEEDED": 1, |
|
"FAILED": 2, |
|
} |
|
) |
|
|
|
func (x HTLCAttempt_HTLCStatus) Enum() *HTLCAttempt_HTLCStatus { |
|
p := new(HTLCAttempt_HTLCStatus) |
|
*p = x |
|
return p |
|
} |
|
|
|
func (x HTLCAttempt_HTLCStatus) String() string { |
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
|
} |
|
|
|
func (HTLCAttempt_HTLCStatus) Descriptor() protoreflect.EnumDescriptor { |
|
return file_rpc_proto_enumTypes[16].Descriptor() |
|
} |
|
|
|
func (HTLCAttempt_HTLCStatus) Type() protoreflect.EnumType { |
|
return &file_rpc_proto_enumTypes[16] |
|
} |
|
|
|
func (x HTLCAttempt_HTLCStatus) Number() protoreflect.EnumNumber { |
|
return protoreflect.EnumNumber(x) |
|
} |
|
|
|
// Deprecated: Use HTLCAttempt_HTLCStatus.Descriptor instead. |
|
func (HTLCAttempt_HTLCStatus) EnumDescriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{121, 0} |
|
} |
|
|
|
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. |
|
Failure_RESERVED Failure_FailureCode = 0 |
|
Failure_INCORRECT_OR_UNKNOWN_PAYMENT_DETAILS Failure_FailureCode = 1 |
|
Failure_INCORRECT_PAYMENT_AMOUNT Failure_FailureCode = 2 |
|
Failure_FINAL_INCORRECT_CLTV_EXPIRY Failure_FailureCode = 3 |
|
Failure_FINAL_INCORRECT_HTLC_AMOUNT Failure_FailureCode = 4 |
|
Failure_FINAL_EXPIRY_TOO_SOON Failure_FailureCode = 5 |
|
Failure_INVALID_REALM Failure_FailureCode = 6 |
|
Failure_EXPIRY_TOO_SOON Failure_FailureCode = 7 |
|
Failure_INVALID_ONION_VERSION Failure_FailureCode = 8 |
|
Failure_INVALID_ONION_HMAC Failure_FailureCode = 9 |
|
Failure_INVALID_ONION_KEY Failure_FailureCode = 10 |
|
Failure_AMOUNT_BELOW_MINIMUM Failure_FailureCode = 11 |
|
Failure_FEE_INSUFFICIENT Failure_FailureCode = 12 |
|
Failure_INCORRECT_CLTV_EXPIRY Failure_FailureCode = 13 |
|
Failure_CHANNEL_DISABLED Failure_FailureCode = 14 |
|
Failure_TEMPORARY_CHANNEL_FAILURE Failure_FailureCode = 15 |
|
Failure_REQUIRED_NODE_FEATURE_MISSING Failure_FailureCode = 16 |
|
Failure_REQUIRED_CHANNEL_FEATURE_MISSING Failure_FailureCode = 17 |
|
Failure_UNKNOWN_NEXT_PEER Failure_FailureCode = 18 |
|
Failure_TEMPORARY_NODE_FAILURE Failure_FailureCode = 19 |
|
Failure_PERMANENT_NODE_FAILURE Failure_FailureCode = 20 |
|
Failure_PERMANENT_CHANNEL_FAILURE Failure_FailureCode = 21 |
|
Failure_EXPIRY_TOO_FAR Failure_FailureCode = 22 |
|
Failure_MPP_TIMEOUT Failure_FailureCode = 23 |
|
Failure_INVALID_ONION_PAYLOAD Failure_FailureCode = 24 |
|
// |
|
//An internal error occurred. |
|
Failure_INTERNAL_FAILURE Failure_FailureCode = 997 |
|
// |
|
//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. |
|
Failure_UNREADABLE_FAILURE Failure_FailureCode = 999 |
|
) |
|
|
|
// Enum value maps for Failure_FailureCode. |
|
var ( |
|
Failure_FailureCode_name = map[int32]string{ |
|
0: "RESERVED", |
|
1: "INCORRECT_OR_UNKNOWN_PAYMENT_DETAILS", |
|
2: "INCORRECT_PAYMENT_AMOUNT", |
|
3: "FINAL_INCORRECT_CLTV_EXPIRY", |
|
4: "FINAL_INCORRECT_HTLC_AMOUNT", |
|
5: "FINAL_EXPIRY_TOO_SOON", |
|
6: "INVALID_REALM", |
|
7: "EXPIRY_TOO_SOON", |
|
8: "INVALID_ONION_VERSION", |
|
9: "INVALID_ONION_HMAC", |
|
10: "INVALID_ONION_KEY", |
|
11: "AMOUNT_BELOW_MINIMUM", |
|
12: "FEE_INSUFFICIENT", |
|
13: "INCORRECT_CLTV_EXPIRY", |
|
14: "CHANNEL_DISABLED", |
|
15: "TEMPORARY_CHANNEL_FAILURE", |
|
16: "REQUIRED_NODE_FEATURE_MISSING", |
|
17: "REQUIRED_CHANNEL_FEATURE_MISSING", |
|
18: "UNKNOWN_NEXT_PEER", |
|
19: "TEMPORARY_NODE_FAILURE", |
|
20: "PERMANENT_NODE_FAILURE", |
|
21: "PERMANENT_CHANNEL_FAILURE", |
|
22: "EXPIRY_TOO_FAR", |
|
23: "MPP_TIMEOUT", |
|
24: "INVALID_ONION_PAYLOAD", |
|
997: "INTERNAL_FAILURE", |
|
998: "UNKNOWN_FAILURE", |
|
999: "UNREADABLE_FAILURE", |
|
} |
|
Failure_FailureCode_value = map[string]int32{ |
|
"RESERVED": 0, |
|
"INCORRECT_OR_UNKNOWN_PAYMENT_DETAILS": 1, |
|
"INCORRECT_PAYMENT_AMOUNT": 2, |
|
"FINAL_INCORRECT_CLTV_EXPIRY": 3, |
|
"FINAL_INCORRECT_HTLC_AMOUNT": 4, |
|
"FINAL_EXPIRY_TOO_SOON": 5, |
|
"INVALID_REALM": 6, |
|
"EXPIRY_TOO_SOON": 7, |
|
"INVALID_ONION_VERSION": 8, |
|
"INVALID_ONION_HMAC": 9, |
|
"INVALID_ONION_KEY": 10, |
|
"AMOUNT_BELOW_MINIMUM": 11, |
|
"FEE_INSUFFICIENT": 12, |
|
"INCORRECT_CLTV_EXPIRY": 13, |
|
"CHANNEL_DISABLED": 14, |
|
"TEMPORARY_CHANNEL_FAILURE": 15, |
|
"REQUIRED_NODE_FEATURE_MISSING": 16, |
|
"REQUIRED_CHANNEL_FEATURE_MISSING": 17, |
|
"UNKNOWN_NEXT_PEER": 18, |
|
"TEMPORARY_NODE_FAILURE": 19, |
|
"PERMANENT_NODE_FAILURE": 20, |
|
"PERMANENT_CHANNEL_FAILURE": 21, |
|
"EXPIRY_TOO_FAR": 22, |
|
"MPP_TIMEOUT": 23, |
|
"INVALID_ONION_PAYLOAD": 24, |
|
"INTERNAL_FAILURE": 997, |
|
"UNKNOWN_FAILURE": 998, |
|
"UNREADABLE_FAILURE": 999, |
|
} |
|
) |
|
|
|
func (x Failure_FailureCode) Enum() *Failure_FailureCode { |
|
p := new(Failure_FailureCode) |
|
*p = x |
|
return p |
|
} |
|
|
|
func (x Failure_FailureCode) String() string { |
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
|
} |
|
|
|
func (Failure_FailureCode) Descriptor() protoreflect.EnumDescriptor { |
|
return file_rpc_proto_enumTypes[17].Descriptor() |
|
} |
|
|
|
func (Failure_FailureCode) Type() protoreflect.EnumType { |
|
return &file_rpc_proto_enumTypes[17] |
|
} |
|
|
|
func (x Failure_FailureCode) Number() protoreflect.EnumNumber { |
|
return protoreflect.EnumNumber(x) |
|
} |
|
|
|
// Deprecated: Use Failure_FailureCode.Descriptor instead. |
|
func (Failure_FailureCode) EnumDescriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{161, 0} |
|
} |
|
|
|
type Utxo struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The type of address |
|
AddressType AddressType `protobuf:"varint,1,opt,name=address_type,json=addressType,proto3,enum=lnrpc.AddressType" json:"address_type,omitempty"` |
|
// The address |
|
Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"` |
|
// The value of the unspent coin in satoshis |
|
AmountSat int64 `protobuf:"varint,3,opt,name=amount_sat,json=amountSat,proto3" json:"amount_sat,omitempty"` |
|
// The pkscript in hex |
|
PkScript string `protobuf:"bytes,4,opt,name=pk_script,json=pkScript,proto3" json:"pk_script,omitempty"` |
|
// The outpoint in format txid:n |
|
Outpoint *OutPoint `protobuf:"bytes,5,opt,name=outpoint,proto3" json:"outpoint,omitempty"` |
|
// The number of confirmations for the Utxo |
|
Confirmations int64 `protobuf:"varint,6,opt,name=confirmations,proto3" json:"confirmations,omitempty"` |
|
} |
|
|
|
func (x *Utxo) Reset() { |
|
*x = Utxo{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[0] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *Utxo) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*Utxo) ProtoMessage() {} |
|
|
|
func (x *Utxo) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[0] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use Utxo.ProtoReflect.Descriptor instead. |
|
func (*Utxo) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{0} |
|
} |
|
|
|
func (x *Utxo) GetAddressType() AddressType { |
|
if x != nil { |
|
return x.AddressType |
|
} |
|
return AddressType_WITNESS_PUBKEY_HASH |
|
} |
|
|
|
func (x *Utxo) GetAddress() string { |
|
if x != nil { |
|
return x.Address |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Utxo) GetAmountSat() int64 { |
|
if x != nil { |
|
return x.AmountSat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Utxo) GetPkScript() string { |
|
if x != nil { |
|
return x.PkScript |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Utxo) GetOutpoint() *OutPoint { |
|
if x != nil { |
|
return x.Outpoint |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Utxo) GetConfirmations() int64 { |
|
if x != nil { |
|
return x.Confirmations |
|
} |
|
return 0 |
|
} |
|
|
|
type Transaction struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The transaction hash |
|
TxHash string `protobuf:"bytes,1,opt,name=tx_hash,json=txHash,proto3" json:"tx_hash,omitempty"` |
|
// The transaction amount, denominated in satoshis |
|
Amount int64 `protobuf:"varint,2,opt,name=amount,proto3" json:"amount,omitempty"` |
|
// The number of confirmations |
|
NumConfirmations int32 `protobuf:"varint,3,opt,name=num_confirmations,json=numConfirmations,proto3" json:"num_confirmations,omitempty"` |
|
// The hash of the block this transaction was included in |
|
BlockHash string `protobuf:"bytes,4,opt,name=block_hash,json=blockHash,proto3" json:"block_hash,omitempty"` |
|
// The height of the block this transaction was included in |
|
BlockHeight int32 `protobuf:"varint,5,opt,name=block_height,json=blockHeight,proto3" json:"block_height,omitempty"` |
|
// Timestamp of this transaction |
|
TimeStamp int64 `protobuf:"varint,6,opt,name=time_stamp,json=timeStamp,proto3" json:"time_stamp,omitempty"` |
|
// Fees paid for this transaction |
|
TotalFees int64 `protobuf:"varint,7,opt,name=total_fees,json=totalFees,proto3" json:"total_fees,omitempty"` |
|
// Addresses that received funds for this transaction |
|
DestAddresses []string `protobuf:"bytes,8,rep,name=dest_addresses,json=destAddresses,proto3" json:"dest_addresses,omitempty"` |
|
// The raw transaction hex. |
|
RawTxHex string `protobuf:"bytes,9,opt,name=raw_tx_hex,json=rawTxHex,proto3" json:"raw_tx_hex,omitempty"` |
|
// A label that was optionally set on transaction broadcast. |
|
Label string `protobuf:"bytes,10,opt,name=label,proto3" json:"label,omitempty"` |
|
} |
|
|
|
func (x *Transaction) Reset() { |
|
*x = Transaction{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[1] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *Transaction) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*Transaction) ProtoMessage() {} |
|
|
|
func (x *Transaction) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[1] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use Transaction.ProtoReflect.Descriptor instead. |
|
func (*Transaction) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{1} |
|
} |
|
|
|
func (x *Transaction) GetTxHash() string { |
|
if x != nil { |
|
return x.TxHash |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Transaction) GetAmount() int64 { |
|
if x != nil { |
|
return x.Amount |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Transaction) GetNumConfirmations() int32 { |
|
if x != nil { |
|
return x.NumConfirmations |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Transaction) GetBlockHash() string { |
|
if x != nil { |
|
return x.BlockHash |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Transaction) GetBlockHeight() int32 { |
|
if x != nil { |
|
return x.BlockHeight |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Transaction) GetTimeStamp() int64 { |
|
if x != nil { |
|
return x.TimeStamp |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Transaction) GetTotalFees() int64 { |
|
if x != nil { |
|
return x.TotalFees |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Transaction) GetDestAddresses() []string { |
|
if x != nil { |
|
return x.DestAddresses |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Transaction) GetRawTxHex() string { |
|
if x != nil { |
|
return x.RawTxHex |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Transaction) GetLabel() string { |
|
if x != nil { |
|
return x.Label |
|
} |
|
return "" |
|
} |
|
|
|
type GetTransactionsRequest struct { |
|
state protoimpl.MessageState |
|
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. |
|
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. |
|
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"` |
|
} |
|
|
|
func (x *GetTransactionsRequest) Reset() { |
|
*x = GetTransactionsRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[2] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *GetTransactionsRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*GetTransactionsRequest) ProtoMessage() {} |
|
|
|
func (x *GetTransactionsRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[2] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use GetTransactionsRequest.ProtoReflect.Descriptor instead. |
|
func (*GetTransactionsRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{2} |
|
} |
|
|
|
func (x *GetTransactionsRequest) GetStartHeight() int32 { |
|
if x != nil { |
|
return x.StartHeight |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *GetTransactionsRequest) GetEndHeight() int32 { |
|
if x != nil { |
|
return x.EndHeight |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *GetTransactionsRequest) GetAccount() string { |
|
if x != nil { |
|
return x.Account |
|
} |
|
return "" |
|
} |
|
|
|
type TransactionDetails struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The list of transactions relevant to the wallet. |
|
Transactions []*Transaction `protobuf:"bytes,1,rep,name=transactions,proto3" json:"transactions,omitempty"` |
|
} |
|
|
|
func (x *TransactionDetails) Reset() { |
|
*x = TransactionDetails{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[3] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *TransactionDetails) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*TransactionDetails) ProtoMessage() {} |
|
|
|
func (x *TransactionDetails) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[3] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use TransactionDetails.ProtoReflect.Descriptor instead. |
|
func (*TransactionDetails) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{3} |
|
} |
|
|
|
func (x *TransactionDetails) GetTransactions() []*Transaction { |
|
if x != nil { |
|
return x.Transactions |
|
} |
|
return nil |
|
} |
|
|
|
type FeeLimit struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Types that are assignable to Limit: |
|
// *FeeLimit_Fixed |
|
// *FeeLimit_FixedMsat |
|
// *FeeLimit_Percent |
|
Limit isFeeLimit_Limit `protobuf_oneof:"limit"` |
|
} |
|
|
|
func (x *FeeLimit) Reset() { |
|
*x = FeeLimit{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[4] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *FeeLimit) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*FeeLimit) ProtoMessage() {} |
|
|
|
func (x *FeeLimit) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[4] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use FeeLimit.ProtoReflect.Descriptor instead. |
|
func (*FeeLimit) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{4} |
|
} |
|
|
|
func (m *FeeLimit) GetLimit() isFeeLimit_Limit { |
|
if m != nil { |
|
return m.Limit |
|
} |
|
return nil |
|
} |
|
|
|
func (x *FeeLimit) GetFixed() int64 { |
|
if x, ok := x.GetLimit().(*FeeLimit_Fixed); ok { |
|
return x.Fixed |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *FeeLimit) GetFixedMsat() int64 { |
|
if x, ok := x.GetLimit().(*FeeLimit_FixedMsat); ok { |
|
return x.FixedMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *FeeLimit) GetPercent() int64 { |
|
if x, ok := x.GetLimit().(*FeeLimit_Percent); ok { |
|
return x.Percent |
|
} |
|
return 0 |
|
} |
|
|
|
type isFeeLimit_Limit interface { |
|
isFeeLimit_Limit() |
|
} |
|
|
|
type FeeLimit_Fixed struct { |
|
// |
|
//The fee limit expressed as a fixed amount of satoshis. |
|
// |
|
//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 fields fixed and fixed_msat are mutually exclusive. |
|
FixedMsat int64 `protobuf:"varint,3,opt,name=fixed_msat,json=fixedMsat,proto3,oneof"` |
|
} |
|
|
|
type FeeLimit_Percent struct { |
|
// The fee limit expressed as a percentage of the payment amount. |
|
Percent int64 `protobuf:"varint,2,opt,name=percent,proto3,oneof"` |
|
} |
|
|
|
func (*FeeLimit_Fixed) isFeeLimit_Limit() {} |
|
|
|
func (*FeeLimit_FixedMsat) isFeeLimit_Limit() {} |
|
|
|
func (*FeeLimit_Percent) isFeeLimit_Limit() {} |
|
|
|
type SendRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// |
|
//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. |
|
// |
|
// 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 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 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. |
|
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. |
|
// |
|
// 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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
PaymentAddr []byte `protobuf:"bytes,16,opt,name=payment_addr,json=paymentAddr,proto3" json:"payment_addr,omitempty"` |
|
} |
|
|
|
func (x *SendRequest) Reset() { |
|
*x = SendRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[5] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *SendRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*SendRequest) ProtoMessage() {} |
|
|
|
func (x *SendRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[5] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use SendRequest.ProtoReflect.Descriptor instead. |
|
func (*SendRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{5} |
|
} |
|
|
|
func (x *SendRequest) GetDest() []byte { |
|
if x != nil { |
|
return x.Dest |
|
} |
|
return nil |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *SendRequest) GetDestString() string { |
|
if x != nil { |
|
return x.DestString |
|
} |
|
return "" |
|
} |
|
|
|
func (x *SendRequest) GetAmt() int64 { |
|
if x != nil { |
|
return x.Amt |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *SendRequest) GetAmtMsat() int64 { |
|
if x != nil { |
|
return x.AmtMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *SendRequest) GetPaymentHash() []byte { |
|
if x != nil { |
|
return x.PaymentHash |
|
} |
|
return nil |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *SendRequest) GetPaymentHashString() string { |
|
if x != nil { |
|
return x.PaymentHashString |
|
} |
|
return "" |
|
} |
|
|
|
func (x *SendRequest) GetPaymentRequest() string { |
|
if x != nil { |
|
return x.PaymentRequest |
|
} |
|
return "" |
|
} |
|
|
|
func (x *SendRequest) GetFinalCltvDelta() int32 { |
|
if x != nil { |
|
return x.FinalCltvDelta |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *SendRequest) GetFeeLimit() *FeeLimit { |
|
if x != nil { |
|
return x.FeeLimit |
|
} |
|
return nil |
|
} |
|
|
|
func (x *SendRequest) GetOutgoingChanId() uint64 { |
|
if x != nil { |
|
return x.OutgoingChanId |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *SendRequest) GetLastHopPubkey() []byte { |
|
if x != nil { |
|
return x.LastHopPubkey |
|
} |
|
return nil |
|
} |
|
|
|
func (x *SendRequest) GetCltvLimit() uint32 { |
|
if x != nil { |
|
return x.CltvLimit |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *SendRequest) GetDestCustomRecords() map[uint64][]byte { |
|
if x != nil { |
|
return x.DestCustomRecords |
|
} |
|
return nil |
|
} |
|
|
|
func (x *SendRequest) GetAllowSelfPayment() bool { |
|
if x != nil { |
|
return x.AllowSelfPayment |
|
} |
|
return false |
|
} |
|
|
|
func (x *SendRequest) GetDestFeatures() []FeatureBit { |
|
if x != nil { |
|
return x.DestFeatures |
|
} |
|
return nil |
|
} |
|
|
|
func (x *SendRequest) GetPaymentAddr() []byte { |
|
if x != nil { |
|
return x.PaymentAddr |
|
} |
|
return nil |
|
} |
|
|
|
type SendResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
PaymentError string `protobuf:"bytes,1,opt,name=payment_error,json=paymentError,proto3" json:"payment_error,omitempty"` |
|
PaymentPreimage []byte `protobuf:"bytes,2,opt,name=payment_preimage,json=paymentPreimage,proto3" json:"payment_preimage,omitempty"` |
|
PaymentRoute *Route `protobuf:"bytes,3,opt,name=payment_route,json=paymentRoute,proto3" json:"payment_route,omitempty"` |
|
PaymentHash []byte `protobuf:"bytes,4,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"` |
|
} |
|
|
|
func (x *SendResponse) Reset() { |
|
*x = SendResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[6] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *SendResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*SendResponse) ProtoMessage() {} |
|
|
|
func (x *SendResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[6] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use SendResponse.ProtoReflect.Descriptor instead. |
|
func (*SendResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{6} |
|
} |
|
|
|
func (x *SendResponse) GetPaymentError() string { |
|
if x != nil { |
|
return x.PaymentError |
|
} |
|
return "" |
|
} |
|
|
|
func (x *SendResponse) GetPaymentPreimage() []byte { |
|
if x != nil { |
|
return x.PaymentPreimage |
|
} |
|
return nil |
|
} |
|
|
|
func (x *SendResponse) GetPaymentRoute() *Route { |
|
if x != nil { |
|
return x.PaymentRoute |
|
} |
|
return nil |
|
} |
|
|
|
func (x *SendResponse) GetPaymentHash() []byte { |
|
if x != nil { |
|
return x.PaymentHash |
|
} |
|
return nil |
|
} |
|
|
|
type SendToRouteRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// |
|
//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. |
|
// |
|
// Deprecated: Do not use. |
|
PaymentHashString string `protobuf:"bytes,2,opt,name=payment_hash_string,json=paymentHashString,proto3" json:"payment_hash_string,omitempty"` |
|
// Route that should be used to attempt to complete the payment. |
|
Route *Route `protobuf:"bytes,4,opt,name=route,proto3" json:"route,omitempty"` |
|
} |
|
|
|
func (x *SendToRouteRequest) Reset() { |
|
*x = SendToRouteRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[7] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *SendToRouteRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*SendToRouteRequest) ProtoMessage() {} |
|
|
|
func (x *SendToRouteRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[7] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use SendToRouteRequest.ProtoReflect.Descriptor instead. |
|
func (*SendToRouteRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{7} |
|
} |
|
|
|
func (x *SendToRouteRequest) GetPaymentHash() []byte { |
|
if x != nil { |
|
return x.PaymentHash |
|
} |
|
return nil |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *SendToRouteRequest) GetPaymentHashString() string { |
|
if x != nil { |
|
return x.PaymentHashString |
|
} |
|
return "" |
|
} |
|
|
|
func (x *SendToRouteRequest) GetRoute() *Route { |
|
if x != nil { |
|
return x.Route |
|
} |
|
return nil |
|
} |
|
|
|
type ChannelAcceptRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The pubkey of the node that wishes to open an inbound channel. |
|
NodePubkey []byte `protobuf:"bytes,1,opt,name=node_pubkey,json=nodePubkey,proto3" json:"node_pubkey,omitempty"` |
|
// The hash of the genesis block that the proposed channel resides in. |
|
ChainHash []byte `protobuf:"bytes,2,opt,name=chain_hash,json=chainHash,proto3" json:"chain_hash,omitempty"` |
|
// The pending channel id. |
|
PendingChanId []byte `protobuf:"bytes,3,opt,name=pending_chan_id,json=pendingChanId,proto3" json:"pending_chan_id,omitempty"` |
|
// The funding amount in satoshis that initiator wishes to use in the |
|
// channel. |
|
FundingAmt uint64 `protobuf:"varint,4,opt,name=funding_amt,json=fundingAmt,proto3" json:"funding_amt,omitempty"` |
|
// The push amount of the proposed channel in millisatoshis. |
|
PushAmt uint64 `protobuf:"varint,5,opt,name=push_amt,json=pushAmt,proto3" json:"push_amt,omitempty"` |
|
// The dust limit of the initiator's commitment tx. |
|
DustLimit uint64 `protobuf:"varint,6,opt,name=dust_limit,json=dustLimit,proto3" json:"dust_limit,omitempty"` |
|
// The maximum amount of coins in millisatoshis that can be pending in this |
|
// channel. |
|
MaxValueInFlight uint64 `protobuf:"varint,7,opt,name=max_value_in_flight,json=maxValueInFlight,proto3" json:"max_value_in_flight,omitempty"` |
|
// The minimum amount of satoshis the initiator requires us to have at all |
|
// times. |
|
ChannelReserve uint64 `protobuf:"varint,8,opt,name=channel_reserve,json=channelReserve,proto3" json:"channel_reserve,omitempty"` |
|
// The smallest HTLC in millisatoshis that the initiator will accept. |
|
MinHtlc uint64 `protobuf:"varint,9,opt,name=min_htlc,json=minHtlc,proto3" json:"min_htlc,omitempty"` |
|
// 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. |
|
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"` |
|
// A bit-field which the initiator uses to specify proposed channel |
|
// behavior. |
|
ChannelFlags uint32 `protobuf:"varint,13,opt,name=channel_flags,json=channelFlags,proto3" json:"channel_flags,omitempty"` |
|
} |
|
|
|
func (x *ChannelAcceptRequest) Reset() { |
|
*x = ChannelAcceptRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[8] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelAcceptRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelAcceptRequest) ProtoMessage() {} |
|
|
|
func (x *ChannelAcceptRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[8] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelAcceptRequest.ProtoReflect.Descriptor instead. |
|
func (*ChannelAcceptRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{8} |
|
} |
|
|
|
func (x *ChannelAcceptRequest) GetNodePubkey() []byte { |
|
if x != nil { |
|
return x.NodePubkey |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelAcceptRequest) GetChainHash() []byte { |
|
if x != nil { |
|
return x.ChainHash |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelAcceptRequest) GetPendingChanId() []byte { |
|
if x != nil { |
|
return x.PendingChanId |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelAcceptRequest) GetFundingAmt() uint64 { |
|
if x != nil { |
|
return x.FundingAmt |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelAcceptRequest) GetPushAmt() uint64 { |
|
if x != nil { |
|
return x.PushAmt |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelAcceptRequest) GetDustLimit() uint64 { |
|
if x != nil { |
|
return x.DustLimit |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelAcceptRequest) GetMaxValueInFlight() uint64 { |
|
if x != nil { |
|
return x.MaxValueInFlight |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelAcceptRequest) GetChannelReserve() uint64 { |
|
if x != nil { |
|
return x.ChannelReserve |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelAcceptRequest) GetMinHtlc() uint64 { |
|
if x != nil { |
|
return x.MinHtlc |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelAcceptRequest) GetFeePerKw() uint64 { |
|
if x != nil { |
|
return x.FeePerKw |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelAcceptRequest) GetCsvDelay() uint32 { |
|
if x != nil { |
|
return x.CsvDelay |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelAcceptRequest) GetMaxAcceptedHtlcs() uint32 { |
|
if x != nil { |
|
return x.MaxAcceptedHtlcs |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelAcceptRequest) GetChannelFlags() uint32 { |
|
if x != nil { |
|
return x.ChannelFlags |
|
} |
|
return 0 |
|
} |
|
|
|
type ChannelAcceptResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Whether or not the client accepts the channel. |
|
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. |
|
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. |
|
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. |
|
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). |
|
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. |
|
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. |
|
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. |
|
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. |
|
MinAcceptDepth uint32 `protobuf:"varint,10,opt,name=min_accept_depth,json=minAcceptDepth,proto3" json:"min_accept_depth,omitempty"` |
|
} |
|
|
|
func (x *ChannelAcceptResponse) Reset() { |
|
*x = ChannelAcceptResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[9] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelAcceptResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelAcceptResponse) ProtoMessage() {} |
|
|
|
func (x *ChannelAcceptResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[9] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelAcceptResponse.ProtoReflect.Descriptor instead. |
|
func (*ChannelAcceptResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{9} |
|
} |
|
|
|
func (x *ChannelAcceptResponse) GetAccept() bool { |
|
if x != nil { |
|
return x.Accept |
|
} |
|
return false |
|
} |
|
|
|
func (x *ChannelAcceptResponse) GetPendingChanId() []byte { |
|
if x != nil { |
|
return x.PendingChanId |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelAcceptResponse) GetError() string { |
|
if x != nil { |
|
return x.Error |
|
} |
|
return "" |
|
} |
|
|
|
func (x *ChannelAcceptResponse) GetUpfrontShutdown() string { |
|
if x != nil { |
|
return x.UpfrontShutdown |
|
} |
|
return "" |
|
} |
|
|
|
func (x *ChannelAcceptResponse) GetCsvDelay() uint32 { |
|
if x != nil { |
|
return x.CsvDelay |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelAcceptResponse) GetReserveSat() uint64 { |
|
if x != nil { |
|
return x.ReserveSat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelAcceptResponse) GetInFlightMaxMsat() uint64 { |
|
if x != nil { |
|
return x.InFlightMaxMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelAcceptResponse) GetMaxHtlcCount() uint32 { |
|
if x != nil { |
|
return x.MaxHtlcCount |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelAcceptResponse) GetMinHtlcIn() uint64 { |
|
if x != nil { |
|
return x.MinHtlcIn |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelAcceptResponse) GetMinAcceptDepth() uint32 { |
|
if x != nil { |
|
return x.MinAcceptDepth |
|
} |
|
return 0 |
|
} |
|
|
|
type ChannelPoint struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Types that are assignable to FundingTxid: |
|
// *ChannelPoint_FundingTxidBytes |
|
// *ChannelPoint_FundingTxidStr |
|
FundingTxid isChannelPoint_FundingTxid `protobuf_oneof:"funding_txid"` |
|
// The index of the output of the funding transaction |
|
OutputIndex uint32 `protobuf:"varint,3,opt,name=output_index,json=outputIndex,proto3" json:"output_index,omitempty"` |
|
} |
|
|
|
func (x *ChannelPoint) Reset() { |
|
*x = ChannelPoint{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[10] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelPoint) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelPoint) ProtoMessage() {} |
|
|
|
func (x *ChannelPoint) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[10] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelPoint.ProtoReflect.Descriptor instead. |
|
func (*ChannelPoint) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{10} |
|
} |
|
|
|
func (m *ChannelPoint) GetFundingTxid() isChannelPoint_FundingTxid { |
|
if m != nil { |
|
return m.FundingTxid |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelPoint) GetFundingTxidBytes() []byte { |
|
if x, ok := x.GetFundingTxid().(*ChannelPoint_FundingTxidBytes); ok { |
|
return x.FundingTxidBytes |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelPoint) GetFundingTxidStr() string { |
|
if x, ok := x.GetFundingTxid().(*ChannelPoint_FundingTxidStr); ok { |
|
return x.FundingTxidStr |
|
} |
|
return "" |
|
} |
|
|
|
func (x *ChannelPoint) GetOutputIndex() uint32 { |
|
if x != nil { |
|
return x.OutputIndex |
|
} |
|
return 0 |
|
} |
|
|
|
type isChannelPoint_FundingTxid interface { |
|
isChannelPoint_FundingTxid() |
|
} |
|
|
|
type ChannelPoint_FundingTxidBytes struct { |
|
// |
|
//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. |
|
FundingTxidStr string `protobuf:"bytes,2,opt,name=funding_txid_str,json=fundingTxidStr,proto3,oneof"` |
|
} |
|
|
|
func (*ChannelPoint_FundingTxidBytes) isChannelPoint_FundingTxid() {} |
|
|
|
func (*ChannelPoint_FundingTxidStr) isChannelPoint_FundingTxid() {} |
|
|
|
type OutPoint struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Raw bytes representing the transaction id. |
|
TxidBytes []byte `protobuf:"bytes,1,opt,name=txid_bytes,json=txidBytes,proto3" json:"txid_bytes,omitempty"` |
|
// Reversed, hex-encoded string representing the transaction id. |
|
TxidStr string `protobuf:"bytes,2,opt,name=txid_str,json=txidStr,proto3" json:"txid_str,omitempty"` |
|
// The index of the output on the transaction. |
|
OutputIndex uint32 `protobuf:"varint,3,opt,name=output_index,json=outputIndex,proto3" json:"output_index,omitempty"` |
|
} |
|
|
|
func (x *OutPoint) Reset() { |
|
*x = OutPoint{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[11] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *OutPoint) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*OutPoint) ProtoMessage() {} |
|
|
|
func (x *OutPoint) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[11] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use OutPoint.ProtoReflect.Descriptor instead. |
|
func (*OutPoint) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{11} |
|
} |
|
|
|
func (x *OutPoint) GetTxidBytes() []byte { |
|
if x != nil { |
|
return x.TxidBytes |
|
} |
|
return nil |
|
} |
|
|
|
func (x *OutPoint) GetTxidStr() string { |
|
if x != nil { |
|
return x.TxidStr |
|
} |
|
return "" |
|
} |
|
|
|
func (x *OutPoint) GetOutputIndex() uint32 { |
|
if x != nil { |
|
return x.OutputIndex |
|
} |
|
return 0 |
|
} |
|
|
|
type LightningAddress struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The identity pubkey of the Lightning node |
|
Pubkey string `protobuf:"bytes,1,opt,name=pubkey,proto3" json:"pubkey,omitempty"` |
|
// The network location of the lightning node, e.g. `69.69.69.69:1337` or |
|
// `localhost:10011` |
|
Host string `protobuf:"bytes,2,opt,name=host,proto3" json:"host,omitempty"` |
|
} |
|
|
|
func (x *LightningAddress) Reset() { |
|
*x = LightningAddress{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[12] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *LightningAddress) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*LightningAddress) ProtoMessage() {} |
|
|
|
func (x *LightningAddress) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[12] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use LightningAddress.ProtoReflect.Descriptor instead. |
|
func (*LightningAddress) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{12} |
|
} |
|
|
|
func (x *LightningAddress) GetPubkey() string { |
|
if x != nil { |
|
return x.Pubkey |
|
} |
|
return "" |
|
} |
|
|
|
func (x *LightningAddress) GetHost() string { |
|
if x != nil { |
|
return x.Host |
|
} |
|
return "" |
|
} |
|
|
|
type EstimateFeeRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The map from addresses to amounts for the transaction. |
|
AddrToAmount map[string]int64 `protobuf:"bytes,1,rep,name=AddrToAmount,proto3" json:"AddrToAmount,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` |
|
// The target number of blocks that this transaction should be confirmed |
|
// by. |
|
TargetConf int32 `protobuf:"varint,2,opt,name=target_conf,json=targetConf,proto3" json:"target_conf,omitempty"` |
|
// The minimum number of confirmations each one of your outputs used for |
|
// the transaction must satisfy. |
|
MinConfs int32 `protobuf:"varint,3,opt,name=min_confs,json=minConfs,proto3" json:"min_confs,omitempty"` |
|
// Whether unconfirmed outputs should be used as inputs for the transaction. |
|
SpendUnconfirmed bool `protobuf:"varint,4,opt,name=spend_unconfirmed,json=spendUnconfirmed,proto3" json:"spend_unconfirmed,omitempty"` |
|
} |
|
|
|
func (x *EstimateFeeRequest) Reset() { |
|
*x = EstimateFeeRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[13] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *EstimateFeeRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*EstimateFeeRequest) ProtoMessage() {} |
|
|
|
func (x *EstimateFeeRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[13] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use EstimateFeeRequest.ProtoReflect.Descriptor instead. |
|
func (*EstimateFeeRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{13} |
|
} |
|
|
|
func (x *EstimateFeeRequest) GetAddrToAmount() map[string]int64 { |
|
if x != nil { |
|
return x.AddrToAmount |
|
} |
|
return nil |
|
} |
|
|
|
func (x *EstimateFeeRequest) GetTargetConf() int32 { |
|
if x != nil { |
|
return x.TargetConf |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *EstimateFeeRequest) GetMinConfs() int32 { |
|
if x != nil { |
|
return x.MinConfs |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *EstimateFeeRequest) GetSpendUnconfirmed() bool { |
|
if x != nil { |
|
return x.SpendUnconfirmed |
|
} |
|
return false |
|
} |
|
|
|
type EstimateFeeResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The total fee in satoshis. |
|
FeeSat int64 `protobuf:"varint,1,opt,name=fee_sat,json=feeSat,proto3" json:"fee_sat,omitempty"` |
|
// Deprecated, use sat_per_vbyte. |
|
// The fee rate in satoshi/vbyte. |
|
// |
|
// Deprecated: Do not use. |
|
FeerateSatPerByte int64 `protobuf:"varint,2,opt,name=feerate_sat_per_byte,json=feerateSatPerByte,proto3" json:"feerate_sat_per_byte,omitempty"` |
|
// The fee rate in satoshi/vbyte. |
|
SatPerVbyte uint64 `protobuf:"varint,3,opt,name=sat_per_vbyte,json=satPerVbyte,proto3" json:"sat_per_vbyte,omitempty"` |
|
} |
|
|
|
func (x *EstimateFeeResponse) Reset() { |
|
*x = EstimateFeeResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[14] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *EstimateFeeResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*EstimateFeeResponse) ProtoMessage() {} |
|
|
|
func (x *EstimateFeeResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[14] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use EstimateFeeResponse.ProtoReflect.Descriptor instead. |
|
func (*EstimateFeeResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{14} |
|
} |
|
|
|
func (x *EstimateFeeResponse) GetFeeSat() int64 { |
|
if x != nil { |
|
return x.FeeSat |
|
} |
|
return 0 |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *EstimateFeeResponse) GetFeerateSatPerByte() int64 { |
|
if x != nil { |
|
return x.FeerateSatPerByte |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *EstimateFeeResponse) GetSatPerVbyte() uint64 { |
|
if x != nil { |
|
return x.SatPerVbyte |
|
} |
|
return 0 |
|
} |
|
|
|
type SendManyRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The map from addresses to amounts |
|
AddrToAmount map[string]int64 `protobuf:"bytes,1,rep,name=AddrToAmount,proto3" json:"AddrToAmount,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` |
|
// The target number of blocks that this transaction should be confirmed |
|
// by. |
|
TargetConf int32 `protobuf:"varint,3,opt,name=target_conf,json=targetConf,proto3" json:"target_conf,omitempty"` |
|
// A manual fee rate set in sat/vbyte that should be used when crafting the |
|
// transaction. |
|
SatPerVbyte uint64 `protobuf:"varint,4,opt,name=sat_per_vbyte,json=satPerVbyte,proto3" json:"sat_per_vbyte,omitempty"` |
|
// Deprecated, use sat_per_vbyte. |
|
// A manual fee rate set in sat/vbyte that should be used when crafting the |
|
// transaction. |
|
// |
|
// Deprecated: Do not use. |
|
SatPerByte int64 `protobuf:"varint,5,opt,name=sat_per_byte,json=satPerByte,proto3" json:"sat_per_byte,omitempty"` |
|
// An optional label for the transaction, limited to 500 characters. |
|
Label string `protobuf:"bytes,6,opt,name=label,proto3" json:"label,omitempty"` |
|
// The minimum number of confirmations each one of your outputs used for |
|
// the transaction must satisfy. |
|
MinConfs int32 `protobuf:"varint,7,opt,name=min_confs,json=minConfs,proto3" json:"min_confs,omitempty"` |
|
// Whether unconfirmed outputs should be used as inputs for the transaction. |
|
SpendUnconfirmed bool `protobuf:"varint,8,opt,name=spend_unconfirmed,json=spendUnconfirmed,proto3" json:"spend_unconfirmed,omitempty"` |
|
} |
|
|
|
func (x *SendManyRequest) Reset() { |
|
*x = SendManyRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[15] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *SendManyRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*SendManyRequest) ProtoMessage() {} |
|
|
|
func (x *SendManyRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[15] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use SendManyRequest.ProtoReflect.Descriptor instead. |
|
func (*SendManyRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{15} |
|
} |
|
|
|
func (x *SendManyRequest) GetAddrToAmount() map[string]int64 { |
|
if x != nil { |
|
return x.AddrToAmount |
|
} |
|
return nil |
|
} |
|
|
|
func (x *SendManyRequest) GetTargetConf() int32 { |
|
if x != nil { |
|
return x.TargetConf |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *SendManyRequest) GetSatPerVbyte() uint64 { |
|
if x != nil { |
|
return x.SatPerVbyte |
|
} |
|
return 0 |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *SendManyRequest) GetSatPerByte() int64 { |
|
if x != nil { |
|
return x.SatPerByte |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *SendManyRequest) GetLabel() string { |
|
if x != nil { |
|
return x.Label |
|
} |
|
return "" |
|
} |
|
|
|
func (x *SendManyRequest) GetMinConfs() int32 { |
|
if x != nil { |
|
return x.MinConfs |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *SendManyRequest) GetSpendUnconfirmed() bool { |
|
if x != nil { |
|
return x.SpendUnconfirmed |
|
} |
|
return false |
|
} |
|
|
|
type SendManyResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The id of the transaction |
|
Txid string `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"` |
|
} |
|
|
|
func (x *SendManyResponse) Reset() { |
|
*x = SendManyResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[16] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *SendManyResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*SendManyResponse) ProtoMessage() {} |
|
|
|
func (x *SendManyResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[16] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use SendManyResponse.ProtoReflect.Descriptor instead. |
|
func (*SendManyResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{16} |
|
} |
|
|
|
func (x *SendManyResponse) GetTxid() string { |
|
if x != nil { |
|
return x.Txid |
|
} |
|
return "" |
|
} |
|
|
|
type SendCoinsRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The address to send coins to |
|
Addr string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"` |
|
// The amount in satoshis to send |
|
Amount int64 `protobuf:"varint,2,opt,name=amount,proto3" json:"amount,omitempty"` |
|
// The target number of blocks that this transaction should be confirmed |
|
// by. |
|
TargetConf int32 `protobuf:"varint,3,opt,name=target_conf,json=targetConf,proto3" json:"target_conf,omitempty"` |
|
// A manual fee rate set in sat/vbyte that should be used when crafting the |
|
// transaction. |
|
SatPerVbyte uint64 `protobuf:"varint,4,opt,name=sat_per_vbyte,json=satPerVbyte,proto3" json:"sat_per_vbyte,omitempty"` |
|
// Deprecated, use sat_per_vbyte. |
|
// A manual fee rate set in sat/vbyte that should be used when crafting the |
|
// transaction. |
|
// |
|
// 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. |
|
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"` |
|
// The minimum number of confirmations each one of your outputs used for |
|
// the transaction must satisfy. |
|
MinConfs int32 `protobuf:"varint,8,opt,name=min_confs,json=minConfs,proto3" json:"min_confs,omitempty"` |
|
// Whether unconfirmed outputs should be used as inputs for the transaction. |
|
SpendUnconfirmed bool `protobuf:"varint,9,opt,name=spend_unconfirmed,json=spendUnconfirmed,proto3" json:"spend_unconfirmed,omitempty"` |
|
} |
|
|
|
func (x *SendCoinsRequest) Reset() { |
|
*x = SendCoinsRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[17] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *SendCoinsRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*SendCoinsRequest) ProtoMessage() {} |
|
|
|
func (x *SendCoinsRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[17] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use SendCoinsRequest.ProtoReflect.Descriptor instead. |
|
func (*SendCoinsRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{17} |
|
} |
|
|
|
func (x *SendCoinsRequest) GetAddr() string { |
|
if x != nil { |
|
return x.Addr |
|
} |
|
return "" |
|
} |
|
|
|
func (x *SendCoinsRequest) GetAmount() int64 { |
|
if x != nil { |
|
return x.Amount |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *SendCoinsRequest) GetTargetConf() int32 { |
|
if x != nil { |
|
return x.TargetConf |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *SendCoinsRequest) GetSatPerVbyte() uint64 { |
|
if x != nil { |
|
return x.SatPerVbyte |
|
} |
|
return 0 |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *SendCoinsRequest) GetSatPerByte() int64 { |
|
if x != nil { |
|
return x.SatPerByte |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *SendCoinsRequest) GetSendAll() bool { |
|
if x != nil { |
|
return x.SendAll |
|
} |
|
return false |
|
} |
|
|
|
func (x *SendCoinsRequest) GetLabel() string { |
|
if x != nil { |
|
return x.Label |
|
} |
|
return "" |
|
} |
|
|
|
func (x *SendCoinsRequest) GetMinConfs() int32 { |
|
if x != nil { |
|
return x.MinConfs |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *SendCoinsRequest) GetSpendUnconfirmed() bool { |
|
if x != nil { |
|
return x.SpendUnconfirmed |
|
} |
|
return false |
|
} |
|
|
|
type SendCoinsResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The transaction ID of the transaction |
|
Txid string `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"` |
|
} |
|
|
|
func (x *SendCoinsResponse) Reset() { |
|
*x = SendCoinsResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[18] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *SendCoinsResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*SendCoinsResponse) ProtoMessage() {} |
|
|
|
func (x *SendCoinsResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[18] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use SendCoinsResponse.ProtoReflect.Descriptor instead. |
|
func (*SendCoinsResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{18} |
|
} |
|
|
|
func (x *SendCoinsResponse) GetTxid() string { |
|
if x != nil { |
|
return x.Txid |
|
} |
|
return "" |
|
} |
|
|
|
type ListUnspentRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The minimum number of confirmations to be included. |
|
MinConfs int32 `protobuf:"varint,1,opt,name=min_confs,json=minConfs,proto3" json:"min_confs,omitempty"` |
|
// The maximum number of confirmations to be included. |
|
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"` |
|
} |
|
|
|
func (x *ListUnspentRequest) Reset() { |
|
*x = ListUnspentRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[19] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ListUnspentRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ListUnspentRequest) ProtoMessage() {} |
|
|
|
func (x *ListUnspentRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[19] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ListUnspentRequest.ProtoReflect.Descriptor instead. |
|
func (*ListUnspentRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{19} |
|
} |
|
|
|
func (x *ListUnspentRequest) GetMinConfs() int32 { |
|
if x != nil { |
|
return x.MinConfs |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ListUnspentRequest) GetMaxConfs() int32 { |
|
if x != nil { |
|
return x.MaxConfs |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ListUnspentRequest) GetAccount() string { |
|
if x != nil { |
|
return x.Account |
|
} |
|
return "" |
|
} |
|
|
|
type ListUnspentResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// A list of utxos |
|
Utxos []*Utxo `protobuf:"bytes,1,rep,name=utxos,proto3" json:"utxos,omitempty"` |
|
} |
|
|
|
func (x *ListUnspentResponse) Reset() { |
|
*x = ListUnspentResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[20] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ListUnspentResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ListUnspentResponse) ProtoMessage() {} |
|
|
|
func (x *ListUnspentResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[20] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ListUnspentResponse.ProtoReflect.Descriptor instead. |
|
func (*ListUnspentResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{20} |
|
} |
|
|
|
func (x *ListUnspentResponse) GetUtxos() []*Utxo { |
|
if x != nil { |
|
return x.Utxos |
|
} |
|
return nil |
|
} |
|
|
|
type NewAddressRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// 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. |
|
Account string `protobuf:"bytes,2,opt,name=account,proto3" json:"account,omitempty"` |
|
} |
|
|
|
func (x *NewAddressRequest) Reset() { |
|
*x = NewAddressRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[21] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *NewAddressRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*NewAddressRequest) ProtoMessage() {} |
|
|
|
func (x *NewAddressRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[21] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use NewAddressRequest.ProtoReflect.Descriptor instead. |
|
func (*NewAddressRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{21} |
|
} |
|
|
|
func (x *NewAddressRequest) GetType() AddressType { |
|
if x != nil { |
|
return x.Type |
|
} |
|
return AddressType_WITNESS_PUBKEY_HASH |
|
} |
|
|
|
func (x *NewAddressRequest) GetAccount() string { |
|
if x != nil { |
|
return x.Account |
|
} |
|
return "" |
|
} |
|
|
|
type NewAddressResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The newly generated wallet address |
|
Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` |
|
} |
|
|
|
func (x *NewAddressResponse) Reset() { |
|
*x = NewAddressResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[22] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *NewAddressResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*NewAddressResponse) ProtoMessage() {} |
|
|
|
func (x *NewAddressResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[22] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use NewAddressResponse.ProtoReflect.Descriptor instead. |
|
func (*NewAddressResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{22} |
|
} |
|
|
|
func (x *NewAddressResponse) GetAddress() string { |
|
if x != nil { |
|
return x.Address |
|
} |
|
return "" |
|
} |
|
|
|
type SignMessageRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// |
|
//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"` |
|
} |
|
|
|
func (x *SignMessageRequest) Reset() { |
|
*x = SignMessageRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[23] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *SignMessageRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*SignMessageRequest) ProtoMessage() {} |
|
|
|
func (x *SignMessageRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[23] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use SignMessageRequest.ProtoReflect.Descriptor instead. |
|
func (*SignMessageRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{23} |
|
} |
|
|
|
func (x *SignMessageRequest) GetMsg() []byte { |
|
if x != nil { |
|
return x.Msg |
|
} |
|
return nil |
|
} |
|
|
|
type SignMessageResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The signature for the given message |
|
Signature string `protobuf:"bytes,1,opt,name=signature,proto3" json:"signature,omitempty"` |
|
} |
|
|
|
func (x *SignMessageResponse) Reset() { |
|
*x = SignMessageResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[24] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *SignMessageResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*SignMessageResponse) ProtoMessage() {} |
|
|
|
func (x *SignMessageResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[24] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use SignMessageResponse.ProtoReflect.Descriptor instead. |
|
func (*SignMessageResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{24} |
|
} |
|
|
|
func (x *SignMessageResponse) GetSignature() string { |
|
if x != nil { |
|
return x.Signature |
|
} |
|
return "" |
|
} |
|
|
|
type VerifyMessageRequest struct { |
|
state protoimpl.MessageState |
|
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. |
|
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"` |
|
} |
|
|
|
func (x *VerifyMessageRequest) Reset() { |
|
*x = VerifyMessageRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[25] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *VerifyMessageRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*VerifyMessageRequest) ProtoMessage() {} |
|
|
|
func (x *VerifyMessageRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[25] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use VerifyMessageRequest.ProtoReflect.Descriptor instead. |
|
func (*VerifyMessageRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{25} |
|
} |
|
|
|
func (x *VerifyMessageRequest) GetMsg() []byte { |
|
if x != nil { |
|
return x.Msg |
|
} |
|
return nil |
|
} |
|
|
|
func (x *VerifyMessageRequest) GetSignature() string { |
|
if x != nil { |
|
return x.Signature |
|
} |
|
return "" |
|
} |
|
|
|
type VerifyMessageResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Whether the signature was valid over the given message |
|
Valid bool `protobuf:"varint,1,opt,name=valid,proto3" json:"valid,omitempty"` |
|
// The pubkey recovered from the signature |
|
Pubkey string `protobuf:"bytes,2,opt,name=pubkey,proto3" json:"pubkey,omitempty"` |
|
} |
|
|
|
func (x *VerifyMessageResponse) Reset() { |
|
*x = VerifyMessageResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[26] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *VerifyMessageResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*VerifyMessageResponse) ProtoMessage() {} |
|
|
|
func (x *VerifyMessageResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[26] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use VerifyMessageResponse.ProtoReflect.Descriptor instead. |
|
func (*VerifyMessageResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{26} |
|
} |
|
|
|
func (x *VerifyMessageResponse) GetValid() bool { |
|
if x != nil { |
|
return x.Valid |
|
} |
|
return false |
|
} |
|
|
|
func (x *VerifyMessageResponse) GetPubkey() string { |
|
if x != nil { |
|
return x.Pubkey |
|
} |
|
return "" |
|
} |
|
|
|
type ConnectPeerRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Lightning address of the peer, in the format `<pubkey>@host` |
|
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. |
|
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. |
|
Timeout uint64 `protobuf:"varint,3,opt,name=timeout,proto3" json:"timeout,omitempty"` |
|
} |
|
|
|
func (x *ConnectPeerRequest) Reset() { |
|
*x = ConnectPeerRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[27] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ConnectPeerRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ConnectPeerRequest) ProtoMessage() {} |
|
|
|
func (x *ConnectPeerRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[27] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ConnectPeerRequest.ProtoReflect.Descriptor instead. |
|
func (*ConnectPeerRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{27} |
|
} |
|
|
|
func (x *ConnectPeerRequest) GetAddr() *LightningAddress { |
|
if x != nil { |
|
return x.Addr |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ConnectPeerRequest) GetPerm() bool { |
|
if x != nil { |
|
return x.Perm |
|
} |
|
return false |
|
} |
|
|
|
func (x *ConnectPeerRequest) GetTimeout() uint64 { |
|
if x != nil { |
|
return x.Timeout |
|
} |
|
return 0 |
|
} |
|
|
|
type ConnectPeerResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *ConnectPeerResponse) Reset() { |
|
*x = ConnectPeerResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[28] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ConnectPeerResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ConnectPeerResponse) ProtoMessage() {} |
|
|
|
func (x *ConnectPeerResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[28] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ConnectPeerResponse.ProtoReflect.Descriptor instead. |
|
func (*ConnectPeerResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{28} |
|
} |
|
|
|
type DisconnectPeerRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The pubkey of the node to disconnect from |
|
PubKey string `protobuf:"bytes,1,opt,name=pub_key,json=pubKey,proto3" json:"pub_key,omitempty"` |
|
} |
|
|
|
func (x *DisconnectPeerRequest) Reset() { |
|
*x = DisconnectPeerRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[29] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *DisconnectPeerRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*DisconnectPeerRequest) ProtoMessage() {} |
|
|
|
func (x *DisconnectPeerRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[29] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use DisconnectPeerRequest.ProtoReflect.Descriptor instead. |
|
func (*DisconnectPeerRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{29} |
|
} |
|
|
|
func (x *DisconnectPeerRequest) GetPubKey() string { |
|
if x != nil { |
|
return x.PubKey |
|
} |
|
return "" |
|
} |
|
|
|
type DisconnectPeerResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *DisconnectPeerResponse) Reset() { |
|
*x = DisconnectPeerResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[30] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *DisconnectPeerResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*DisconnectPeerResponse) ProtoMessage() {} |
|
|
|
func (x *DisconnectPeerResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[30] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use DisconnectPeerResponse.ProtoReflect.Descriptor instead. |
|
func (*DisconnectPeerResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{30} |
|
} |
|
|
|
type HTLC struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
Incoming bool `protobuf:"varint,1,opt,name=incoming,proto3" json:"incoming,omitempty"` |
|
Amount int64 `protobuf:"varint,2,opt,name=amount,proto3" json:"amount,omitempty"` |
|
HashLock []byte `protobuf:"bytes,3,opt,name=hash_lock,json=hashLock,proto3" json:"hash_lock,omitempty"` |
|
ExpirationHeight uint32 `protobuf:"varint,4,opt,name=expiration_height,json=expirationHeight,proto3" json:"expiration_height,omitempty"` |
|
// Index identifying the htlc on the channel. |
|
HtlcIndex uint64 `protobuf:"varint,5,opt,name=htlc_index,json=htlcIndex,proto3" json:"htlc_index,omitempty"` |
|
// If this HTLC is involved in a forwarding operation, this field indicates |
|
// the forwarding channel. For an outgoing htlc, it is the incoming channel. |
|
// For an incoming htlc, it is the outgoing channel. When the htlc |
|
// originates from this node or this node is the final destination, |
|
// forwarding_channel will be zero. The forwarding channel will also be zero |
|
// for htlcs that need to be forwarded but don't have a forwarding decision |
|
// persisted yet. |
|
ForwardingChannel uint64 `protobuf:"varint,6,opt,name=forwarding_channel,json=forwardingChannel,proto3" json:"forwarding_channel,omitempty"` |
|
// Index identifying the htlc on the forwarding channel. |
|
ForwardingHtlcIndex uint64 `protobuf:"varint,7,opt,name=forwarding_htlc_index,json=forwardingHtlcIndex,proto3" json:"forwarding_htlc_index,omitempty"` |
|
} |
|
|
|
func (x *HTLC) Reset() { |
|
*x = HTLC{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[31] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *HTLC) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*HTLC) ProtoMessage() {} |
|
|
|
func (x *HTLC) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[31] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use HTLC.ProtoReflect.Descriptor instead. |
|
func (*HTLC) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{31} |
|
} |
|
|
|
func (x *HTLC) GetIncoming() bool { |
|
if x != nil { |
|
return x.Incoming |
|
} |
|
return false |
|
} |
|
|
|
func (x *HTLC) GetAmount() int64 { |
|
if x != nil { |
|
return x.Amount |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *HTLC) GetHashLock() []byte { |
|
if x != nil { |
|
return x.HashLock |
|
} |
|
return nil |
|
} |
|
|
|
func (x *HTLC) GetExpirationHeight() uint32 { |
|
if x != nil { |
|
return x.ExpirationHeight |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *HTLC) GetHtlcIndex() uint64 { |
|
if x != nil { |
|
return x.HtlcIndex |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *HTLC) GetForwardingChannel() uint64 { |
|
if x != nil { |
|
return x.ForwardingChannel |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *HTLC) GetForwardingHtlcIndex() uint64 { |
|
if x != nil { |
|
return x.ForwardingHtlcIndex |
|
} |
|
return 0 |
|
} |
|
|
|
type ChannelConstraints struct { |
|
state protoimpl.MessageState |
|
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. |
|
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"` |
|
// The dust limit (in satoshis) of the initiator's commitment tx. |
|
DustLimitSat uint64 `protobuf:"varint,3,opt,name=dust_limit_sat,json=dustLimitSat,proto3" json:"dust_limit_sat,omitempty"` |
|
// The maximum amount of coins in millisatoshis that can be pending in this |
|
// channel. |
|
MaxPendingAmtMsat uint64 `protobuf:"varint,4,opt,name=max_pending_amt_msat,json=maxPendingAmtMsat,proto3" json:"max_pending_amt_msat,omitempty"` |
|
// The smallest HTLC in millisatoshis that the initiator will accept. |
|
MinHtlcMsat uint64 `protobuf:"varint,5,opt,name=min_htlc_msat,json=minHtlcMsat,proto3" json:"min_htlc_msat,omitempty"` |
|
// The total number of incoming HTLC's that the initiator will accept. |
|
MaxAcceptedHtlcs uint32 `protobuf:"varint,6,opt,name=max_accepted_htlcs,json=maxAcceptedHtlcs,proto3" json:"max_accepted_htlcs,omitempty"` |
|
} |
|
|
|
func (x *ChannelConstraints) Reset() { |
|
*x = ChannelConstraints{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[32] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelConstraints) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelConstraints) ProtoMessage() {} |
|
|
|
func (x *ChannelConstraints) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[32] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelConstraints.ProtoReflect.Descriptor instead. |
|
func (*ChannelConstraints) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{32} |
|
} |
|
|
|
func (x *ChannelConstraints) GetCsvDelay() uint32 { |
|
if x != nil { |
|
return x.CsvDelay |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelConstraints) GetChanReserveSat() uint64 { |
|
if x != nil { |
|
return x.ChanReserveSat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelConstraints) GetDustLimitSat() uint64 { |
|
if x != nil { |
|
return x.DustLimitSat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelConstraints) GetMaxPendingAmtMsat() uint64 { |
|
if x != nil { |
|
return x.MaxPendingAmtMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelConstraints) GetMinHtlcMsat() uint64 { |
|
if x != nil { |
|
return x.MinHtlcMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelConstraints) GetMaxAcceptedHtlcs() uint32 { |
|
if x != nil { |
|
return x.MaxAcceptedHtlcs |
|
} |
|
return 0 |
|
} |
|
|
|
type Channel struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// 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,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. |
|
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. |
|
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"` |
|
// This node's current balance in this channel |
|
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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
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: Do not use. |
|
CsvDelay uint32 `protobuf:"varint,16,opt,name=csv_delay,json=csvDelay,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 created the channel. |
|
Initiator bool `protobuf:"varint,18,opt,name=initiator,proto3" json:"initiator,omitempty"` |
|
// A set of flags showing the current state of the channel. |
|
ChanStatusFlags string `protobuf:"bytes,19,opt,name=chan_status_flags,json=chanStatusFlags,proto3" json:"chan_status_flags,omitempty"` |
|
// Deprecated. The minimum satoshis this node is required to reserve in its |
|
// balance. |
|
// |
|
// 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: Do not use. |
|
RemoteChanReserveSat int64 `protobuf:"varint,21,opt,name=remote_chan_reserve_sat,json=remoteChanReserveSat,proto3" json:"remote_chan_reserve_sat,omitempty"` |
|
// Deprecated. Use commitment_type. |
|
// |
|
// Deprecated: Do not use. |
|
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]. |
|
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]. |
|
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. |
|
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. |
|
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. |
|
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"` |
|
} |
|
|
|
func (x *Channel) Reset() { |
|
*x = Channel{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[33] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *Channel) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*Channel) ProtoMessage() {} |
|
|
|
func (x *Channel) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[33] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use Channel.ProtoReflect.Descriptor instead. |
|
func (*Channel) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{33} |
|
} |
|
|
|
func (x *Channel) GetActive() bool { |
|
if x != nil { |
|
return x.Active |
|
} |
|
return false |
|
} |
|
|
|
func (x *Channel) GetRemotePubkey() string { |
|
if x != nil { |
|
return x.RemotePubkey |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Channel) GetChannelPoint() string { |
|
if x != nil { |
|
return x.ChannelPoint |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Channel) GetChanId() uint64 { |
|
if x != nil { |
|
return x.ChanId |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Channel) GetCapacity() int64 { |
|
if x != nil { |
|
return x.Capacity |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Channel) GetLocalBalance() int64 { |
|
if x != nil { |
|
return x.LocalBalance |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Channel) GetRemoteBalance() int64 { |
|
if x != nil { |
|
return x.RemoteBalance |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Channel) GetCommitFee() int64 { |
|
if x != nil { |
|
return x.CommitFee |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Channel) GetCommitWeight() int64 { |
|
if x != nil { |
|
return x.CommitWeight |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Channel) GetFeePerKw() int64 { |
|
if x != nil { |
|
return x.FeePerKw |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Channel) GetUnsettledBalance() int64 { |
|
if x != nil { |
|
return x.UnsettledBalance |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Channel) GetTotalSatoshisSent() int64 { |
|
if x != nil { |
|
return x.TotalSatoshisSent |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Channel) GetTotalSatoshisReceived() int64 { |
|
if x != nil { |
|
return x.TotalSatoshisReceived |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Channel) GetNumUpdates() uint64 { |
|
if x != nil { |
|
return x.NumUpdates |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Channel) GetPendingHtlcs() []*HTLC { |
|
if x != nil { |
|
return x.PendingHtlcs |
|
} |
|
return nil |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *Channel) GetCsvDelay() uint32 { |
|
if x != nil { |
|
return x.CsvDelay |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Channel) GetPrivate() bool { |
|
if x != nil { |
|
return x.Private |
|
} |
|
return false |
|
} |
|
|
|
func (x *Channel) GetInitiator() bool { |
|
if x != nil { |
|
return x.Initiator |
|
} |
|
return false |
|
} |
|
|
|
func (x *Channel) GetChanStatusFlags() string { |
|
if x != nil { |
|
return x.ChanStatusFlags |
|
} |
|
return "" |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *Channel) GetLocalChanReserveSat() int64 { |
|
if x != nil { |
|
return x.LocalChanReserveSat |
|
} |
|
return 0 |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *Channel) GetRemoteChanReserveSat() int64 { |
|
if x != nil { |
|
return x.RemoteChanReserveSat |
|
} |
|
return 0 |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *Channel) GetStaticRemoteKey() bool { |
|
if x != nil { |
|
return x.StaticRemoteKey |
|
} |
|
return false |
|
} |
|
|
|
func (x *Channel) GetCommitmentType() CommitmentType { |
|
if x != nil { |
|
return x.CommitmentType |
|
} |
|
return CommitmentType_LEGACY |
|
} |
|
|
|
func (x *Channel) GetLifetime() int64 { |
|
if x != nil { |
|
return x.Lifetime |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Channel) GetUptime() int64 { |
|
if x != nil { |
|
return x.Uptime |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Channel) GetCloseAddress() string { |
|
if x != nil { |
|
return x.CloseAddress |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Channel) GetPushAmountSat() uint64 { |
|
if x != nil { |
|
return x.PushAmountSat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Channel) GetThawHeight() uint32 { |
|
if x != nil { |
|
return x.ThawHeight |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Channel) GetLocalConstraints() *ChannelConstraints { |
|
if x != nil { |
|
return x.LocalConstraints |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Channel) GetRemoteConstraints() *ChannelConstraints { |
|
if x != nil { |
|
return x.RemoteConstraints |
|
} |
|
return nil |
|
} |
|
|
|
type ListChannelsRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
ActiveOnly bool `protobuf:"varint,1,opt,name=active_only,json=activeOnly,proto3" json:"active_only,omitempty"` |
|
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. |
|
Peer []byte `protobuf:"bytes,5,opt,name=peer,proto3" json:"peer,omitempty"` |
|
} |
|
|
|
func (x *ListChannelsRequest) Reset() { |
|
*x = ListChannelsRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[34] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ListChannelsRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ListChannelsRequest) ProtoMessage() {} |
|
|
|
func (x *ListChannelsRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[34] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ListChannelsRequest.ProtoReflect.Descriptor instead. |
|
func (*ListChannelsRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{34} |
|
} |
|
|
|
func (x *ListChannelsRequest) GetActiveOnly() bool { |
|
if x != nil { |
|
return x.ActiveOnly |
|
} |
|
return false |
|
} |
|
|
|
func (x *ListChannelsRequest) GetInactiveOnly() bool { |
|
if x != nil { |
|
return x.InactiveOnly |
|
} |
|
return false |
|
} |
|
|
|
func (x *ListChannelsRequest) GetPublicOnly() bool { |
|
if x != nil { |
|
return x.PublicOnly |
|
} |
|
return false |
|
} |
|
|
|
func (x *ListChannelsRequest) GetPrivateOnly() bool { |
|
if x != nil { |
|
return x.PrivateOnly |
|
} |
|
return false |
|
} |
|
|
|
func (x *ListChannelsRequest) GetPeer() []byte { |
|
if x != nil { |
|
return x.Peer |
|
} |
|
return nil |
|
} |
|
|
|
type ListChannelsResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The list of active channels |
|
Channels []*Channel `protobuf:"bytes,11,rep,name=channels,proto3" json:"channels,omitempty"` |
|
} |
|
|
|
func (x *ListChannelsResponse) Reset() { |
|
*x = ListChannelsResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[35] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ListChannelsResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ListChannelsResponse) ProtoMessage() {} |
|
|
|
func (x *ListChannelsResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[35] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ListChannelsResponse.ProtoReflect.Descriptor instead. |
|
func (*ListChannelsResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{35} |
|
} |
|
|
|
func (x *ListChannelsResponse) GetChannels() []*Channel { |
|
if x != nil { |
|
return x.Channels |
|
} |
|
return nil |
|
} |
|
|
|
type ChannelCloseSummary struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// 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. |
|
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"` |
|
// The txid of the transaction which ultimately closed this channel. |
|
ClosingTxHash string `protobuf:"bytes,4,opt,name=closing_tx_hash,json=closingTxHash,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,json=remotePubkey,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,json=closeHeight,proto3" json:"close_height,omitempty"` |
|
// Settled balance at the time of channel closure |
|
SettledBalance int64 `protobuf:"varint,8,opt,name=settled_balance,json=settledBalance,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,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. |
|
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. |
|
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"` |
|
} |
|
|
|
func (x *ChannelCloseSummary) Reset() { |
|
*x = ChannelCloseSummary{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[36] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelCloseSummary) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelCloseSummary) ProtoMessage() {} |
|
|
|
func (x *ChannelCloseSummary) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[36] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelCloseSummary.ProtoReflect.Descriptor instead. |
|
func (*ChannelCloseSummary) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{36} |
|
} |
|
|
|
func (x *ChannelCloseSummary) GetChannelPoint() string { |
|
if x != nil { |
|
return x.ChannelPoint |
|
} |
|
return "" |
|
} |
|
|
|
func (x *ChannelCloseSummary) GetChanId() uint64 { |
|
if x != nil { |
|
return x.ChanId |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelCloseSummary) GetChainHash() string { |
|
if x != nil { |
|
return x.ChainHash |
|
} |
|
return "" |
|
} |
|
|
|
func (x *ChannelCloseSummary) GetClosingTxHash() string { |
|
if x != nil { |
|
return x.ClosingTxHash |
|
} |
|
return "" |
|
} |
|
|
|
func (x *ChannelCloseSummary) GetRemotePubkey() string { |
|
if x != nil { |
|
return x.RemotePubkey |
|
} |
|
return "" |
|
} |
|
|
|
func (x *ChannelCloseSummary) GetCapacity() int64 { |
|
if x != nil { |
|
return x.Capacity |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelCloseSummary) GetCloseHeight() uint32 { |
|
if x != nil { |
|
return x.CloseHeight |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelCloseSummary) GetSettledBalance() int64 { |
|
if x != nil { |
|
return x.SettledBalance |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelCloseSummary) GetTimeLockedBalance() int64 { |
|
if x != nil { |
|
return x.TimeLockedBalance |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelCloseSummary) GetCloseType() ChannelCloseSummary_ClosureType { |
|
if x != nil { |
|
return x.CloseType |
|
} |
|
return ChannelCloseSummary_COOPERATIVE_CLOSE |
|
} |
|
|
|
func (x *ChannelCloseSummary) GetOpenInitiator() Initiator { |
|
if x != nil { |
|
return x.OpenInitiator |
|
} |
|
return Initiator_INITIATOR_UNKNOWN |
|
} |
|
|
|
func (x *ChannelCloseSummary) GetCloseInitiator() Initiator { |
|
if x != nil { |
|
return x.CloseInitiator |
|
} |
|
return Initiator_INITIATOR_UNKNOWN |
|
} |
|
|
|
func (x *ChannelCloseSummary) GetResolutions() []*Resolution { |
|
if x != nil { |
|
return x.Resolutions |
|
} |
|
return nil |
|
} |
|
|
|
type Resolution struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The type of output we are resolving. |
|
ResolutionType ResolutionType `protobuf:"varint,1,opt,name=resolution_type,json=resolutionType,proto3,enum=lnrpc.ResolutionType" json:"resolution_type,omitempty"` |
|
// The outcome of our on chain action that resolved the outpoint. |
|
Outcome ResolutionOutcome `protobuf:"varint,2,opt,name=outcome,proto3,enum=lnrpc.ResolutionOutcome" json:"outcome,omitempty"` |
|
// The outpoint that was spent by the resolution. |
|
Outpoint *OutPoint `protobuf:"bytes,3,opt,name=outpoint,proto3" json:"outpoint,omitempty"` |
|
// The amount that was claimed by the resolution. |
|
AmountSat uint64 `protobuf:"varint,4,opt,name=amount_sat,json=amountSat,proto3" json:"amount_sat,omitempty"` |
|
// The hex-encoded transaction ID of the sweep transaction that spent the |
|
// output. |
|
SweepTxid string `protobuf:"bytes,5,opt,name=sweep_txid,json=sweepTxid,proto3" json:"sweep_txid,omitempty"` |
|
} |
|
|
|
func (x *Resolution) Reset() { |
|
*x = Resolution{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[37] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *Resolution) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*Resolution) ProtoMessage() {} |
|
|
|
func (x *Resolution) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[37] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use Resolution.ProtoReflect.Descriptor instead. |
|
func (*Resolution) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{37} |
|
} |
|
|
|
func (x *Resolution) GetResolutionType() ResolutionType { |
|
if x != nil { |
|
return x.ResolutionType |
|
} |
|
return ResolutionType_TYPE_UNKNOWN |
|
} |
|
|
|
func (x *Resolution) GetOutcome() ResolutionOutcome { |
|
if x != nil { |
|
return x.Outcome |
|
} |
|
return ResolutionOutcome_OUTCOME_UNKNOWN |
|
} |
|
|
|
func (x *Resolution) GetOutpoint() *OutPoint { |
|
if x != nil { |
|
return x.Outpoint |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Resolution) GetAmountSat() uint64 { |
|
if x != nil { |
|
return x.AmountSat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Resolution) GetSweepTxid() string { |
|
if x != nil { |
|
return x.SweepTxid |
|
} |
|
return "" |
|
} |
|
|
|
type ClosedChannelsRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
Cooperative bool `protobuf:"varint,1,opt,name=cooperative,proto3" json:"cooperative,omitempty"` |
|
LocalForce bool `protobuf:"varint,2,opt,name=local_force,json=localForce,proto3" json:"local_force,omitempty"` |
|
RemoteForce bool `protobuf:"varint,3,opt,name=remote_force,json=remoteForce,proto3" json:"remote_force,omitempty"` |
|
Breach bool `protobuf:"varint,4,opt,name=breach,proto3" json:"breach,omitempty"` |
|
FundingCanceled bool `protobuf:"varint,5,opt,name=funding_canceled,json=fundingCanceled,proto3" json:"funding_canceled,omitempty"` |
|
Abandoned bool `protobuf:"varint,6,opt,name=abandoned,proto3" json:"abandoned,omitempty"` |
|
} |
|
|
|
func (x *ClosedChannelsRequest) Reset() { |
|
*x = ClosedChannelsRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[38] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ClosedChannelsRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ClosedChannelsRequest) ProtoMessage() {} |
|
|
|
func (x *ClosedChannelsRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[38] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ClosedChannelsRequest.ProtoReflect.Descriptor instead. |
|
func (*ClosedChannelsRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{38} |
|
} |
|
|
|
func (x *ClosedChannelsRequest) GetCooperative() bool { |
|
if x != nil { |
|
return x.Cooperative |
|
} |
|
return false |
|
} |
|
|
|
func (x *ClosedChannelsRequest) GetLocalForce() bool { |
|
if x != nil { |
|
return x.LocalForce |
|
} |
|
return false |
|
} |
|
|
|
func (x *ClosedChannelsRequest) GetRemoteForce() bool { |
|
if x != nil { |
|
return x.RemoteForce |
|
} |
|
return false |
|
} |
|
|
|
func (x *ClosedChannelsRequest) GetBreach() bool { |
|
if x != nil { |
|
return x.Breach |
|
} |
|
return false |
|
} |
|
|
|
func (x *ClosedChannelsRequest) GetFundingCanceled() bool { |
|
if x != nil { |
|
return x.FundingCanceled |
|
} |
|
return false |
|
} |
|
|
|
func (x *ClosedChannelsRequest) GetAbandoned() bool { |
|
if x != nil { |
|
return x.Abandoned |
|
} |
|
return false |
|
} |
|
|
|
type ClosedChannelsResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
Channels []*ChannelCloseSummary `protobuf:"bytes,1,rep,name=channels,proto3" json:"channels,omitempty"` |
|
} |
|
|
|
func (x *ClosedChannelsResponse) Reset() { |
|
*x = ClosedChannelsResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[39] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ClosedChannelsResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ClosedChannelsResponse) ProtoMessage() {} |
|
|
|
func (x *ClosedChannelsResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[39] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ClosedChannelsResponse.ProtoReflect.Descriptor instead. |
|
func (*ClosedChannelsResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{39} |
|
} |
|
|
|
func (x *ClosedChannelsResponse) GetChannels() []*ChannelCloseSummary { |
|
if x != nil { |
|
return x.Channels |
|
} |
|
return nil |
|
} |
|
|
|
type Peer struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The identity pubkey of the peer |
|
PubKey string `protobuf:"bytes,1,opt,name=pub_key,json=pubKey,proto3" json:"pub_key,omitempty"` |
|
// Network address of the peer; eg `127.0.0.1:10011` |
|
Address string `protobuf:"bytes,3,opt,name=address,proto3" json:"address,omitempty"` |
|
// Bytes of data transmitted to this peer |
|
BytesSent uint64 `protobuf:"varint,4,opt,name=bytes_sent,json=bytesSent,proto3" json:"bytes_sent,omitempty"` |
|
// Bytes of data transmitted from this peer |
|
BytesRecv uint64 `protobuf:"varint,5,opt,name=bytes_recv,json=bytesRecv,proto3" json:"bytes_recv,omitempty"` |
|
// Satoshis sent to this peer |
|
SatSent int64 `protobuf:"varint,6,opt,name=sat_sent,json=satSent,proto3" json:"sat_sent,omitempty"` |
|
// Satoshis received from this peer |
|
SatRecv int64 `protobuf:"varint,7,opt,name=sat_recv,json=satRecv,proto3" json:"sat_recv,omitempty"` |
|
// A channel is inbound if the counterparty initiated the channel |
|
Inbound bool `protobuf:"varint,8,opt,name=inbound,proto3" json:"inbound,omitempty"` |
|
// Ping time to this peer |
|
PingTime int64 `protobuf:"varint,9,opt,name=ping_time,json=pingTime,proto3" json:"ping_time,omitempty"` |
|
// The type of sync we are currently performing with this peer. |
|
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. |
|
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. |
|
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. |
|
LastFlapNs int64 `protobuf:"varint,14,opt,name=last_flap_ns,json=lastFlapNs,proto3" json:"last_flap_ns,omitempty"` |
|
} |
|
|
|
func (x *Peer) Reset() { |
|
*x = Peer{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[40] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *Peer) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*Peer) ProtoMessage() {} |
|
|
|
func (x *Peer) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[40] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use Peer.ProtoReflect.Descriptor instead. |
|
func (*Peer) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{40} |
|
} |
|
|
|
func (x *Peer) GetPubKey() string { |
|
if x != nil { |
|
return x.PubKey |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Peer) GetAddress() string { |
|
if x != nil { |
|
return x.Address |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Peer) GetBytesSent() uint64 { |
|
if x != nil { |
|
return x.BytesSent |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Peer) GetBytesRecv() uint64 { |
|
if x != nil { |
|
return x.BytesRecv |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Peer) GetSatSent() int64 { |
|
if x != nil { |
|
return x.SatSent |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Peer) GetSatRecv() int64 { |
|
if x != nil { |
|
return x.SatRecv |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Peer) GetInbound() bool { |
|
if x != nil { |
|
return x.Inbound |
|
} |
|
return false |
|
} |
|
|
|
func (x *Peer) GetPingTime() int64 { |
|
if x != nil { |
|
return x.PingTime |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Peer) GetSyncType() Peer_SyncType { |
|
if x != nil { |
|
return x.SyncType |
|
} |
|
return Peer_UNKNOWN_SYNC |
|
} |
|
|
|
func (x *Peer) GetFeatures() map[uint32]*Feature { |
|
if x != nil { |
|
return x.Features |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Peer) GetErrors() []*TimestampedError { |
|
if x != nil { |
|
return x.Errors |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Peer) GetFlapCount() int32 { |
|
if x != nil { |
|
return x.FlapCount |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Peer) GetLastFlapNs() int64 { |
|
if x != nil { |
|
return x.LastFlapNs |
|
} |
|
return 0 |
|
} |
|
|
|
type TimestampedError struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The unix timestamp in seconds when the error occurred. |
|
Timestamp uint64 `protobuf:"varint,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"` |
|
// The string representation of the error sent by our peer. |
|
Error string `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"` |
|
} |
|
|
|
func (x *TimestampedError) Reset() { |
|
*x = TimestampedError{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[41] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *TimestampedError) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*TimestampedError) ProtoMessage() {} |
|
|
|
func (x *TimestampedError) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[41] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use TimestampedError.ProtoReflect.Descriptor instead. |
|
func (*TimestampedError) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{41} |
|
} |
|
|
|
func (x *TimestampedError) GetTimestamp() uint64 { |
|
if x != nil { |
|
return x.Timestamp |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *TimestampedError) GetError() string { |
|
if x != nil { |
|
return x.Error |
|
} |
|
return "" |
|
} |
|
|
|
type ListPeersRequest struct { |
|
state protoimpl.MessageState |
|
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. |
|
LatestError bool `protobuf:"varint,1,opt,name=latest_error,json=latestError,proto3" json:"latest_error,omitempty"` |
|
} |
|
|
|
func (x *ListPeersRequest) Reset() { |
|
*x = ListPeersRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[42] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ListPeersRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ListPeersRequest) ProtoMessage() {} |
|
|
|
func (x *ListPeersRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[42] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ListPeersRequest.ProtoReflect.Descriptor instead. |
|
func (*ListPeersRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{42} |
|
} |
|
|
|
func (x *ListPeersRequest) GetLatestError() bool { |
|
if x != nil { |
|
return x.LatestError |
|
} |
|
return false |
|
} |
|
|
|
type ListPeersResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The list of currently connected peers |
|
Peers []*Peer `protobuf:"bytes,1,rep,name=peers,proto3" json:"peers,omitempty"` |
|
} |
|
|
|
func (x *ListPeersResponse) Reset() { |
|
*x = ListPeersResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[43] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ListPeersResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ListPeersResponse) ProtoMessage() {} |
|
|
|
func (x *ListPeersResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[43] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ListPeersResponse.ProtoReflect.Descriptor instead. |
|
func (*ListPeersResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{43} |
|
} |
|
|
|
func (x *ListPeersResponse) GetPeers() []*Peer { |
|
if x != nil { |
|
return x.Peers |
|
} |
|
return nil |
|
} |
|
|
|
type PeerEventSubscription struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *PeerEventSubscription) Reset() { |
|
*x = PeerEventSubscription{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[44] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *PeerEventSubscription) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*PeerEventSubscription) ProtoMessage() {} |
|
|
|
func (x *PeerEventSubscription) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[44] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use PeerEventSubscription.ProtoReflect.Descriptor instead. |
|
func (*PeerEventSubscription) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{44} |
|
} |
|
|
|
type PeerEvent struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The identity pubkey of the peer. |
|
PubKey string `protobuf:"bytes,1,opt,name=pub_key,json=pubKey,proto3" json:"pub_key,omitempty"` |
|
Type PeerEvent_EventType `protobuf:"varint,2,opt,name=type,proto3,enum=lnrpc.PeerEvent_EventType" json:"type,omitempty"` |
|
} |
|
|
|
func (x *PeerEvent) Reset() { |
|
*x = PeerEvent{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[45] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *PeerEvent) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*PeerEvent) ProtoMessage() {} |
|
|
|
func (x *PeerEvent) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[45] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use PeerEvent.ProtoReflect.Descriptor instead. |
|
func (*PeerEvent) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{45} |
|
} |
|
|
|
func (x *PeerEvent) GetPubKey() string { |
|
if x != nil { |
|
return x.PubKey |
|
} |
|
return "" |
|
} |
|
|
|
func (x *PeerEvent) GetType() PeerEvent_EventType { |
|
if x != nil { |
|
return x.Type |
|
} |
|
return PeerEvent_PEER_ONLINE |
|
} |
|
|
|
type GetInfoRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *GetInfoRequest) Reset() { |
|
*x = GetInfoRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[46] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *GetInfoRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*GetInfoRequest) ProtoMessage() {} |
|
|
|
func (x *GetInfoRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[46] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use GetInfoRequest.ProtoReflect.Descriptor instead. |
|
func (*GetInfoRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{46} |
|
} |
|
|
|
type GetInfoResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The version of the LND software that the node is running. |
|
Version string `protobuf:"bytes,14,opt,name=version,proto3" json:"version,omitempty"` |
|
// The SHA1 commit hash that the daemon is compiled with. |
|
CommitHash string `protobuf:"bytes,20,opt,name=commit_hash,json=commitHash,proto3" json:"commit_hash,omitempty"` |
|
// The identity pubkey of the current node. |
|
IdentityPubkey string `protobuf:"bytes,1,opt,name=identity_pubkey,json=identityPubkey,proto3" json:"identity_pubkey,omitempty"` |
|
// If applicable, the alias of the current node, e.g. "bob" |
|
Alias string `protobuf:"bytes,2,opt,name=alias,proto3" json:"alias,omitempty"` |
|
// The color of the current node in hex code format |
|
Color string `protobuf:"bytes,17,opt,name=color,proto3" json:"color,omitempty"` |
|
// Number of pending channels |
|
NumPendingChannels uint32 `protobuf:"varint,3,opt,name=num_pending_channels,json=numPendingChannels,proto3" json:"num_pending_channels,omitempty"` |
|
// Number of active channels |
|
NumActiveChannels uint32 `protobuf:"varint,4,opt,name=num_active_channels,json=numActiveChannels,proto3" json:"num_active_channels,omitempty"` |
|
// Number of inactive channels |
|
NumInactiveChannels uint32 `protobuf:"varint,15,opt,name=num_inactive_channels,json=numInactiveChannels,proto3" json:"num_inactive_channels,omitempty"` |
|
// Number of peers |
|
NumPeers uint32 `protobuf:"varint,5,opt,name=num_peers,json=numPeers,proto3" json:"num_peers,omitempty"` |
|
// The node's current view of the height of the best block |
|
BlockHeight uint32 `protobuf:"varint,6,opt,name=block_height,json=blockHeight,proto3" json:"block_height,omitempty"` |
|
// The node's current view of the hash of the best block |
|
BlockHash string `protobuf:"bytes,8,opt,name=block_hash,json=blockHash,proto3" json:"block_hash,omitempty"` |
|
// Timestamp of the block best known to the wallet |
|
BestHeaderTimestamp int64 `protobuf:"varint,13,opt,name=best_header_timestamp,json=bestHeaderTimestamp,proto3" json:"best_header_timestamp,omitempty"` |
|
// Whether the wallet's view is synced to the main chain |
|
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 |
|
// |
|
// Deprecated: Do not use. |
|
Testnet bool `protobuf:"varint,10,opt,name=testnet,proto3" json:"testnet,omitempty"` |
|
// A list of active chains the node is connected to |
|
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 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"` |
|
} |
|
|
|
func (x *GetInfoResponse) Reset() { |
|
*x = GetInfoResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[47] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *GetInfoResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*GetInfoResponse) ProtoMessage() {} |
|
|
|
func (x *GetInfoResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[47] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use GetInfoResponse.ProtoReflect.Descriptor instead. |
|
func (*GetInfoResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{47} |
|
} |
|
|
|
func (x *GetInfoResponse) GetVersion() string { |
|
if x != nil { |
|
return x.Version |
|
} |
|
return "" |
|
} |
|
|
|
func (x *GetInfoResponse) GetCommitHash() string { |
|
if x != nil { |
|
return x.CommitHash |
|
} |
|
return "" |
|
} |
|
|
|
func (x *GetInfoResponse) GetIdentityPubkey() string { |
|
if x != nil { |
|
return x.IdentityPubkey |
|
} |
|
return "" |
|
} |
|
|
|
func (x *GetInfoResponse) GetAlias() string { |
|
if x != nil { |
|
return x.Alias |
|
} |
|
return "" |
|
} |
|
|
|
func (x *GetInfoResponse) GetColor() string { |
|
if x != nil { |
|
return x.Color |
|
} |
|
return "" |
|
} |
|
|
|
func (x *GetInfoResponse) GetNumPendingChannels() uint32 { |
|
if x != nil { |
|
return x.NumPendingChannels |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *GetInfoResponse) GetNumActiveChannels() uint32 { |
|
if x != nil { |
|
return x.NumActiveChannels |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *GetInfoResponse) GetNumInactiveChannels() uint32 { |
|
if x != nil { |
|
return x.NumInactiveChannels |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *GetInfoResponse) GetNumPeers() uint32 { |
|
if x != nil { |
|
return x.NumPeers |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *GetInfoResponse) GetBlockHeight() uint32 { |
|
if x != nil { |
|
return x.BlockHeight |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *GetInfoResponse) GetBlockHash() string { |
|
if x != nil { |
|
return x.BlockHash |
|
} |
|
return "" |
|
} |
|
|
|
func (x *GetInfoResponse) GetBestHeaderTimestamp() int64 { |
|
if x != nil { |
|
return x.BestHeaderTimestamp |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *GetInfoResponse) GetSyncedToChain() bool { |
|
if x != nil { |
|
return x.SyncedToChain |
|
} |
|
return false |
|
} |
|
|
|
func (x *GetInfoResponse) GetSyncedToGraph() bool { |
|
if x != nil { |
|
return x.SyncedToGraph |
|
} |
|
return false |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *GetInfoResponse) GetTestnet() bool { |
|
if x != nil { |
|
return x.Testnet |
|
} |
|
return false |
|
} |
|
|
|
func (x *GetInfoResponse) GetChains() []*Chain { |
|
if x != nil { |
|
return x.Chains |
|
} |
|
return nil |
|
} |
|
|
|
func (x *GetInfoResponse) GetUris() []string { |
|
if x != nil { |
|
return x.Uris |
|
} |
|
return nil |
|
} |
|
|
|
func (x *GetInfoResponse) GetFeatures() map[uint32]*Feature { |
|
if x != nil { |
|
return x.Features |
|
} |
|
return nil |
|
} |
|
|
|
type GetRecoveryInfoRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *GetRecoveryInfoRequest) Reset() { |
|
*x = GetRecoveryInfoRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[48] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *GetRecoveryInfoRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*GetRecoveryInfoRequest) ProtoMessage() {} |
|
|
|
func (x *GetRecoveryInfoRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[48] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use GetRecoveryInfoRequest.ProtoReflect.Descriptor instead. |
|
func (*GetRecoveryInfoRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{48} |
|
} |
|
|
|
type GetRecoveryInfoResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Whether the wallet is in recovery mode |
|
RecoveryMode bool `protobuf:"varint,1,opt,name=recovery_mode,json=recoveryMode,proto3" json:"recovery_mode,omitempty"` |
|
// Whether the wallet recovery progress is finished |
|
RecoveryFinished bool `protobuf:"varint,2,opt,name=recovery_finished,json=recoveryFinished,proto3" json:"recovery_finished,omitempty"` |
|
// The recovery progress, ranging from 0 to 1. |
|
Progress float64 `protobuf:"fixed64,3,opt,name=progress,proto3" json:"progress,omitempty"` |
|
} |
|
|
|
func (x *GetRecoveryInfoResponse) Reset() { |
|
*x = GetRecoveryInfoResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[49] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *GetRecoveryInfoResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*GetRecoveryInfoResponse) ProtoMessage() {} |
|
|
|
func (x *GetRecoveryInfoResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[49] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use GetRecoveryInfoResponse.ProtoReflect.Descriptor instead. |
|
func (*GetRecoveryInfoResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{49} |
|
} |
|
|
|
func (x *GetRecoveryInfoResponse) GetRecoveryMode() bool { |
|
if x != nil { |
|
return x.RecoveryMode |
|
} |
|
return false |
|
} |
|
|
|
func (x *GetRecoveryInfoResponse) GetRecoveryFinished() bool { |
|
if x != nil { |
|
return x.RecoveryFinished |
|
} |
|
return false |
|
} |
|
|
|
func (x *GetRecoveryInfoResponse) GetProgress() float64 { |
|
if x != nil { |
|
return x.Progress |
|
} |
|
return 0 |
|
} |
|
|
|
type Chain struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The blockchain the node is on (eg bitcoin, litecoin) |
|
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"` |
|
} |
|
|
|
func (x *Chain) Reset() { |
|
*x = Chain{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[50] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *Chain) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*Chain) ProtoMessage() {} |
|
|
|
func (x *Chain) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[50] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use Chain.ProtoReflect.Descriptor instead. |
|
func (*Chain) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{50} |
|
} |
|
|
|
func (x *Chain) GetChain() string { |
|
if x != nil { |
|
return x.Chain |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Chain) GetNetwork() string { |
|
if x != nil { |
|
return x.Network |
|
} |
|
return "" |
|
} |
|
|
|
type ConfirmationUpdate struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
BlockSha []byte `protobuf:"bytes,1,opt,name=block_sha,json=blockSha,proto3" json:"block_sha,omitempty"` |
|
BlockHeight int32 `protobuf:"varint,2,opt,name=block_height,json=blockHeight,proto3" json:"block_height,omitempty"` |
|
NumConfsLeft uint32 `protobuf:"varint,3,opt,name=num_confs_left,json=numConfsLeft,proto3" json:"num_confs_left,omitempty"` |
|
} |
|
|
|
func (x *ConfirmationUpdate) Reset() { |
|
*x = ConfirmationUpdate{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[51] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ConfirmationUpdate) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ConfirmationUpdate) ProtoMessage() {} |
|
|
|
func (x *ConfirmationUpdate) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[51] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ConfirmationUpdate.ProtoReflect.Descriptor instead. |
|
func (*ConfirmationUpdate) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{51} |
|
} |
|
|
|
func (x *ConfirmationUpdate) GetBlockSha() []byte { |
|
if x != nil { |
|
return x.BlockSha |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ConfirmationUpdate) GetBlockHeight() int32 { |
|
if x != nil { |
|
return x.BlockHeight |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ConfirmationUpdate) GetNumConfsLeft() uint32 { |
|
if x != nil { |
|
return x.NumConfsLeft |
|
} |
|
return 0 |
|
} |
|
|
|
type ChannelOpenUpdate struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
ChannelPoint *ChannelPoint `protobuf:"bytes,1,opt,name=channel_point,json=channelPoint,proto3" json:"channel_point,omitempty"` |
|
} |
|
|
|
func (x *ChannelOpenUpdate) Reset() { |
|
*x = ChannelOpenUpdate{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[52] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelOpenUpdate) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelOpenUpdate) ProtoMessage() {} |
|
|
|
func (x *ChannelOpenUpdate) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[52] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelOpenUpdate.ProtoReflect.Descriptor instead. |
|
func (*ChannelOpenUpdate) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{52} |
|
} |
|
|
|
func (x *ChannelOpenUpdate) GetChannelPoint() *ChannelPoint { |
|
if x != nil { |
|
return x.ChannelPoint |
|
} |
|
return nil |
|
} |
|
|
|
type ChannelCloseUpdate struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
ClosingTxid []byte `protobuf:"bytes,1,opt,name=closing_txid,json=closingTxid,proto3" json:"closing_txid,omitempty"` |
|
Success bool `protobuf:"varint,2,opt,name=success,proto3" json:"success,omitempty"` |
|
} |
|
|
|
func (x *ChannelCloseUpdate) Reset() { |
|
*x = ChannelCloseUpdate{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[53] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelCloseUpdate) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelCloseUpdate) ProtoMessage() {} |
|
|
|
func (x *ChannelCloseUpdate) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[53] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelCloseUpdate.ProtoReflect.Descriptor instead. |
|
func (*ChannelCloseUpdate) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{53} |
|
} |
|
|
|
func (x *ChannelCloseUpdate) GetClosingTxid() []byte { |
|
if x != nil { |
|
return x.ClosingTxid |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelCloseUpdate) GetSuccess() bool { |
|
if x != nil { |
|
return x.Success |
|
} |
|
return false |
|
} |
|
|
|
type CloseChannelRequest struct { |
|
state protoimpl.MessageState |
|
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. |
|
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. |
|
Force bool `protobuf:"varint,2,opt,name=force,proto3" json:"force,omitempty"` |
|
// The target number of blocks that the closure transaction should be |
|
// confirmed by. |
|
TargetConf int32 `protobuf:"varint,3,opt,name=target_conf,json=targetConf,proto3" json:"target_conf,omitempty"` |
|
// Deprecated, use sat_per_vbyte. |
|
// A manual fee rate set in sat/vbyte that should be used when crafting the |
|
// closure transaction. |
|
// |
|
// 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. |
|
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. |
|
SatPerVbyte uint64 `protobuf:"varint,6,opt,name=sat_per_vbyte,json=satPerVbyte,proto3" json:"sat_per_vbyte,omitempty"` |
|
} |
|
|
|
func (x *CloseChannelRequest) Reset() { |
|
*x = CloseChannelRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[54] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *CloseChannelRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*CloseChannelRequest) ProtoMessage() {} |
|
|
|
func (x *CloseChannelRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[54] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use CloseChannelRequest.ProtoReflect.Descriptor instead. |
|
func (*CloseChannelRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{54} |
|
} |
|
|
|
func (x *CloseChannelRequest) GetChannelPoint() *ChannelPoint { |
|
if x != nil { |
|
return x.ChannelPoint |
|
} |
|
return nil |
|
} |
|
|
|
func (x *CloseChannelRequest) GetForce() bool { |
|
if x != nil { |
|
return x.Force |
|
} |
|
return false |
|
} |
|
|
|
func (x *CloseChannelRequest) GetTargetConf() int32 { |
|
if x != nil { |
|
return x.TargetConf |
|
} |
|
return 0 |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *CloseChannelRequest) GetSatPerByte() int64 { |
|
if x != nil { |
|
return x.SatPerByte |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *CloseChannelRequest) GetDeliveryAddress() string { |
|
if x != nil { |
|
return x.DeliveryAddress |
|
} |
|
return "" |
|
} |
|
|
|
func (x *CloseChannelRequest) GetSatPerVbyte() uint64 { |
|
if x != nil { |
|
return x.SatPerVbyte |
|
} |
|
return 0 |
|
} |
|
|
|
type CloseStatusUpdate struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Types that are assignable to Update: |
|
// *CloseStatusUpdate_ClosePending |
|
// *CloseStatusUpdate_ChanClose |
|
Update isCloseStatusUpdate_Update `protobuf_oneof:"update"` |
|
} |
|
|
|
func (x *CloseStatusUpdate) Reset() { |
|
*x = CloseStatusUpdate{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[55] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *CloseStatusUpdate) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*CloseStatusUpdate) ProtoMessage() {} |
|
|
|
func (x *CloseStatusUpdate) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[55] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use CloseStatusUpdate.ProtoReflect.Descriptor instead. |
|
func (*CloseStatusUpdate) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{55} |
|
} |
|
|
|
func (m *CloseStatusUpdate) GetUpdate() isCloseStatusUpdate_Update { |
|
if m != nil { |
|
return m.Update |
|
} |
|
return nil |
|
} |
|
|
|
func (x *CloseStatusUpdate) GetClosePending() *PendingUpdate { |
|
if x, ok := x.GetUpdate().(*CloseStatusUpdate_ClosePending); ok { |
|
return x.ClosePending |
|
} |
|
return nil |
|
} |
|
|
|
func (x *CloseStatusUpdate) GetChanClose() *ChannelCloseUpdate { |
|
if x, ok := x.GetUpdate().(*CloseStatusUpdate_ChanClose); ok { |
|
return x.ChanClose |
|
} |
|
return nil |
|
} |
|
|
|
type isCloseStatusUpdate_Update interface { |
|
isCloseStatusUpdate_Update() |
|
} |
|
|
|
type CloseStatusUpdate_ClosePending struct { |
|
ClosePending *PendingUpdate `protobuf:"bytes,1,opt,name=close_pending,json=closePending,proto3,oneof"` |
|
} |
|
|
|
type CloseStatusUpdate_ChanClose struct { |
|
ChanClose *ChannelCloseUpdate `protobuf:"bytes,3,opt,name=chan_close,json=chanClose,proto3,oneof"` |
|
} |
|
|
|
func (*CloseStatusUpdate_ClosePending) isCloseStatusUpdate_Update() {} |
|
|
|
func (*CloseStatusUpdate_ChanClose) isCloseStatusUpdate_Update() {} |
|
|
|
type PendingUpdate struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"` |
|
OutputIndex uint32 `protobuf:"varint,2,opt,name=output_index,json=outputIndex,proto3" json:"output_index,omitempty"` |
|
} |
|
|
|
func (x *PendingUpdate) Reset() { |
|
*x = PendingUpdate{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[56] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *PendingUpdate) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*PendingUpdate) ProtoMessage() {} |
|
|
|
func (x *PendingUpdate) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[56] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use PendingUpdate.ProtoReflect.Descriptor instead. |
|
func (*PendingUpdate) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{56} |
|
} |
|
|
|
func (x *PendingUpdate) GetTxid() []byte { |
|
if x != nil { |
|
return x.Txid |
|
} |
|
return nil |
|
} |
|
|
|
func (x *PendingUpdate) GetOutputIndex() uint32 { |
|
if x != nil { |
|
return x.OutputIndex |
|
} |
|
return 0 |
|
} |
|
|
|
type ReadyForPsbtFunding struct { |
|
state protoimpl.MessageState |
|
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. |
|
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. |
|
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. |
|
Psbt []byte `protobuf:"bytes,3,opt,name=psbt,proto3" json:"psbt,omitempty"` |
|
} |
|
|
|
func (x *ReadyForPsbtFunding) Reset() { |
|
*x = ReadyForPsbtFunding{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[57] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ReadyForPsbtFunding) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ReadyForPsbtFunding) ProtoMessage() {} |
|
|
|
func (x *ReadyForPsbtFunding) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[57] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ReadyForPsbtFunding.ProtoReflect.Descriptor instead. |
|
func (*ReadyForPsbtFunding) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{57} |
|
} |
|
|
|
func (x *ReadyForPsbtFunding) GetFundingAddress() string { |
|
if x != nil { |
|
return x.FundingAddress |
|
} |
|
return "" |
|
} |
|
|
|
func (x *ReadyForPsbtFunding) GetFundingAmount() int64 { |
|
if x != nil { |
|
return x.FundingAmount |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ReadyForPsbtFunding) GetPsbt() []byte { |
|
if x != nil { |
|
return x.Psbt |
|
} |
|
return nil |
|
} |
|
|
|
type OpenChannelRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// 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. |
|
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. |
|
// |
|
// Deprecated: Do not use. |
|
NodePubkeyString string `protobuf:"bytes,3,opt,name=node_pubkey_string,json=nodePubkeyString,proto3" json:"node_pubkey_string,omitempty"` |
|
// The number of satoshis the wallet should commit to the channel |
|
LocalFundingAmount int64 `protobuf:"varint,4,opt,name=local_funding_amount,json=localFundingAmount,proto3" json:"local_funding_amount,omitempty"` |
|
// The number of satoshis to push to the remote side as part of the initial |
|
// commitment state |
|
PushSat int64 `protobuf:"varint,5,opt,name=push_sat,json=pushSat,proto3" json:"push_sat,omitempty"` |
|
// The target number of blocks that the funding transaction should be |
|
// confirmed by. |
|
TargetConf int32 `protobuf:"varint,6,opt,name=target_conf,json=targetConf,proto3" json:"target_conf,omitempty"` |
|
// Deprecated, use sat_per_vbyte. |
|
// A manual fee rate set in sat/vbyte that should be used when crafting the |
|
// funding transaction. |
|
// |
|
// Deprecated: Do not use. |
|
SatPerByte int64 `protobuf:"varint,7,opt,name=sat_per_byte,json=satPerByte,proto3" json:"sat_per_byte,omitempty"` |
|
// Whether this channel should be private, not announced to the greater |
|
// network. |
|
Private bool `protobuf:"varint,8,opt,name=private,proto3" json:"private,omitempty"` |
|
// The minimum value in millisatoshi we will require for incoming HTLCs on |
|
// the channel. |
|
MinHtlcMsat int64 `protobuf:"varint,9,opt,name=min_htlc_msat,json=minHtlcMsat,proto3" json:"min_htlc_msat,omitempty"` |
|
// 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,10,opt,name=remote_csv_delay,json=remoteCsvDelay,proto3" json:"remote_csv_delay,omitempty"` |
|
// The minimum number of confirmations each one of your outputs used for |
|
// the funding transaction must satisfy. |
|
MinConfs int32 `protobuf:"varint,11,opt,name=min_confs,json=minConfs,proto3" json:"min_confs,omitempty"` |
|
// 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. |
|
// |
|
//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). |
|
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. |
|
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. |
|
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. |
|
MaxLocalCsv uint32 `protobuf:"varint,17,opt,name=max_local_csv,json=maxLocalCsv,proto3" json:"max_local_csv,omitempty"` |
|
} |
|
|
|
func (x *OpenChannelRequest) Reset() { |
|
*x = OpenChannelRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[58] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *OpenChannelRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*OpenChannelRequest) ProtoMessage() {} |
|
|
|
func (x *OpenChannelRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[58] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use OpenChannelRequest.ProtoReflect.Descriptor instead. |
|
func (*OpenChannelRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{58} |
|
} |
|
|
|
func (x *OpenChannelRequest) GetSatPerVbyte() uint64 { |
|
if x != nil { |
|
return x.SatPerVbyte |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *OpenChannelRequest) GetNodePubkey() []byte { |
|
if x != nil { |
|
return x.NodePubkey |
|
} |
|
return nil |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *OpenChannelRequest) GetNodePubkeyString() string { |
|
if x != nil { |
|
return x.NodePubkeyString |
|
} |
|
return "" |
|
} |
|
|
|
func (x *OpenChannelRequest) GetLocalFundingAmount() int64 { |
|
if x != nil { |
|
return x.LocalFundingAmount |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *OpenChannelRequest) GetPushSat() int64 { |
|
if x != nil { |
|
return x.PushSat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *OpenChannelRequest) GetTargetConf() int32 { |
|
if x != nil { |
|
return x.TargetConf |
|
} |
|
return 0 |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *OpenChannelRequest) GetSatPerByte() int64 { |
|
if x != nil { |
|
return x.SatPerByte |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *OpenChannelRequest) GetPrivate() bool { |
|
if x != nil { |
|
return x.Private |
|
} |
|
return false |
|
} |
|
|
|
func (x *OpenChannelRequest) GetMinHtlcMsat() int64 { |
|
if x != nil { |
|
return x.MinHtlcMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *OpenChannelRequest) GetRemoteCsvDelay() uint32 { |
|
if x != nil { |
|
return x.RemoteCsvDelay |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *OpenChannelRequest) GetMinConfs() int32 { |
|
if x != nil { |
|
return x.MinConfs |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *OpenChannelRequest) GetSpendUnconfirmed() bool { |
|
if x != nil { |
|
return x.SpendUnconfirmed |
|
} |
|
return false |
|
} |
|
|
|
func (x *OpenChannelRequest) GetCloseAddress() string { |
|
if x != nil { |
|
return x.CloseAddress |
|
} |
|
return "" |
|
} |
|
|
|
func (x *OpenChannelRequest) GetFundingShim() *FundingShim { |
|
if x != nil { |
|
return x.FundingShim |
|
} |
|
return nil |
|
} |
|
|
|
func (x *OpenChannelRequest) GetRemoteMaxValueInFlightMsat() uint64 { |
|
if x != nil { |
|
return x.RemoteMaxValueInFlightMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *OpenChannelRequest) GetRemoteMaxHtlcs() uint32 { |
|
if x != nil { |
|
return x.RemoteMaxHtlcs |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *OpenChannelRequest) GetMaxLocalCsv() uint32 { |
|
if x != nil { |
|
return x.MaxLocalCsv |
|
} |
|
return 0 |
|
} |
|
|
|
type OpenStatusUpdate struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
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. |
|
PendingChanId []byte `protobuf:"bytes,4,opt,name=pending_chan_id,json=pendingChanId,proto3" json:"pending_chan_id,omitempty"` |
|
} |
|
|
|
func (x *OpenStatusUpdate) Reset() { |
|
*x = OpenStatusUpdate{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[59] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *OpenStatusUpdate) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*OpenStatusUpdate) ProtoMessage() {} |
|
|
|
func (x *OpenStatusUpdate) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[59] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use OpenStatusUpdate.ProtoReflect.Descriptor instead. |
|
func (*OpenStatusUpdate) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{59} |
|
} |
|
|
|
func (m *OpenStatusUpdate) GetUpdate() isOpenStatusUpdate_Update { |
|
if m != nil { |
|
return m.Update |
|
} |
|
return nil |
|
} |
|
|
|
func (x *OpenStatusUpdate) GetChanPending() *PendingUpdate { |
|
if x, ok := x.GetUpdate().(*OpenStatusUpdate_ChanPending); ok { |
|
return x.ChanPending |
|
} |
|
return nil |
|
} |
|
|
|
func (x *OpenStatusUpdate) GetChanOpen() *ChannelOpenUpdate { |
|
if x, ok := x.GetUpdate().(*OpenStatusUpdate_ChanOpen); ok { |
|
return x.ChanOpen |
|
} |
|
return nil |
|
} |
|
|
|
func (x *OpenStatusUpdate) GetPsbtFund() *ReadyForPsbtFunding { |
|
if x, ok := x.GetUpdate().(*OpenStatusUpdate_PsbtFund); ok { |
|
return x.PsbtFund |
|
} |
|
return nil |
|
} |
|
|
|
func (x *OpenStatusUpdate) GetPendingChanId() []byte { |
|
if x != nil { |
|
return x.PendingChanId |
|
} |
|
return nil |
|
} |
|
|
|
type isOpenStatusUpdate_Update interface { |
|
isOpenStatusUpdate_Update() |
|
} |
|
|
|
type OpenStatusUpdate_ChanPending struct { |
|
// |
|
//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. |
|
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. |
|
PsbtFund *ReadyForPsbtFunding `protobuf:"bytes,5,opt,name=psbt_fund,json=psbtFund,proto3,oneof"` |
|
} |
|
|
|
func (*OpenStatusUpdate_ChanPending) isOpenStatusUpdate_Update() {} |
|
|
|
func (*OpenStatusUpdate_ChanOpen) isOpenStatusUpdate_Update() {} |
|
|
|
func (*OpenStatusUpdate_PsbtFund) isOpenStatusUpdate_Update() {} |
|
|
|
type KeyLocator struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The family of key being identified. |
|
KeyFamily int32 `protobuf:"varint,1,opt,name=key_family,json=keyFamily,proto3" json:"key_family,omitempty"` |
|
// The precise index of the key being identified. |
|
KeyIndex int32 `protobuf:"varint,2,opt,name=key_index,json=keyIndex,proto3" json:"key_index,omitempty"` |
|
} |
|
|
|
func (x *KeyLocator) Reset() { |
|
*x = KeyLocator{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[60] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *KeyLocator) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*KeyLocator) ProtoMessage() {} |
|
|
|
func (x *KeyLocator) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[60] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use KeyLocator.ProtoReflect.Descriptor instead. |
|
func (*KeyLocator) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{60} |
|
} |
|
|
|
func (x *KeyLocator) GetKeyFamily() int32 { |
|
if x != nil { |
|
return x.KeyFamily |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *KeyLocator) GetKeyIndex() int32 { |
|
if x != nil { |
|
return x.KeyIndex |
|
} |
|
return 0 |
|
} |
|
|
|
type KeyDescriptor struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// |
|
//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. |
|
KeyLoc *KeyLocator `protobuf:"bytes,2,opt,name=key_loc,json=keyLoc,proto3" json:"key_loc,omitempty"` |
|
} |
|
|
|
func (x *KeyDescriptor) Reset() { |
|
*x = KeyDescriptor{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[61] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *KeyDescriptor) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*KeyDescriptor) ProtoMessage() {} |
|
|
|
func (x *KeyDescriptor) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[61] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use KeyDescriptor.ProtoReflect.Descriptor instead. |
|
func (*KeyDescriptor) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{61} |
|
} |
|
|
|
func (x *KeyDescriptor) GetRawKeyBytes() []byte { |
|
if x != nil { |
|
return x.RawKeyBytes |
|
} |
|
return nil |
|
} |
|
|
|
func (x *KeyDescriptor) GetKeyLoc() *KeyLocator { |
|
if x != nil { |
|
return x.KeyLoc |
|
} |
|
return nil |
|
} |
|
|
|
type ChanPointShim struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// |
|
//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"` |
|
// Our local key to use when creating the multi-sig output. |
|
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. |
|
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. |
|
ThawHeight uint32 `protobuf:"varint,6,opt,name=thaw_height,json=thawHeight,proto3" json:"thaw_height,omitempty"` |
|
} |
|
|
|
func (x *ChanPointShim) Reset() { |
|
*x = ChanPointShim{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[62] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChanPointShim) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChanPointShim) ProtoMessage() {} |
|
|
|
func (x *ChanPointShim) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[62] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChanPointShim.ProtoReflect.Descriptor instead. |
|
func (*ChanPointShim) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{62} |
|
} |
|
|
|
func (x *ChanPointShim) GetAmt() int64 { |
|
if x != nil { |
|
return x.Amt |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChanPointShim) GetChanPoint() *ChannelPoint { |
|
if x != nil { |
|
return x.ChanPoint |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChanPointShim) GetLocalKey() *KeyDescriptor { |
|
if x != nil { |
|
return x.LocalKey |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChanPointShim) GetRemoteKey() []byte { |
|
if x != nil { |
|
return x.RemoteKey |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChanPointShim) GetPendingChanId() []byte { |
|
if x != nil { |
|
return x.PendingChanId |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChanPointShim) GetThawHeight() uint32 { |
|
if x != nil { |
|
return x.ThawHeight |
|
} |
|
return 0 |
|
} |
|
|
|
type PsbtShim struct { |
|
state protoimpl.MessageState |
|
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. |
|
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. |
|
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. |
|
NoPublish bool `protobuf:"varint,3,opt,name=no_publish,json=noPublish,proto3" json:"no_publish,omitempty"` |
|
} |
|
|
|
func (x *PsbtShim) Reset() { |
|
*x = PsbtShim{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[63] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *PsbtShim) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*PsbtShim) ProtoMessage() {} |
|
|
|
func (x *PsbtShim) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[63] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use PsbtShim.ProtoReflect.Descriptor instead. |
|
func (*PsbtShim) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{63} |
|
} |
|
|
|
func (x *PsbtShim) GetPendingChanId() []byte { |
|
if x != nil { |
|
return x.PendingChanId |
|
} |
|
return nil |
|
} |
|
|
|
func (x *PsbtShim) GetBasePsbt() []byte { |
|
if x != nil { |
|
return x.BasePsbt |
|
} |
|
return nil |
|
} |
|
|
|
func (x *PsbtShim) GetNoPublish() bool { |
|
if x != nil { |
|
return x.NoPublish |
|
} |
|
return false |
|
} |
|
|
|
type FundingShim struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Types that are assignable to Shim: |
|
// *FundingShim_ChanPointShim |
|
// *FundingShim_PsbtShim |
|
Shim isFundingShim_Shim `protobuf_oneof:"shim"` |
|
} |
|
|
|
func (x *FundingShim) Reset() { |
|
*x = FundingShim{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[64] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *FundingShim) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*FundingShim) ProtoMessage() {} |
|
|
|
func (x *FundingShim) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[64] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use FundingShim.ProtoReflect.Descriptor instead. |
|
func (*FundingShim) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{64} |
|
} |
|
|
|
func (m *FundingShim) GetShim() isFundingShim_Shim { |
|
if m != nil { |
|
return m.Shim |
|
} |
|
return nil |
|
} |
|
|
|
func (x *FundingShim) GetChanPointShim() *ChanPointShim { |
|
if x, ok := x.GetShim().(*FundingShim_ChanPointShim); ok { |
|
return x.ChanPointShim |
|
} |
|
return nil |
|
} |
|
|
|
func (x *FundingShim) GetPsbtShim() *PsbtShim { |
|
if x, ok := x.GetShim().(*FundingShim_PsbtShim); ok { |
|
return x.PsbtShim |
|
} |
|
return nil |
|
} |
|
|
|
type isFundingShim_Shim interface { |
|
isFundingShim_Shim() |
|
} |
|
|
|
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. |
|
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. |
|
PsbtShim *PsbtShim `protobuf:"bytes,2,opt,name=psbt_shim,json=psbtShim,proto3,oneof"` |
|
} |
|
|
|
func (*FundingShim_ChanPointShim) isFundingShim_Shim() {} |
|
|
|
func (*FundingShim_PsbtShim) isFundingShim_Shim() {} |
|
|
|
type FundingShimCancel struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The pending channel ID of the channel to cancel the funding shim for. |
|
PendingChanId []byte `protobuf:"bytes,1,opt,name=pending_chan_id,json=pendingChanId,proto3" json:"pending_chan_id,omitempty"` |
|
} |
|
|
|
func (x *FundingShimCancel) Reset() { |
|
*x = FundingShimCancel{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[65] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *FundingShimCancel) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*FundingShimCancel) ProtoMessage() {} |
|
|
|
func (x *FundingShimCancel) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[65] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use FundingShimCancel.ProtoReflect.Descriptor instead. |
|
func (*FundingShimCancel) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{65} |
|
} |
|
|
|
func (x *FundingShimCancel) GetPendingChanId() []byte { |
|
if x != nil { |
|
return x.PendingChanId |
|
} |
|
return nil |
|
} |
|
|
|
type FundingPsbtVerify struct { |
|
state protoimpl.MessageState |
|
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. |
|
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"` |
|
} |
|
|
|
func (x *FundingPsbtVerify) Reset() { |
|
*x = FundingPsbtVerify{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[66] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *FundingPsbtVerify) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*FundingPsbtVerify) ProtoMessage() {} |
|
|
|
func (x *FundingPsbtVerify) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[66] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use FundingPsbtVerify.ProtoReflect.Descriptor instead. |
|
func (*FundingPsbtVerify) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{66} |
|
} |
|
|
|
func (x *FundingPsbtVerify) GetFundedPsbt() []byte { |
|
if x != nil { |
|
return x.FundedPsbt |
|
} |
|
return nil |
|
} |
|
|
|
func (x *FundingPsbtVerify) GetPendingChanId() []byte { |
|
if x != nil { |
|
return x.PendingChanId |
|
} |
|
return nil |
|
} |
|
|
|
type FundingPsbtFinalize struct { |
|
state protoimpl.MessageState |
|
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. |
|
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. |
|
FinalRawTx []byte `protobuf:"bytes,3,opt,name=final_raw_tx,json=finalRawTx,proto3" json:"final_raw_tx,omitempty"` |
|
} |
|
|
|
func (x *FundingPsbtFinalize) Reset() { |
|
*x = FundingPsbtFinalize{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[67] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *FundingPsbtFinalize) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*FundingPsbtFinalize) ProtoMessage() {} |
|
|
|
func (x *FundingPsbtFinalize) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[67] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use FundingPsbtFinalize.ProtoReflect.Descriptor instead. |
|
func (*FundingPsbtFinalize) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{67} |
|
} |
|
|
|
func (x *FundingPsbtFinalize) GetSignedPsbt() []byte { |
|
if x != nil { |
|
return x.SignedPsbt |
|
} |
|
return nil |
|
} |
|
|
|
func (x *FundingPsbtFinalize) GetPendingChanId() []byte { |
|
if x != nil { |
|
return x.PendingChanId |
|
} |
|
return nil |
|
} |
|
|
|
func (x *FundingPsbtFinalize) GetFinalRawTx() []byte { |
|
if x != nil { |
|
return x.FinalRawTx |
|
} |
|
return nil |
|
} |
|
|
|
type FundingTransitionMsg struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Types that are assignable to Trigger: |
|
// *FundingTransitionMsg_ShimRegister |
|
// *FundingTransitionMsg_ShimCancel |
|
// *FundingTransitionMsg_PsbtVerify |
|
// *FundingTransitionMsg_PsbtFinalize |
|
Trigger isFundingTransitionMsg_Trigger `protobuf_oneof:"trigger"` |
|
} |
|
|
|
func (x *FundingTransitionMsg) Reset() { |
|
*x = FundingTransitionMsg{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[68] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *FundingTransitionMsg) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*FundingTransitionMsg) ProtoMessage() {} |
|
|
|
func (x *FundingTransitionMsg) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[68] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use FundingTransitionMsg.ProtoReflect.Descriptor instead. |
|
func (*FundingTransitionMsg) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{68} |
|
} |
|
|
|
func (m *FundingTransitionMsg) GetTrigger() isFundingTransitionMsg_Trigger { |
|
if m != nil { |
|
return m.Trigger |
|
} |
|
return nil |
|
} |
|
|
|
func (x *FundingTransitionMsg) GetShimRegister() *FundingShim { |
|
if x, ok := x.GetTrigger().(*FundingTransitionMsg_ShimRegister); ok { |
|
return x.ShimRegister |
|
} |
|
return nil |
|
} |
|
|
|
func (x *FundingTransitionMsg) GetShimCancel() *FundingShimCancel { |
|
if x, ok := x.GetTrigger().(*FundingTransitionMsg_ShimCancel); ok { |
|
return x.ShimCancel |
|
} |
|
return nil |
|
} |
|
|
|
func (x *FundingTransitionMsg) GetPsbtVerify() *FundingPsbtVerify { |
|
if x, ok := x.GetTrigger().(*FundingTransitionMsg_PsbtVerify); ok { |
|
return x.PsbtVerify |
|
} |
|
return nil |
|
} |
|
|
|
func (x *FundingTransitionMsg) GetPsbtFinalize() *FundingPsbtFinalize { |
|
if x, ok := x.GetTrigger().(*FundingTransitionMsg_PsbtFinalize); ok { |
|
return x.PsbtFinalize |
|
} |
|
return nil |
|
} |
|
|
|
type isFundingTransitionMsg_Trigger interface { |
|
isFundingTransitionMsg_Trigger() |
|
} |
|
|
|
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. |
|
ShimRegister *FundingShim `protobuf:"bytes,1,opt,name=shim_register,json=shimRegister,proto3,oneof"` |
|
} |
|
|
|
type FundingTransitionMsg_ShimCancel struct { |
|
// Used to cancel an existing registered funding shim. |
|
ShimCancel *FundingShimCancel `protobuf:"bytes,2,opt,name=shim_cancel,json=shimCancel,proto3,oneof"` |
|
} |
|
|
|
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. |
|
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. |
|
PsbtFinalize *FundingPsbtFinalize `protobuf:"bytes,4,opt,name=psbt_finalize,json=psbtFinalize,proto3,oneof"` |
|
} |
|
|
|
func (*FundingTransitionMsg_ShimRegister) isFundingTransitionMsg_Trigger() {} |
|
|
|
func (*FundingTransitionMsg_ShimCancel) isFundingTransitionMsg_Trigger() {} |
|
|
|
func (*FundingTransitionMsg_PsbtVerify) isFundingTransitionMsg_Trigger() {} |
|
|
|
func (*FundingTransitionMsg_PsbtFinalize) isFundingTransitionMsg_Trigger() {} |
|
|
|
type FundingStateStepResp struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *FundingStateStepResp) Reset() { |
|
*x = FundingStateStepResp{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[69] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *FundingStateStepResp) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*FundingStateStepResp) ProtoMessage() {} |
|
|
|
func (x *FundingStateStepResp) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[69] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use FundingStateStepResp.ProtoReflect.Descriptor instead. |
|
func (*FundingStateStepResp) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{69} |
|
} |
|
|
|
type PendingHTLC struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The direction within the channel that the htlc was sent |
|
Incoming bool `protobuf:"varint,1,opt,name=incoming,proto3" json:"incoming,omitempty"` |
|
// The total value of the htlc |
|
Amount int64 `protobuf:"varint,2,opt,name=amount,proto3" json:"amount,omitempty"` |
|
// The final output to be swept back to the user's wallet |
|
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. |
|
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"` |
|
} |
|
|
|
func (x *PendingHTLC) Reset() { |
|
*x = PendingHTLC{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[70] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *PendingHTLC) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*PendingHTLC) ProtoMessage() {} |
|
|
|
func (x *PendingHTLC) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[70] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use PendingHTLC.ProtoReflect.Descriptor instead. |
|
func (*PendingHTLC) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{70} |
|
} |
|
|
|
func (x *PendingHTLC) GetIncoming() bool { |
|
if x != nil { |
|
return x.Incoming |
|
} |
|
return false |
|
} |
|
|
|
func (x *PendingHTLC) GetAmount() int64 { |
|
if x != nil { |
|
return x.Amount |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingHTLC) GetOutpoint() string { |
|
if x != nil { |
|
return x.Outpoint |
|
} |
|
return "" |
|
} |
|
|
|
func (x *PendingHTLC) GetMaturityHeight() uint32 { |
|
if x != nil { |
|
return x.MaturityHeight |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingHTLC) GetBlocksTilMaturity() int32 { |
|
if x != nil { |
|
return x.BlocksTilMaturity |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingHTLC) GetStage() uint32 { |
|
if x != nil { |
|
return x.Stage |
|
} |
|
return 0 |
|
} |
|
|
|
type PendingChannelsRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *PendingChannelsRequest) Reset() { |
|
*x = PendingChannelsRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[71] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *PendingChannelsRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*PendingChannelsRequest) ProtoMessage() {} |
|
|
|
func (x *PendingChannelsRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[71] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use PendingChannelsRequest.ProtoReflect.Descriptor instead. |
|
func (*PendingChannelsRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{71} |
|
} |
|
|
|
type PendingChannelsResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The balance in satoshis encumbered in pending channels |
|
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: Do not use. |
|
PendingClosingChannels []*PendingChannelsResponse_ClosedChannel `protobuf:"bytes,3,rep,name=pending_closing_channels,json=pendingClosingChannels,proto3" json:"pending_closing_channels,omitempty"` |
|
// Channels pending force closing |
|
PendingForceClosingChannels []*PendingChannelsResponse_ForceClosedChannel `protobuf:"bytes,4,rep,name=pending_force_closing_channels,json=pendingForceClosingChannels,proto3" json:"pending_force_closing_channels,omitempty"` |
|
// Channels waiting for closing tx to confirm |
|
WaitingCloseChannels []*PendingChannelsResponse_WaitingCloseChannel `protobuf:"bytes,5,rep,name=waiting_close_channels,json=waitingCloseChannels,proto3" json:"waiting_close_channels,omitempty"` |
|
} |
|
|
|
func (x *PendingChannelsResponse) Reset() { |
|
*x = PendingChannelsResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[72] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *PendingChannelsResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*PendingChannelsResponse) ProtoMessage() {} |
|
|
|
func (x *PendingChannelsResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[72] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use PendingChannelsResponse.ProtoReflect.Descriptor instead. |
|
func (*PendingChannelsResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{72} |
|
} |
|
|
|
func (x *PendingChannelsResponse) GetTotalLimboBalance() int64 { |
|
if x != nil { |
|
return x.TotalLimboBalance |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingChannelsResponse) GetPendingOpenChannels() []*PendingChannelsResponse_PendingOpenChannel { |
|
if x != nil { |
|
return x.PendingOpenChannels |
|
} |
|
return nil |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *PendingChannelsResponse) GetPendingClosingChannels() []*PendingChannelsResponse_ClosedChannel { |
|
if x != nil { |
|
return x.PendingClosingChannels |
|
} |
|
return nil |
|
} |
|
|
|
func (x *PendingChannelsResponse) GetPendingForceClosingChannels() []*PendingChannelsResponse_ForceClosedChannel { |
|
if x != nil { |
|
return x.PendingForceClosingChannels |
|
} |
|
return nil |
|
} |
|
|
|
func (x *PendingChannelsResponse) GetWaitingCloseChannels() []*PendingChannelsResponse_WaitingCloseChannel { |
|
if x != nil { |
|
return x.WaitingCloseChannels |
|
} |
|
return nil |
|
} |
|
|
|
type ChannelEventSubscription struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *ChannelEventSubscription) Reset() { |
|
*x = ChannelEventSubscription{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[73] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelEventSubscription) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelEventSubscription) ProtoMessage() {} |
|
|
|
func (x *ChannelEventSubscription) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[73] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelEventSubscription.ProtoReflect.Descriptor instead. |
|
func (*ChannelEventSubscription) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{73} |
|
} |
|
|
|
type ChannelEventUpdate struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Types that are assignable to Channel: |
|
// *ChannelEventUpdate_OpenChannel |
|
// *ChannelEventUpdate_ClosedChannel |
|
// *ChannelEventUpdate_ActiveChannel |
|
// *ChannelEventUpdate_InactiveChannel |
|
// *ChannelEventUpdate_PendingOpenChannel |
|
Channel isChannelEventUpdate_Channel `protobuf_oneof:"channel"` |
|
Type ChannelEventUpdate_UpdateType `protobuf:"varint,5,opt,name=type,proto3,enum=lnrpc.ChannelEventUpdate_UpdateType" json:"type,omitempty"` |
|
} |
|
|
|
func (x *ChannelEventUpdate) Reset() { |
|
*x = ChannelEventUpdate{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[74] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelEventUpdate) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelEventUpdate) ProtoMessage() {} |
|
|
|
func (x *ChannelEventUpdate) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[74] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelEventUpdate.ProtoReflect.Descriptor instead. |
|
func (*ChannelEventUpdate) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{74} |
|
} |
|
|
|
func (m *ChannelEventUpdate) GetChannel() isChannelEventUpdate_Channel { |
|
if m != nil { |
|
return m.Channel |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelEventUpdate) GetOpenChannel() *Channel { |
|
if x, ok := x.GetChannel().(*ChannelEventUpdate_OpenChannel); ok { |
|
return x.OpenChannel |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelEventUpdate) GetClosedChannel() *ChannelCloseSummary { |
|
if x, ok := x.GetChannel().(*ChannelEventUpdate_ClosedChannel); ok { |
|
return x.ClosedChannel |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelEventUpdate) GetActiveChannel() *ChannelPoint { |
|
if x, ok := x.GetChannel().(*ChannelEventUpdate_ActiveChannel); ok { |
|
return x.ActiveChannel |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelEventUpdate) GetInactiveChannel() *ChannelPoint { |
|
if x, ok := x.GetChannel().(*ChannelEventUpdate_InactiveChannel); ok { |
|
return x.InactiveChannel |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelEventUpdate) GetPendingOpenChannel() *PendingUpdate { |
|
if x, ok := x.GetChannel().(*ChannelEventUpdate_PendingOpenChannel); ok { |
|
return x.PendingOpenChannel |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelEventUpdate) GetType() ChannelEventUpdate_UpdateType { |
|
if x != nil { |
|
return x.Type |
|
} |
|
return ChannelEventUpdate_OPEN_CHANNEL |
|
} |
|
|
|
type isChannelEventUpdate_Channel interface { |
|
isChannelEventUpdate_Channel() |
|
} |
|
|
|
type ChannelEventUpdate_OpenChannel struct { |
|
OpenChannel *Channel `protobuf:"bytes,1,opt,name=open_channel,json=openChannel,proto3,oneof"` |
|
} |
|
|
|
type ChannelEventUpdate_ClosedChannel struct { |
|
ClosedChannel *ChannelCloseSummary `protobuf:"bytes,2,opt,name=closed_channel,json=closedChannel,proto3,oneof"` |
|
} |
|
|
|
type ChannelEventUpdate_ActiveChannel struct { |
|
ActiveChannel *ChannelPoint `protobuf:"bytes,3,opt,name=active_channel,json=activeChannel,proto3,oneof"` |
|
} |
|
|
|
type ChannelEventUpdate_InactiveChannel struct { |
|
InactiveChannel *ChannelPoint `protobuf:"bytes,4,opt,name=inactive_channel,json=inactiveChannel,proto3,oneof"` |
|
} |
|
|
|
type ChannelEventUpdate_PendingOpenChannel struct { |
|
PendingOpenChannel *PendingUpdate `protobuf:"bytes,6,opt,name=pending_open_channel,json=pendingOpenChannel,proto3,oneof"` |
|
} |
|
|
|
func (*ChannelEventUpdate_OpenChannel) isChannelEventUpdate_Channel() {} |
|
|
|
func (*ChannelEventUpdate_ClosedChannel) isChannelEventUpdate_Channel() {} |
|
|
|
func (*ChannelEventUpdate_ActiveChannel) isChannelEventUpdate_Channel() {} |
|
|
|
func (*ChannelEventUpdate_InactiveChannel) isChannelEventUpdate_Channel() {} |
|
|
|
func (*ChannelEventUpdate_PendingOpenChannel) isChannelEventUpdate_Channel() {} |
|
|
|
type WalletAccountBalance struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The confirmed balance of the account (with >= 1 confirmations). |
|
ConfirmedBalance int64 `protobuf:"varint,1,opt,name=confirmed_balance,json=confirmedBalance,proto3" json:"confirmed_balance,omitempty"` |
|
// The unconfirmed balance of the account (with 0 confirmations). |
|
UnconfirmedBalance int64 `protobuf:"varint,2,opt,name=unconfirmed_balance,json=unconfirmedBalance,proto3" json:"unconfirmed_balance,omitempty"` |
|
} |
|
|
|
func (x *WalletAccountBalance) Reset() { |
|
*x = WalletAccountBalance{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[75] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *WalletAccountBalance) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*WalletAccountBalance) ProtoMessage() {} |
|
|
|
func (x *WalletAccountBalance) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[75] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use WalletAccountBalance.ProtoReflect.Descriptor instead. |
|
func (*WalletAccountBalance) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{75} |
|
} |
|
|
|
func (x *WalletAccountBalance) GetConfirmedBalance() int64 { |
|
if x != nil { |
|
return x.ConfirmedBalance |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *WalletAccountBalance) GetUnconfirmedBalance() int64 { |
|
if x != nil { |
|
return x.UnconfirmedBalance |
|
} |
|
return 0 |
|
} |
|
|
|
type WalletBalanceRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *WalletBalanceRequest) Reset() { |
|
*x = WalletBalanceRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[76] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *WalletBalanceRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*WalletBalanceRequest) ProtoMessage() {} |
|
|
|
func (x *WalletBalanceRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[76] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use WalletBalanceRequest.ProtoReflect.Descriptor instead. |
|
func (*WalletBalanceRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{76} |
|
} |
|
|
|
type WalletBalanceResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The balance of the wallet |
|
TotalBalance int64 `protobuf:"varint,1,opt,name=total_balance,json=totalBalance,proto3" json:"total_balance,omitempty"` |
|
// The confirmed balance of a wallet(with >= 1 confirmations) |
|
ConfirmedBalance int64 `protobuf:"varint,2,opt,name=confirmed_balance,json=confirmedBalance,proto3" json:"confirmed_balance,omitempty"` |
|
// The unconfirmed balance of a wallet(with 0 confirmations) |
|
UnconfirmedBalance int64 `protobuf:"varint,3,opt,name=unconfirmed_balance,json=unconfirmedBalance,proto3" json:"unconfirmed_balance,omitempty"` |
|
// A mapping of each wallet account's name to its balance. |
|
AccountBalance map[string]*WalletAccountBalance `protobuf:"bytes,4,rep,name=account_balance,json=accountBalance,proto3" json:"account_balance,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` |
|
} |
|
|
|
func (x *WalletBalanceResponse) Reset() { |
|
*x = WalletBalanceResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[77] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *WalletBalanceResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*WalletBalanceResponse) ProtoMessage() {} |
|
|
|
func (x *WalletBalanceResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[77] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use WalletBalanceResponse.ProtoReflect.Descriptor instead. |
|
func (*WalletBalanceResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{77} |
|
} |
|
|
|
func (x *WalletBalanceResponse) GetTotalBalance() int64 { |
|
if x != nil { |
|
return x.TotalBalance |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *WalletBalanceResponse) GetConfirmedBalance() int64 { |
|
if x != nil { |
|
return x.ConfirmedBalance |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *WalletBalanceResponse) GetUnconfirmedBalance() int64 { |
|
if x != nil { |
|
return x.UnconfirmedBalance |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *WalletBalanceResponse) GetAccountBalance() map[string]*WalletAccountBalance { |
|
if x != nil { |
|
return x.AccountBalance |
|
} |
|
return nil |
|
} |
|
|
|
type Amount struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Value denominated in satoshis. |
|
Sat uint64 `protobuf:"varint,1,opt,name=sat,proto3" json:"sat,omitempty"` |
|
// Value denominated in milli-satoshis. |
|
Msat uint64 `protobuf:"varint,2,opt,name=msat,proto3" json:"msat,omitempty"` |
|
} |
|
|
|
func (x *Amount) Reset() { |
|
*x = Amount{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[78] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *Amount) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*Amount) ProtoMessage() {} |
|
|
|
func (x *Amount) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[78] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use Amount.ProtoReflect.Descriptor instead. |
|
func (*Amount) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{78} |
|
} |
|
|
|
func (x *Amount) GetSat() uint64 { |
|
if x != nil { |
|
return x.Sat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Amount) GetMsat() uint64 { |
|
if x != nil { |
|
return x.Msat |
|
} |
|
return 0 |
|
} |
|
|
|
type ChannelBalanceRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *ChannelBalanceRequest) Reset() { |
|
*x = ChannelBalanceRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[79] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelBalanceRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelBalanceRequest) ProtoMessage() {} |
|
|
|
func (x *ChannelBalanceRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[79] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelBalanceRequest.ProtoReflect.Descriptor instead. |
|
func (*ChannelBalanceRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{79} |
|
} |
|
|
|
type ChannelBalanceResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Deprecated. Sum of channels balances denominated in satoshis |
|
// |
|
// Deprecated: Do not use. |
|
Balance int64 `protobuf:"varint,1,opt,name=balance,proto3" json:"balance,omitempty"` |
|
// Deprecated. Sum of channels pending balances denominated in satoshis |
|
// |
|
// Deprecated: Do not use. |
|
PendingOpenBalance int64 `protobuf:"varint,2,opt,name=pending_open_balance,json=pendingOpenBalance,proto3" json:"pending_open_balance,omitempty"` |
|
// Sum of channels local balances. |
|
LocalBalance *Amount `protobuf:"bytes,3,opt,name=local_balance,json=localBalance,proto3" json:"local_balance,omitempty"` |
|
// Sum of channels remote balances. |
|
RemoteBalance *Amount `protobuf:"bytes,4,opt,name=remote_balance,json=remoteBalance,proto3" json:"remote_balance,omitempty"` |
|
// Sum of channels local unsettled balances. |
|
UnsettledLocalBalance *Amount `protobuf:"bytes,5,opt,name=unsettled_local_balance,json=unsettledLocalBalance,proto3" json:"unsettled_local_balance,omitempty"` |
|
// Sum of channels remote unsettled balances. |
|
UnsettledRemoteBalance *Amount `protobuf:"bytes,6,opt,name=unsettled_remote_balance,json=unsettledRemoteBalance,proto3" json:"unsettled_remote_balance,omitempty"` |
|
// Sum of channels pending local balances. |
|
PendingOpenLocalBalance *Amount `protobuf:"bytes,7,opt,name=pending_open_local_balance,json=pendingOpenLocalBalance,proto3" json:"pending_open_local_balance,omitempty"` |
|
// Sum of channels pending remote balances. |
|
PendingOpenRemoteBalance *Amount `protobuf:"bytes,8,opt,name=pending_open_remote_balance,json=pendingOpenRemoteBalance,proto3" json:"pending_open_remote_balance,omitempty"` |
|
} |
|
|
|
func (x *ChannelBalanceResponse) Reset() { |
|
*x = ChannelBalanceResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[80] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelBalanceResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelBalanceResponse) ProtoMessage() {} |
|
|
|
func (x *ChannelBalanceResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[80] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelBalanceResponse.ProtoReflect.Descriptor instead. |
|
func (*ChannelBalanceResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{80} |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *ChannelBalanceResponse) GetBalance() int64 { |
|
if x != nil { |
|
return x.Balance |
|
} |
|
return 0 |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *ChannelBalanceResponse) GetPendingOpenBalance() int64 { |
|
if x != nil { |
|
return x.PendingOpenBalance |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelBalanceResponse) GetLocalBalance() *Amount { |
|
if x != nil { |
|
return x.LocalBalance |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelBalanceResponse) GetRemoteBalance() *Amount { |
|
if x != nil { |
|
return x.RemoteBalance |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelBalanceResponse) GetUnsettledLocalBalance() *Amount { |
|
if x != nil { |
|
return x.UnsettledLocalBalance |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelBalanceResponse) GetUnsettledRemoteBalance() *Amount { |
|
if x != nil { |
|
return x.UnsettledRemoteBalance |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelBalanceResponse) GetPendingOpenLocalBalance() *Amount { |
|
if x != nil { |
|
return x.PendingOpenLocalBalance |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelBalanceResponse) GetPendingOpenRemoteBalance() *Amount { |
|
if x != nil { |
|
return x.PendingOpenRemoteBalance |
|
} |
|
return nil |
|
} |
|
|
|
type QueryRoutesRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// 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 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 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. |
|
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. |
|
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. |
|
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: 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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
DestFeatures []FeatureBit `protobuf:"varint,17,rep,packed,name=dest_features,json=destFeatures,proto3,enum=lnrpc.FeatureBit" json:"dest_features,omitempty"` |
|
} |
|
|
|
func (x *QueryRoutesRequest) Reset() { |
|
*x = QueryRoutesRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[81] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *QueryRoutesRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*QueryRoutesRequest) ProtoMessage() {} |
|
|
|
func (x *QueryRoutesRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[81] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use QueryRoutesRequest.ProtoReflect.Descriptor instead. |
|
func (*QueryRoutesRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{81} |
|
} |
|
|
|
func (x *QueryRoutesRequest) GetPubKey() string { |
|
if x != nil { |
|
return x.PubKey |
|
} |
|
return "" |
|
} |
|
|
|
func (x *QueryRoutesRequest) GetAmt() int64 { |
|
if x != nil { |
|
return x.Amt |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *QueryRoutesRequest) GetAmtMsat() int64 { |
|
if x != nil { |
|
return x.AmtMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *QueryRoutesRequest) GetFinalCltvDelta() int32 { |
|
if x != nil { |
|
return x.FinalCltvDelta |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *QueryRoutesRequest) GetFeeLimit() *FeeLimit { |
|
if x != nil { |
|
return x.FeeLimit |
|
} |
|
return nil |
|
} |
|
|
|
func (x *QueryRoutesRequest) GetIgnoredNodes() [][]byte { |
|
if x != nil { |
|
return x.IgnoredNodes |
|
} |
|
return nil |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *QueryRoutesRequest) GetIgnoredEdges() []*EdgeLocator { |
|
if x != nil { |
|
return x.IgnoredEdges |
|
} |
|
return nil |
|
} |
|
|
|
func (x *QueryRoutesRequest) GetSourcePubKey() string { |
|
if x != nil { |
|
return x.SourcePubKey |
|
} |
|
return "" |
|
} |
|
|
|
func (x *QueryRoutesRequest) GetUseMissionControl() bool { |
|
if x != nil { |
|
return x.UseMissionControl |
|
} |
|
return false |
|
} |
|
|
|
func (x *QueryRoutesRequest) GetIgnoredPairs() []*NodePair { |
|
if x != nil { |
|
return x.IgnoredPairs |
|
} |
|
return nil |
|
} |
|
|
|
func (x *QueryRoutesRequest) GetCltvLimit() uint32 { |
|
if x != nil { |
|
return x.CltvLimit |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *QueryRoutesRequest) GetDestCustomRecords() map[uint64][]byte { |
|
if x != nil { |
|
return x.DestCustomRecords |
|
} |
|
return nil |
|
} |
|
|
|
func (x *QueryRoutesRequest) GetOutgoingChanId() uint64 { |
|
if x != nil { |
|
return x.OutgoingChanId |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *QueryRoutesRequest) GetLastHopPubkey() []byte { |
|
if x != nil { |
|
return x.LastHopPubkey |
|
} |
|
return nil |
|
} |
|
|
|
func (x *QueryRoutesRequest) GetRouteHints() []*RouteHint { |
|
if x != nil { |
|
return x.RouteHints |
|
} |
|
return nil |
|
} |
|
|
|
func (x *QueryRoutesRequest) GetDestFeatures() []FeatureBit { |
|
if x != nil { |
|
return x.DestFeatures |
|
} |
|
return nil |
|
} |
|
|
|
type NodePair struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// |
|
//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. |
|
To []byte `protobuf:"bytes,2,opt,name=to,proto3" json:"to,omitempty"` |
|
} |
|
|
|
func (x *NodePair) Reset() { |
|
*x = NodePair{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[82] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *NodePair) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*NodePair) ProtoMessage() {} |
|
|
|
func (x *NodePair) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[82] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use NodePair.ProtoReflect.Descriptor instead. |
|
func (*NodePair) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{82} |
|
} |
|
|
|
func (x *NodePair) GetFrom() []byte { |
|
if x != nil { |
|
return x.From |
|
} |
|
return nil |
|
} |
|
|
|
func (x *NodePair) GetTo() []byte { |
|
if x != nil { |
|
return x.To |
|
} |
|
return nil |
|
} |
|
|
|
type EdgeLocator struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// 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. |
|
DirectionReverse bool `protobuf:"varint,2,opt,name=direction_reverse,json=directionReverse,proto3" json:"direction_reverse,omitempty"` |
|
} |
|
|
|
func (x *EdgeLocator) Reset() { |
|
*x = EdgeLocator{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[83] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *EdgeLocator) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*EdgeLocator) ProtoMessage() {} |
|
|
|
func (x *EdgeLocator) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[83] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use EdgeLocator.ProtoReflect.Descriptor instead. |
|
func (*EdgeLocator) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{83} |
|
} |
|
|
|
func (x *EdgeLocator) GetChannelId() uint64 { |
|
if x != nil { |
|
return x.ChannelId |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *EdgeLocator) GetDirectionReverse() bool { |
|
if x != nil { |
|
return x.DirectionReverse |
|
} |
|
return false |
|
} |
|
|
|
type QueryRoutesResponse struct { |
|
state protoimpl.MessageState |
|
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. |
|
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] |
|
SuccessProb float64 `protobuf:"fixed64,2,opt,name=success_prob,json=successProb,proto3" json:"success_prob,omitempty"` |
|
} |
|
|
|
func (x *QueryRoutesResponse) Reset() { |
|
*x = QueryRoutesResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[84] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *QueryRoutesResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*QueryRoutesResponse) ProtoMessage() {} |
|
|
|
func (x *QueryRoutesResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[84] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use QueryRoutesResponse.ProtoReflect.Descriptor instead. |
|
func (*QueryRoutesResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{84} |
|
} |
|
|
|
func (x *QueryRoutesResponse) GetRoutes() []*Route { |
|
if x != nil { |
|
return x.Routes |
|
} |
|
return nil |
|
} |
|
|
|
func (x *QueryRoutesResponse) GetSuccessProb() float64 { |
|
if x != nil { |
|
return x.SuccessProb |
|
} |
|
return 0 |
|
} |
|
|
|
type Hop 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. |
|
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"` |
|
// Deprecated: Do not use. |
|
AmtToForward int64 `protobuf:"varint,3,opt,name=amt_to_forward,json=amtToForward,proto3" json:"amt_to_forward,omitempty"` |
|
// Deprecated: Do not use. |
|
Fee int64 `protobuf:"varint,4,opt,name=fee,proto3" json:"fee,omitempty"` |
|
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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
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"` |
|
} |
|
|
|
func (x *Hop) Reset() { |
|
*x = Hop{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[85] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *Hop) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*Hop) ProtoMessage() {} |
|
|
|
func (x *Hop) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[85] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use Hop.ProtoReflect.Descriptor instead. |
|
func (*Hop) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{85} |
|
} |
|
|
|
func (x *Hop) GetChanId() uint64 { |
|
if x != nil { |
|
return x.ChanId |
|
} |
|
return 0 |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *Hop) GetChanCapacity() int64 { |
|
if x != nil { |
|
return x.ChanCapacity |
|
} |
|
return 0 |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *Hop) GetAmtToForward() int64 { |
|
if x != nil { |
|
return x.AmtToForward |
|
} |
|
return 0 |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *Hop) GetFee() int64 { |
|
if x != nil { |
|
return x.Fee |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Hop) GetExpiry() uint32 { |
|
if x != nil { |
|
return x.Expiry |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Hop) GetAmtToForwardMsat() int64 { |
|
if x != nil { |
|
return x.AmtToForwardMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Hop) GetFeeMsat() int64 { |
|
if x != nil { |
|
return x.FeeMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Hop) GetPubKey() string { |
|
if x != nil { |
|
return x.PubKey |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Hop) GetTlvPayload() bool { |
|
if x != nil { |
|
return x.TlvPayload |
|
} |
|
return false |
|
} |
|
|
|
func (x *Hop) GetMppRecord() *MPPRecord { |
|
if x != nil { |
|
return x.MppRecord |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Hop) GetAmpRecord() *AMPRecord { |
|
if x != nil { |
|
return x.AmpRecord |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Hop) GetCustomRecords() map[uint64][]byte { |
|
if x != nil { |
|
return x.CustomRecords |
|
} |
|
return nil |
|
} |
|
|
|
type MPPRecord struct { |
|
state protoimpl.MessageState |
|
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. |
|
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. |
|
TotalAmtMsat int64 `protobuf:"varint,10,opt,name=total_amt_msat,json=totalAmtMsat,proto3" json:"total_amt_msat,omitempty"` |
|
} |
|
|
|
func (x *MPPRecord) Reset() { |
|
*x = MPPRecord{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[86] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *MPPRecord) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*MPPRecord) ProtoMessage() {} |
|
|
|
func (x *MPPRecord) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[86] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use MPPRecord.ProtoReflect.Descriptor instead. |
|
func (*MPPRecord) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{86} |
|
} |
|
|
|
func (x *MPPRecord) GetPaymentAddr() []byte { |
|
if x != nil { |
|
return x.PaymentAddr |
|
} |
|
return nil |
|
} |
|
|
|
func (x *MPPRecord) GetTotalAmtMsat() int64 { |
|
if x != nil { |
|
return x.TotalAmtMsat |
|
} |
|
return 0 |
|
} |
|
|
|
type AMPRecord struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
RootShare []byte `protobuf:"bytes,1,opt,name=root_share,json=rootShare,proto3" json:"root_share,omitempty"` |
|
SetId []byte `protobuf:"bytes,2,opt,name=set_id,json=setId,proto3" json:"set_id,omitempty"` |
|
ChildIndex uint32 `protobuf:"varint,3,opt,name=child_index,json=childIndex,proto3" json:"child_index,omitempty"` |
|
} |
|
|
|
func (x *AMPRecord) Reset() { |
|
*x = AMPRecord{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[87] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *AMPRecord) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*AMPRecord) ProtoMessage() {} |
|
|
|
func (x *AMPRecord) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[87] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use AMPRecord.ProtoReflect.Descriptor instead. |
|
func (*AMPRecord) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{87} |
|
} |
|
|
|
func (x *AMPRecord) GetRootShare() []byte { |
|
if x != nil { |
|
return x.RootShare |
|
} |
|
return nil |
|
} |
|
|
|
func (x *AMPRecord) GetSetId() []byte { |
|
if x != nil { |
|
return x.SetId |
|
} |
|
return nil |
|
} |
|
|
|
func (x *AMPRecord) GetChildIndex() uint32 { |
|
if x != nil { |
|
return x.ChildIndex |
|
} |
|
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. |
|
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. |
|
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. |
|
// |
|
// 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. |
|
// |
|
// 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. |
|
Hops []*Hop `protobuf:"bytes,4,rep,name=hops,proto3" json:"hops,omitempty"` |
|
// |
|
//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. |
|
TotalAmtMsat int64 `protobuf:"varint,6,opt,name=total_amt_msat,json=totalAmtMsat,proto3" json:"total_amt_msat,omitempty"` |
|
} |
|
|
|
func (x *Route) Reset() { |
|
*x = Route{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[88] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *Route) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*Route) ProtoMessage() {} |
|
|
|
func (x *Route) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[88] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use Route.ProtoReflect.Descriptor instead. |
|
func (*Route) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{88} |
|
} |
|
|
|
func (x *Route) GetTotalTimeLock() uint32 { |
|
if x != nil { |
|
return x.TotalTimeLock |
|
} |
|
return 0 |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *Route) GetTotalFees() int64 { |
|
if x != nil { |
|
return x.TotalFees |
|
} |
|
return 0 |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *Route) GetTotalAmt() int64 { |
|
if x != nil { |
|
return x.TotalAmt |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Route) GetHops() []*Hop { |
|
if x != nil { |
|
return x.Hops |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Route) GetTotalFeesMsat() int64 { |
|
if x != nil { |
|
return x.TotalFeesMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Route) GetTotalAmtMsat() int64 { |
|
if x != nil { |
|
return x.TotalAmtMsat |
|
} |
|
return 0 |
|
} |
|
|
|
type NodeInfoRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The 33-byte hex-encoded compressed public of the target node |
|
PubKey string `protobuf:"bytes,1,opt,name=pub_key,json=pubKey,proto3" json:"pub_key,omitempty"` |
|
// If true, will include all known channels associated with the node. |
|
IncludeChannels bool `protobuf:"varint,2,opt,name=include_channels,json=includeChannels,proto3" json:"include_channels,omitempty"` |
|
} |
|
|
|
func (x *NodeInfoRequest) Reset() { |
|
*x = NodeInfoRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[89] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *NodeInfoRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*NodeInfoRequest) ProtoMessage() {} |
|
|
|
func (x *NodeInfoRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[89] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use NodeInfoRequest.ProtoReflect.Descriptor instead. |
|
func (*NodeInfoRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{89} |
|
} |
|
|
|
func (x *NodeInfoRequest) GetPubKey() string { |
|
if x != nil { |
|
return x.PubKey |
|
} |
|
return "" |
|
} |
|
|
|
func (x *NodeInfoRequest) GetIncludeChannels() bool { |
|
if x != nil { |
|
return x.IncludeChannels |
|
} |
|
return false |
|
} |
|
|
|
type NodeInfo struct { |
|
state protoimpl.MessageState |
|
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. |
|
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"` |
|
// The sum of all channels capacity for the node, denominated in satoshis. |
|
TotalCapacity int64 `protobuf:"varint,3,opt,name=total_capacity,json=totalCapacity,proto3" json:"total_capacity,omitempty"` |
|
// A list of all public channels for the node. |
|
Channels []*ChannelEdge `protobuf:"bytes,4,rep,name=channels,proto3" json:"channels,omitempty"` |
|
} |
|
|
|
func (x *NodeInfo) Reset() { |
|
*x = NodeInfo{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[90] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *NodeInfo) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*NodeInfo) ProtoMessage() {} |
|
|
|
func (x *NodeInfo) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[90] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use NodeInfo.ProtoReflect.Descriptor instead. |
|
func (*NodeInfo) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{90} |
|
} |
|
|
|
func (x *NodeInfo) GetNode() *LightningNode { |
|
if x != nil { |
|
return x.Node |
|
} |
|
return nil |
|
} |
|
|
|
func (x *NodeInfo) GetNumChannels() uint32 { |
|
if x != nil { |
|
return x.NumChannels |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *NodeInfo) GetTotalCapacity() int64 { |
|
if x != nil { |
|
return x.TotalCapacity |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *NodeInfo) GetChannels() []*ChannelEdge { |
|
if x != nil { |
|
return x.Channels |
|
} |
|
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. |
|
type LightningNode struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
LastUpdate uint32 `protobuf:"varint,1,opt,name=last_update,json=lastUpdate,proto3" json:"last_update,omitempty"` |
|
PubKey string `protobuf:"bytes,2,opt,name=pub_key,json=pubKey,proto3" json:"pub_key,omitempty"` |
|
Alias string `protobuf:"bytes,3,opt,name=alias,proto3" json:"alias,omitempty"` |
|
Addresses []*NodeAddress `protobuf:"bytes,4,rep,name=addresses,proto3" json:"addresses,omitempty"` |
|
Color string `protobuf:"bytes,5,opt,name=color,proto3" json:"color,omitempty"` |
|
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"` |
|
} |
|
|
|
func (x *LightningNode) Reset() { |
|
*x = LightningNode{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[91] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *LightningNode) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*LightningNode) ProtoMessage() {} |
|
|
|
func (x *LightningNode) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[91] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use LightningNode.ProtoReflect.Descriptor instead. |
|
func (*LightningNode) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{91} |
|
} |
|
|
|
func (x *LightningNode) GetLastUpdate() uint32 { |
|
if x != nil { |
|
return x.LastUpdate |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *LightningNode) GetPubKey() string { |
|
if x != nil { |
|
return x.PubKey |
|
} |
|
return "" |
|
} |
|
|
|
func (x *LightningNode) GetAlias() string { |
|
if x != nil { |
|
return x.Alias |
|
} |
|
return "" |
|
} |
|
|
|
func (x *LightningNode) GetAddresses() []*NodeAddress { |
|
if x != nil { |
|
return x.Addresses |
|
} |
|
return nil |
|
} |
|
|
|
func (x *LightningNode) GetColor() string { |
|
if x != nil { |
|
return x.Color |
|
} |
|
return "" |
|
} |
|
|
|
func (x *LightningNode) GetFeatures() map[uint32]*Feature { |
|
if x != nil { |
|
return x.Features |
|
} |
|
return nil |
|
} |
|
|
|
type NodeAddress struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
Network string `protobuf:"bytes,1,opt,name=network,proto3" json:"network,omitempty"` |
|
Addr string `protobuf:"bytes,2,opt,name=addr,proto3" json:"addr,omitempty"` |
|
} |
|
|
|
func (x *NodeAddress) Reset() { |
|
*x = NodeAddress{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[92] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *NodeAddress) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*NodeAddress) ProtoMessage() {} |
|
|
|
func (x *NodeAddress) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[92] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use NodeAddress.ProtoReflect.Descriptor instead. |
|
func (*NodeAddress) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{92} |
|
} |
|
|
|
func (x *NodeAddress) GetNetwork() string { |
|
if x != nil { |
|
return x.Network |
|
} |
|
return "" |
|
} |
|
|
|
func (x *NodeAddress) GetAddr() string { |
|
if x != nil { |
|
return x.Addr |
|
} |
|
return "" |
|
} |
|
|
|
type RoutingPolicy struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
TimeLockDelta uint32 `protobuf:"varint,1,opt,name=time_lock_delta,json=timeLockDelta,proto3" json:"time_lock_delta,omitempty"` |
|
MinHtlc int64 `protobuf:"varint,2,opt,name=min_htlc,json=minHtlc,proto3" json:"min_htlc,omitempty"` |
|
FeeBaseMsat int64 `protobuf:"varint,3,opt,name=fee_base_msat,json=feeBaseMsat,proto3" json:"fee_base_msat,omitempty"` |
|
FeeRateMilliMsat int64 `protobuf:"varint,4,opt,name=fee_rate_milli_msat,json=feeRateMilliMsat,proto3" json:"fee_rate_milli_msat,omitempty"` |
|
Disabled bool `protobuf:"varint,5,opt,name=disabled,proto3" json:"disabled,omitempty"` |
|
MaxHtlcMsat uint64 `protobuf:"varint,6,opt,name=max_htlc_msat,json=maxHtlcMsat,proto3" json:"max_htlc_msat,omitempty"` |
|
LastUpdate uint32 `protobuf:"varint,7,opt,name=last_update,json=lastUpdate,proto3" json:"last_update,omitempty"` |
|
} |
|
|
|
func (x *RoutingPolicy) Reset() { |
|
*x = RoutingPolicy{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[93] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *RoutingPolicy) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*RoutingPolicy) ProtoMessage() {} |
|
|
|
func (x *RoutingPolicy) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[93] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use RoutingPolicy.ProtoReflect.Descriptor instead. |
|
func (*RoutingPolicy) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{93} |
|
} |
|
|
|
func (x *RoutingPolicy) GetTimeLockDelta() uint32 { |
|
if x != nil { |
|
return x.TimeLockDelta |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *RoutingPolicy) GetMinHtlc() int64 { |
|
if x != nil { |
|
return x.MinHtlc |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *RoutingPolicy) GetFeeBaseMsat() int64 { |
|
if x != nil { |
|
return x.FeeBaseMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *RoutingPolicy) GetFeeRateMilliMsat() int64 { |
|
if x != nil { |
|
return x.FeeRateMilliMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *RoutingPolicy) GetDisabled() bool { |
|
if x != nil { |
|
return x.Disabled |
|
} |
|
return false |
|
} |
|
|
|
func (x *RoutingPolicy) GetMaxHtlcMsat() uint64 { |
|
if x != nil { |
|
return x.MaxHtlcMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *RoutingPolicy) GetLastUpdate() uint32 { |
|
if x != nil { |
|
return x.LastUpdate |
|
} |
|
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. |
|
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. |
|
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. |
|
LastUpdate uint32 `protobuf:"varint,3,opt,name=last_update,json=lastUpdate,proto3" json:"last_update,omitempty"` |
|
Node1Pub string `protobuf:"bytes,4,opt,name=node1_pub,json=node1Pub,proto3" json:"node1_pub,omitempty"` |
|
Node2Pub string `protobuf:"bytes,5,opt,name=node2_pub,json=node2Pub,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,json=node1Policy,proto3" json:"node1_policy,omitempty"` |
|
Node2Policy *RoutingPolicy `protobuf:"bytes,8,opt,name=node2_policy,json=node2Policy,proto3" json:"node2_policy,omitempty"` |
|
} |
|
|
|
func (x *ChannelEdge) Reset() { |
|
*x = ChannelEdge{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[94] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelEdge) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelEdge) ProtoMessage() {} |
|
|
|
func (x *ChannelEdge) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[94] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelEdge.ProtoReflect.Descriptor instead. |
|
func (*ChannelEdge) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{94} |
|
} |
|
|
|
func (x *ChannelEdge) GetChannelId() uint64 { |
|
if x != nil { |
|
return x.ChannelId |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelEdge) GetChanPoint() string { |
|
if x != nil { |
|
return x.ChanPoint |
|
} |
|
return "" |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *ChannelEdge) GetLastUpdate() uint32 { |
|
if x != nil { |
|
return x.LastUpdate |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelEdge) GetNode1Pub() string { |
|
if x != nil { |
|
return x.Node1Pub |
|
} |
|
return "" |
|
} |
|
|
|
func (x *ChannelEdge) GetNode2Pub() string { |
|
if x != nil { |
|
return x.Node2Pub |
|
} |
|
return "" |
|
} |
|
|
|
func (x *ChannelEdge) GetCapacity() int64 { |
|
if x != nil { |
|
return x.Capacity |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelEdge) GetNode1Policy() *RoutingPolicy { |
|
if x != nil { |
|
return x.Node1Policy |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelEdge) GetNode2Policy() *RoutingPolicy { |
|
if x != nil { |
|
return x.Node2Policy |
|
} |
|
return nil |
|
} |
|
|
|
type ChannelGraphRequest struct { |
|
state protoimpl.MessageState |
|
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. |
|
IncludeUnannounced bool `protobuf:"varint,1,opt,name=include_unannounced,json=includeUnannounced,proto3" json:"include_unannounced,omitempty"` |
|
} |
|
|
|
func (x *ChannelGraphRequest) Reset() { |
|
*x = ChannelGraphRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[95] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelGraphRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelGraphRequest) ProtoMessage() {} |
|
|
|
func (x *ChannelGraphRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[95] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelGraphRequest.ProtoReflect.Descriptor instead. |
|
func (*ChannelGraphRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{95} |
|
} |
|
|
|
func (x *ChannelGraphRequest) GetIncludeUnannounced() bool { |
|
if x != nil { |
|
return x.IncludeUnannounced |
|
} |
|
return false |
|
} |
|
|
|
// Returns a new instance of the directed channel graph. |
|
type ChannelGraph struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The list of `LightningNode`s in this channel graph |
|
Nodes []*LightningNode `protobuf:"bytes,1,rep,name=nodes,proto3" json:"nodes,omitempty"` |
|
// The list of `ChannelEdge`s in this channel graph |
|
Edges []*ChannelEdge `protobuf:"bytes,2,rep,name=edges,proto3" json:"edges,omitempty"` |
|
} |
|
|
|
func (x *ChannelGraph) Reset() { |
|
*x = ChannelGraph{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[96] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelGraph) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelGraph) ProtoMessage() {} |
|
|
|
func (x *ChannelGraph) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[96] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelGraph.ProtoReflect.Descriptor instead. |
|
func (*ChannelGraph) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{96} |
|
} |
|
|
|
func (x *ChannelGraph) GetNodes() []*LightningNode { |
|
if x != nil { |
|
return x.Nodes |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelGraph) GetEdges() []*ChannelEdge { |
|
if x != nil { |
|
return x.Edges |
|
} |
|
return nil |
|
} |
|
|
|
type NodeMetricsRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The requested node metrics. |
|
Types []NodeMetricType `protobuf:"varint,1,rep,packed,name=types,proto3,enum=lnrpc.NodeMetricType" json:"types,omitempty"` |
|
} |
|
|
|
func (x *NodeMetricsRequest) Reset() { |
|
*x = NodeMetricsRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[97] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *NodeMetricsRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*NodeMetricsRequest) ProtoMessage() {} |
|
|
|
func (x *NodeMetricsRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[97] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use NodeMetricsRequest.ProtoReflect.Descriptor instead. |
|
func (*NodeMetricsRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{97} |
|
} |
|
|
|
func (x *NodeMetricsRequest) GetTypes() []NodeMetricType { |
|
if x != nil { |
|
return x.Types |
|
} |
|
return nil |
|
} |
|
|
|
type NodeMetricsResponse struct { |
|
state protoimpl.MessageState |
|
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. |
|
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"` |
|
} |
|
|
|
func (x *NodeMetricsResponse) Reset() { |
|
*x = NodeMetricsResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[98] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *NodeMetricsResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*NodeMetricsResponse) ProtoMessage() {} |
|
|
|
func (x *NodeMetricsResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[98] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use NodeMetricsResponse.ProtoReflect.Descriptor instead. |
|
func (*NodeMetricsResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{98} |
|
} |
|
|
|
func (x *NodeMetricsResponse) GetBetweennessCentrality() map[string]*FloatMetric { |
|
if x != nil { |
|
return x.BetweennessCentrality |
|
} |
|
return nil |
|
} |
|
|
|
type FloatMetric struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Arbitrary float value. |
|
Value float64 `protobuf:"fixed64,1,opt,name=value,proto3" json:"value,omitempty"` |
|
// The value normalized to [0,1] or [-1,1]. |
|
NormalizedValue float64 `protobuf:"fixed64,2,opt,name=normalized_value,json=normalizedValue,proto3" json:"normalized_value,omitempty"` |
|
} |
|
|
|
func (x *FloatMetric) Reset() { |
|
*x = FloatMetric{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[99] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *FloatMetric) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*FloatMetric) ProtoMessage() {} |
|
|
|
func (x *FloatMetric) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[99] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use FloatMetric.ProtoReflect.Descriptor instead. |
|
func (*FloatMetric) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{99} |
|
} |
|
|
|
func (x *FloatMetric) GetValue() float64 { |
|
if x != nil { |
|
return x.Value |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *FloatMetric) GetNormalizedValue() float64 { |
|
if x != nil { |
|
return x.NormalizedValue |
|
} |
|
return 0 |
|
} |
|
|
|
type ChanInfoRequest 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. |
|
ChanId uint64 `protobuf:"varint,1,opt,name=chan_id,json=chanId,proto3" json:"chan_id,omitempty"` |
|
} |
|
|
|
func (x *ChanInfoRequest) Reset() { |
|
*x = ChanInfoRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[100] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChanInfoRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChanInfoRequest) ProtoMessage() {} |
|
|
|
func (x *ChanInfoRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[100] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChanInfoRequest.ProtoReflect.Descriptor instead. |
|
func (*ChanInfoRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{100} |
|
} |
|
|
|
func (x *ChanInfoRequest) GetChanId() uint64 { |
|
if x != nil { |
|
return x.ChanId |
|
} |
|
return 0 |
|
} |
|
|
|
type NetworkInfoRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *NetworkInfoRequest) Reset() { |
|
*x = NetworkInfoRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[101] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *NetworkInfoRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*NetworkInfoRequest) ProtoMessage() {} |
|
|
|
func (x *NetworkInfoRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[101] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use NetworkInfoRequest.ProtoReflect.Descriptor instead. |
|
func (*NetworkInfoRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{101} |
|
} |
|
|
|
type NetworkInfo struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
GraphDiameter uint32 `protobuf:"varint,1,opt,name=graph_diameter,json=graphDiameter,proto3" json:"graph_diameter,omitempty"` |
|
AvgOutDegree float64 `protobuf:"fixed64,2,opt,name=avg_out_degree,json=avgOutDegree,proto3" json:"avg_out_degree,omitempty"` |
|
MaxOutDegree uint32 `protobuf:"varint,3,opt,name=max_out_degree,json=maxOutDegree,proto3" json:"max_out_degree,omitempty"` |
|
NumNodes uint32 `protobuf:"varint,4,opt,name=num_nodes,json=numNodes,proto3" json:"num_nodes,omitempty"` |
|
NumChannels uint32 `protobuf:"varint,5,opt,name=num_channels,json=numChannels,proto3" json:"num_channels,omitempty"` |
|
TotalNetworkCapacity int64 `protobuf:"varint,6,opt,name=total_network_capacity,json=totalNetworkCapacity,proto3" json:"total_network_capacity,omitempty"` |
|
AvgChannelSize float64 `protobuf:"fixed64,7,opt,name=avg_channel_size,json=avgChannelSize,proto3" json:"avg_channel_size,omitempty"` |
|
MinChannelSize int64 `protobuf:"varint,8,opt,name=min_channel_size,json=minChannelSize,proto3" json:"min_channel_size,omitempty"` |
|
MaxChannelSize int64 `protobuf:"varint,9,opt,name=max_channel_size,json=maxChannelSize,proto3" json:"max_channel_size,omitempty"` |
|
MedianChannelSizeSat int64 `protobuf:"varint,10,opt,name=median_channel_size_sat,json=medianChannelSizeSat,proto3" json:"median_channel_size_sat,omitempty"` |
|
// The number of edges marked as zombies. |
|
NumZombieChans uint64 `protobuf:"varint,11,opt,name=num_zombie_chans,json=numZombieChans,proto3" json:"num_zombie_chans,omitempty"` |
|
} |
|
|
|
func (x *NetworkInfo) Reset() { |
|
*x = NetworkInfo{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[102] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *NetworkInfo) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*NetworkInfo) ProtoMessage() {} |
|
|
|
func (x *NetworkInfo) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[102] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use NetworkInfo.ProtoReflect.Descriptor instead. |
|
func (*NetworkInfo) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{102} |
|
} |
|
|
|
func (x *NetworkInfo) GetGraphDiameter() uint32 { |
|
if x != nil { |
|
return x.GraphDiameter |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *NetworkInfo) GetAvgOutDegree() float64 { |
|
if x != nil { |
|
return x.AvgOutDegree |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *NetworkInfo) GetMaxOutDegree() uint32 { |
|
if x != nil { |
|
return x.MaxOutDegree |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *NetworkInfo) GetNumNodes() uint32 { |
|
if x != nil { |
|
return x.NumNodes |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *NetworkInfo) GetNumChannels() uint32 { |
|
if x != nil { |
|
return x.NumChannels |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *NetworkInfo) GetTotalNetworkCapacity() int64 { |
|
if x != nil { |
|
return x.TotalNetworkCapacity |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *NetworkInfo) GetAvgChannelSize() float64 { |
|
if x != nil { |
|
return x.AvgChannelSize |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *NetworkInfo) GetMinChannelSize() int64 { |
|
if x != nil { |
|
return x.MinChannelSize |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *NetworkInfo) GetMaxChannelSize() int64 { |
|
if x != nil { |
|
return x.MaxChannelSize |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *NetworkInfo) GetMedianChannelSizeSat() int64 { |
|
if x != nil { |
|
return x.MedianChannelSizeSat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *NetworkInfo) GetNumZombieChans() uint64 { |
|
if x != nil { |
|
return x.NumZombieChans |
|
} |
|
return 0 |
|
} |
|
|
|
type StopRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *StopRequest) Reset() { |
|
*x = StopRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[103] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *StopRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*StopRequest) ProtoMessage() {} |
|
|
|
func (x *StopRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[103] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use StopRequest.ProtoReflect.Descriptor instead. |
|
func (*StopRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{103} |
|
} |
|
|
|
type StopResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *StopResponse) Reset() { |
|
*x = StopResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[104] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *StopResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*StopResponse) ProtoMessage() {} |
|
|
|
func (x *StopResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[104] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use StopResponse.ProtoReflect.Descriptor instead. |
|
func (*StopResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{104} |
|
} |
|
|
|
type GraphTopologySubscription struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *GraphTopologySubscription) Reset() { |
|
*x = GraphTopologySubscription{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[105] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *GraphTopologySubscription) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*GraphTopologySubscription) ProtoMessage() {} |
|
|
|
func (x *GraphTopologySubscription) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[105] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use GraphTopologySubscription.ProtoReflect.Descriptor instead. |
|
func (*GraphTopologySubscription) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{105} |
|
} |
|
|
|
type GraphTopologyUpdate struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
NodeUpdates []*NodeUpdate `protobuf:"bytes,1,rep,name=node_updates,json=nodeUpdates,proto3" json:"node_updates,omitempty"` |
|
ChannelUpdates []*ChannelEdgeUpdate `protobuf:"bytes,2,rep,name=channel_updates,json=channelUpdates,proto3" json:"channel_updates,omitempty"` |
|
ClosedChans []*ClosedChannelUpdate `protobuf:"bytes,3,rep,name=closed_chans,json=closedChans,proto3" json:"closed_chans,omitempty"` |
|
} |
|
|
|
func (x *GraphTopologyUpdate) Reset() { |
|
*x = GraphTopologyUpdate{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[106] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *GraphTopologyUpdate) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*GraphTopologyUpdate) ProtoMessage() {} |
|
|
|
func (x *GraphTopologyUpdate) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[106] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use GraphTopologyUpdate.ProtoReflect.Descriptor instead. |
|
func (*GraphTopologyUpdate) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{106} |
|
} |
|
|
|
func (x *GraphTopologyUpdate) GetNodeUpdates() []*NodeUpdate { |
|
if x != nil { |
|
return x.NodeUpdates |
|
} |
|
return nil |
|
} |
|
|
|
func (x *GraphTopologyUpdate) GetChannelUpdates() []*ChannelEdgeUpdate { |
|
if x != nil { |
|
return x.ChannelUpdates |
|
} |
|
return nil |
|
} |
|
|
|
func (x *GraphTopologyUpdate) GetClosedChans() []*ClosedChannelUpdate { |
|
if x != nil { |
|
return x.ClosedChans |
|
} |
|
return nil |
|
} |
|
|
|
type NodeUpdate struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// |
|
//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: 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 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"` |
|
} |
|
|
|
func (x *NodeUpdate) Reset() { |
|
*x = NodeUpdate{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[107] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *NodeUpdate) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*NodeUpdate) ProtoMessage() {} |
|
|
|
func (x *NodeUpdate) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[107] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use NodeUpdate.ProtoReflect.Descriptor instead. |
|
func (*NodeUpdate) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{107} |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *NodeUpdate) GetAddresses() []string { |
|
if x != nil { |
|
return x.Addresses |
|
} |
|
return nil |
|
} |
|
|
|
func (x *NodeUpdate) GetIdentityKey() string { |
|
if x != nil { |
|
return x.IdentityKey |
|
} |
|
return "" |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *NodeUpdate) GetGlobalFeatures() []byte { |
|
if x != nil { |
|
return x.GlobalFeatures |
|
} |
|
return nil |
|
} |
|
|
|
func (x *NodeUpdate) GetAlias() string { |
|
if x != nil { |
|
return x.Alias |
|
} |
|
return "" |
|
} |
|
|
|
func (x *NodeUpdate) GetColor() string { |
|
if x != nil { |
|
return x.Color |
|
} |
|
return "" |
|
} |
|
|
|
func (x *NodeUpdate) GetNodeAddresses() []*NodeAddress { |
|
if x != nil { |
|
return x.NodeAddresses |
|
} |
|
return nil |
|
} |
|
|
|
func (x *NodeUpdate) GetFeatures() map[uint32]*Feature { |
|
if x != nil { |
|
return x.Features |
|
} |
|
return nil |
|
} |
|
|
|
type ChannelEdgeUpdate 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. |
|
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"` |
|
} |
|
|
|
func (x *ChannelEdgeUpdate) Reset() { |
|
*x = ChannelEdgeUpdate{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[108] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelEdgeUpdate) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelEdgeUpdate) ProtoMessage() {} |
|
|
|
func (x *ChannelEdgeUpdate) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[108] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelEdgeUpdate.ProtoReflect.Descriptor instead. |
|
func (*ChannelEdgeUpdate) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{108} |
|
} |
|
|
|
func (x *ChannelEdgeUpdate) GetChanId() uint64 { |
|
if x != nil { |
|
return x.ChanId |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelEdgeUpdate) GetChanPoint() *ChannelPoint { |
|
if x != nil { |
|
return x.ChanPoint |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelEdgeUpdate) GetCapacity() int64 { |
|
if x != nil { |
|
return x.Capacity |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelEdgeUpdate) GetRoutingPolicy() *RoutingPolicy { |
|
if x != nil { |
|
return x.RoutingPolicy |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelEdgeUpdate) GetAdvertisingNode() string { |
|
if x != nil { |
|
return x.AdvertisingNode |
|
} |
|
return "" |
|
} |
|
|
|
func (x *ChannelEdgeUpdate) GetConnectingNode() string { |
|
if x != nil { |
|
return x.ConnectingNode |
|
} |
|
return "" |
|
} |
|
|
|
type ClosedChannelUpdate 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. |
|
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"` |
|
ChanPoint *ChannelPoint `protobuf:"bytes,4,opt,name=chan_point,json=chanPoint,proto3" json:"chan_point,omitempty"` |
|
} |
|
|
|
func (x *ClosedChannelUpdate) Reset() { |
|
*x = ClosedChannelUpdate{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[109] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ClosedChannelUpdate) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ClosedChannelUpdate) ProtoMessage() {} |
|
|
|
func (x *ClosedChannelUpdate) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[109] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ClosedChannelUpdate.ProtoReflect.Descriptor instead. |
|
func (*ClosedChannelUpdate) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{109} |
|
} |
|
|
|
func (x *ClosedChannelUpdate) GetChanId() uint64 { |
|
if x != nil { |
|
return x.ChanId |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ClosedChannelUpdate) GetCapacity() int64 { |
|
if x != nil { |
|
return x.Capacity |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ClosedChannelUpdate) GetClosedHeight() uint32 { |
|
if x != nil { |
|
return x.ClosedHeight |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ClosedChannelUpdate) GetChanPoint() *ChannelPoint { |
|
if x != nil { |
|
return x.ChanPoint |
|
} |
|
return nil |
|
} |
|
|
|
type HopHint struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The public key of the node at the start of the channel. |
|
NodeId string `protobuf:"bytes,1,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"` |
|
// The unique identifier of the channel. |
|
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. |
|
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"` |
|
} |
|
|
|
func (x *HopHint) Reset() { |
|
*x = HopHint{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[110] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *HopHint) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*HopHint) ProtoMessage() {} |
|
|
|
func (x *HopHint) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[110] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use HopHint.ProtoReflect.Descriptor instead. |
|
func (*HopHint) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{110} |
|
} |
|
|
|
func (x *HopHint) GetNodeId() string { |
|
if x != nil { |
|
return x.NodeId |
|
} |
|
return "" |
|
} |
|
|
|
func (x *HopHint) GetChanId() uint64 { |
|
if x != nil { |
|
return x.ChanId |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *HopHint) GetFeeBaseMsat() uint32 { |
|
if x != nil { |
|
return x.FeeBaseMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *HopHint) GetFeeProportionalMillionths() uint32 { |
|
if x != nil { |
|
return x.FeeProportionalMillionths |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *HopHint) GetCltvExpiryDelta() uint32 { |
|
if x != nil { |
|
return x.CltvExpiryDelta |
|
} |
|
return 0 |
|
} |
|
|
|
type RouteHint struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// |
|
//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"` |
|
} |
|
|
|
func (x *RouteHint) Reset() { |
|
*x = RouteHint{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[111] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *RouteHint) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*RouteHint) ProtoMessage() {} |
|
|
|
func (x *RouteHint) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[111] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use RouteHint.ProtoReflect.Descriptor instead. |
|
func (*RouteHint) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{111} |
|
} |
|
|
|
func (x *RouteHint) GetHopHints() []*HopHint { |
|
if x != nil { |
|
return x.HopHints |
|
} |
|
return nil |
|
} |
|
|
|
type Invoice struct { |
|
state protoimpl.MessageState |
|
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. |
|
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. |
|
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. |
|
RHash []byte `protobuf:"bytes,4,opt,name=r_hash,json=rHash,proto3" json:"r_hash,omitempty"` |
|
// |
|
//The value of this invoice in satoshis |
|
// |
|
//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 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 |
|
// |
|
// Deprecated: Do not use. |
|
Settled bool `protobuf:"varint,6,opt,name=settled,proto3" json:"settled,omitempty"` |
|
// When this invoice was created |
|
CreationDate int64 `protobuf:"varint,7,opt,name=creation_date,json=creationDate,proto3" json:"creation_date,omitempty"` |
|
// When this invoice was settled |
|
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. |
|
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. |
|
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"` |
|
// Fallback on-chain address. |
|
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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
AmtPaidMsat int64 `protobuf:"varint,20,opt,name=amt_paid_msat,json=amtPaidMsat,proto3" json:"amt_paid_msat,omitempty"` |
|
// |
|
//The state the invoice is in. |
|
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]. |
|
Htlcs []*InvoiceHTLC `protobuf:"bytes,22,rep,name=htlcs,proto3" json:"htlcs,omitempty"` |
|
// List of features advertised on the 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]. |
|
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 invoies that always require the MPP paylaod |
|
//for added end-to-end security. |
|
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. |
|
IsAmp bool `protobuf:"varint,27,opt,name=is_amp,json=isAmp,proto3" json:"is_amp,omitempty"` |
|
} |
|
|
|
func (x *Invoice) Reset() { |
|
*x = Invoice{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[112] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *Invoice) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*Invoice) ProtoMessage() {} |
|
|
|
func (x *Invoice) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[112] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use Invoice.ProtoReflect.Descriptor instead. |
|
func (*Invoice) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{112} |
|
} |
|
|
|
func (x *Invoice) GetMemo() string { |
|
if x != nil { |
|
return x.Memo |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Invoice) GetRPreimage() []byte { |
|
if x != nil { |
|
return x.RPreimage |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Invoice) GetRHash() []byte { |
|
if x != nil { |
|
return x.RHash |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Invoice) GetValue() int64 { |
|
if x != nil { |
|
return x.Value |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Invoice) GetValueMsat() int64 { |
|
if x != nil { |
|
return x.ValueMsat |
|
} |
|
return 0 |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *Invoice) GetSettled() bool { |
|
if x != nil { |
|
return x.Settled |
|
} |
|
return false |
|
} |
|
|
|
func (x *Invoice) GetCreationDate() int64 { |
|
if x != nil { |
|
return x.CreationDate |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Invoice) GetSettleDate() int64 { |
|
if x != nil { |
|
return x.SettleDate |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Invoice) GetPaymentRequest() string { |
|
if x != nil { |
|
return x.PaymentRequest |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Invoice) GetDescriptionHash() []byte { |
|
if x != nil { |
|
return x.DescriptionHash |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Invoice) GetExpiry() int64 { |
|
if x != nil { |
|
return x.Expiry |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Invoice) GetFallbackAddr() string { |
|
if x != nil { |
|
return x.FallbackAddr |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Invoice) GetCltvExpiry() uint64 { |
|
if x != nil { |
|
return x.CltvExpiry |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Invoice) GetRouteHints() []*RouteHint { |
|
if x != nil { |
|
return x.RouteHints |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Invoice) GetPrivate() bool { |
|
if x != nil { |
|
return x.Private |
|
} |
|
return false |
|
} |
|
|
|
func (x *Invoice) GetAddIndex() uint64 { |
|
if x != nil { |
|
return x.AddIndex |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Invoice) GetSettleIndex() uint64 { |
|
if x != nil { |
|
return x.SettleIndex |
|
} |
|
return 0 |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *Invoice) GetAmtPaid() int64 { |
|
if x != nil { |
|
return x.AmtPaid |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Invoice) GetAmtPaidSat() int64 { |
|
if x != nil { |
|
return x.AmtPaidSat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Invoice) GetAmtPaidMsat() int64 { |
|
if x != nil { |
|
return x.AmtPaidMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Invoice) GetState() Invoice_InvoiceState { |
|
if x != nil { |
|
return x.State |
|
} |
|
return Invoice_OPEN |
|
} |
|
|
|
func (x *Invoice) GetHtlcs() []*InvoiceHTLC { |
|
if x != nil { |
|
return x.Htlcs |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Invoice) GetFeatures() map[uint32]*Feature { |
|
if x != nil { |
|
return x.Features |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Invoice) GetIsKeysend() bool { |
|
if x != nil { |
|
return x.IsKeysend |
|
} |
|
return false |
|
} |
|
|
|
func (x *Invoice) GetPaymentAddr() []byte { |
|
if x != nil { |
|
return x.PaymentAddr |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Invoice) GetIsAmp() bool { |
|
if x != nil { |
|
return x.IsAmp |
|
} |
|
return false |
|
} |
|
|
|
// Details of an HTLC that paid to an invoice |
|
type InvoiceHTLC struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Short channel id over which the htlc was received. |
|
ChanId uint64 `protobuf:"varint,1,opt,name=chan_id,json=chanId,proto3" json:"chan_id,omitempty"` |
|
// Index identifying the htlc on the channel. |
|
HtlcIndex uint64 `protobuf:"varint,2,opt,name=htlc_index,json=htlcIndex,proto3" json:"htlc_index,omitempty"` |
|
// The amount of the htlc in msat. |
|
AmtMsat uint64 `protobuf:"varint,3,opt,name=amt_msat,json=amtMsat,proto3" json:"amt_msat,omitempty"` |
|
// Block height at which this htlc was accepted. |
|
AcceptHeight int32 `protobuf:"varint,4,opt,name=accept_height,json=acceptHeight,proto3" json:"accept_height,omitempty"` |
|
// Time at which this htlc was accepted. |
|
AcceptTime int64 `protobuf:"varint,5,opt,name=accept_time,json=acceptTime,proto3" json:"accept_time,omitempty"` |
|
// Time at which this htlc was settled or canceled. |
|
ResolveTime int64 `protobuf:"varint,6,opt,name=resolve_time,json=resolveTime,proto3" json:"resolve_time,omitempty"` |
|
// Block height at which this htlc expires. |
|
ExpiryHeight int32 `protobuf:"varint,7,opt,name=expiry_height,json=expiryHeight,proto3" json:"expiry_height,omitempty"` |
|
// Current state the htlc is in. |
|
State InvoiceHTLCState `protobuf:"varint,8,opt,name=state,proto3,enum=lnrpc.InvoiceHTLCState" json:"state,omitempty"` |
|
// Custom tlv records. |
|
CustomRecords map[uint64][]byte `protobuf:"bytes,9,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 total amount of the mpp payment in msat. |
|
MppTotalAmtMsat uint64 `protobuf:"varint,10,opt,name=mpp_total_amt_msat,json=mppTotalAmtMsat,proto3" json:"mpp_total_amt_msat,omitempty"` |
|
// Details relevant to AMP HTLCs, only populated if this is an AMP HTLC. |
|
Amp *AMP `protobuf:"bytes,11,opt,name=amp,proto3" json:"amp,omitempty"` |
|
} |
|
|
|
func (x *InvoiceHTLC) Reset() { |
|
*x = InvoiceHTLC{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[113] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *InvoiceHTLC) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*InvoiceHTLC) ProtoMessage() {} |
|
|
|
func (x *InvoiceHTLC) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[113] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use InvoiceHTLC.ProtoReflect.Descriptor instead. |
|
func (*InvoiceHTLC) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{113} |
|
} |
|
|
|
func (x *InvoiceHTLC) GetChanId() uint64 { |
|
if x != nil { |
|
return x.ChanId |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *InvoiceHTLC) GetHtlcIndex() uint64 { |
|
if x != nil { |
|
return x.HtlcIndex |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *InvoiceHTLC) GetAmtMsat() uint64 { |
|
if x != nil { |
|
return x.AmtMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *InvoiceHTLC) GetAcceptHeight() int32 { |
|
if x != nil { |
|
return x.AcceptHeight |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *InvoiceHTLC) GetAcceptTime() int64 { |
|
if x != nil { |
|
return x.AcceptTime |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *InvoiceHTLC) GetResolveTime() int64 { |
|
if x != nil { |
|
return x.ResolveTime |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *InvoiceHTLC) GetExpiryHeight() int32 { |
|
if x != nil { |
|
return x.ExpiryHeight |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *InvoiceHTLC) GetState() InvoiceHTLCState { |
|
if x != nil { |
|
return x.State |
|
} |
|
return InvoiceHTLCState_ACCEPTED |
|
} |
|
|
|
func (x *InvoiceHTLC) GetCustomRecords() map[uint64][]byte { |
|
if x != nil { |
|
return x.CustomRecords |
|
} |
|
return nil |
|
} |
|
|
|
func (x *InvoiceHTLC) GetMppTotalAmtMsat() uint64 { |
|
if x != nil { |
|
return x.MppTotalAmtMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *InvoiceHTLC) GetAmp() *AMP { |
|
if x != nil { |
|
return x.Amp |
|
} |
|
return nil |
|
} |
|
|
|
// Details specific to AMP HTLCs. |
|
type AMP struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// An n-of-n secret share of the root seed from which child payment hashes |
|
// and preimages are derived. |
|
RootShare []byte `protobuf:"bytes,1,opt,name=root_share,json=rootShare,proto3" json:"root_share,omitempty"` |
|
// An identifier for the HTLC set that this HTLC belongs to. |
|
SetId []byte `protobuf:"bytes,2,opt,name=set_id,json=setId,proto3" json:"set_id,omitempty"` |
|
// A nonce used to randomize the child preimage and child hash from a given |
|
// root_share. |
|
ChildIndex uint32 `protobuf:"varint,3,opt,name=child_index,json=childIndex,proto3" json:"child_index,omitempty"` |
|
// The payment hash of the AMP HTLC. |
|
Hash []byte `protobuf:"bytes,4,opt,name=hash,proto3" json:"hash,omitempty"` |
|
// The preimage used to settle this AMP htlc. This field will only be |
|
// populated if the invoice is in InvoiceState_ACCEPTED or |
|
// InvoiceState_SETTLED. |
|
Preimage []byte `protobuf:"bytes,5,opt,name=preimage,proto3" json:"preimage,omitempty"` |
|
} |
|
|
|
func (x *AMP) Reset() { |
|
*x = AMP{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[114] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *AMP) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*AMP) ProtoMessage() {} |
|
|
|
func (x *AMP) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[114] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use AMP.ProtoReflect.Descriptor instead. |
|
func (*AMP) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{114} |
|
} |
|
|
|
func (x *AMP) GetRootShare() []byte { |
|
if x != nil { |
|
return x.RootShare |
|
} |
|
return nil |
|
} |
|
|
|
func (x *AMP) GetSetId() []byte { |
|
if x != nil { |
|
return x.SetId |
|
} |
|
return nil |
|
} |
|
|
|
func (x *AMP) GetChildIndex() uint32 { |
|
if x != nil { |
|
return x.ChildIndex |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *AMP) GetHash() []byte { |
|
if x != nil { |
|
return x.Hash |
|
} |
|
return nil |
|
} |
|
|
|
func (x *AMP) GetPreimage() []byte { |
|
if x != nil { |
|
return x.Preimage |
|
} |
|
return nil |
|
} |
|
|
|
type AddInvoiceResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
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. |
|
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. |
|
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. |
|
PaymentAddr []byte `protobuf:"bytes,17,opt,name=payment_addr,json=paymentAddr,proto3" json:"payment_addr,omitempty"` |
|
} |
|
|
|
func (x *AddInvoiceResponse) Reset() { |
|
*x = AddInvoiceResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[115] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *AddInvoiceResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*AddInvoiceResponse) ProtoMessage() {} |
|
|
|
func (x *AddInvoiceResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[115] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use AddInvoiceResponse.ProtoReflect.Descriptor instead. |
|
func (*AddInvoiceResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{115} |
|
} |
|
|
|
func (x *AddInvoiceResponse) GetRHash() []byte { |
|
if x != nil { |
|
return x.RHash |
|
} |
|
return nil |
|
} |
|
|
|
func (x *AddInvoiceResponse) GetPaymentRequest() string { |
|
if x != nil { |
|
return x.PaymentRequest |
|
} |
|
return "" |
|
} |
|
|
|
func (x *AddInvoiceResponse) GetAddIndex() uint64 { |
|
if x != nil { |
|
return x.AddIndex |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *AddInvoiceResponse) GetPaymentAddr() []byte { |
|
if x != nil { |
|
return x.PaymentAddr |
|
} |
|
return nil |
|
} |
|
|
|
type PaymentHash struct { |
|
state protoimpl.MessageState |
|
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. |
|
// |
|
// 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. |
|
RHash []byte `protobuf:"bytes,2,opt,name=r_hash,json=rHash,proto3" json:"r_hash,omitempty"` |
|
} |
|
|
|
func (x *PaymentHash) Reset() { |
|
*x = PaymentHash{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[116] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *PaymentHash) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*PaymentHash) ProtoMessage() {} |
|
|
|
func (x *PaymentHash) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[116] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use PaymentHash.ProtoReflect.Descriptor instead. |
|
func (*PaymentHash) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{116} |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *PaymentHash) GetRHashStr() string { |
|
if x != nil { |
|
return x.RHashStr |
|
} |
|
return "" |
|
} |
|
|
|
func (x *PaymentHash) GetRHash() []byte { |
|
if x != nil { |
|
return x.RHash |
|
} |
|
return nil |
|
} |
|
|
|
type ListInvoiceRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// |
|
//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. |
|
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. |
|
Reversed bool `protobuf:"varint,6,opt,name=reversed,proto3" json:"reversed,omitempty"` |
|
} |
|
|
|
func (x *ListInvoiceRequest) Reset() { |
|
*x = ListInvoiceRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[117] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ListInvoiceRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ListInvoiceRequest) ProtoMessage() {} |
|
|
|
func (x *ListInvoiceRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[117] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ListInvoiceRequest.ProtoReflect.Descriptor instead. |
|
func (*ListInvoiceRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{117} |
|
} |
|
|
|
func (x *ListInvoiceRequest) GetPendingOnly() bool { |
|
if x != nil { |
|
return x.PendingOnly |
|
} |
|
return false |
|
} |
|
|
|
func (x *ListInvoiceRequest) GetIndexOffset() uint64 { |
|
if x != nil { |
|
return x.IndexOffset |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ListInvoiceRequest) GetNumMaxInvoices() uint64 { |
|
if x != nil { |
|
return x.NumMaxInvoices |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ListInvoiceRequest) GetReversed() bool { |
|
if x != nil { |
|
return x.Reversed |
|
} |
|
return false |
|
} |
|
|
|
type ListInvoiceResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// |
|
//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. |
|
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. |
|
FirstIndexOffset uint64 `protobuf:"varint,3,opt,name=first_index_offset,json=firstIndexOffset,proto3" json:"first_index_offset,omitempty"` |
|
} |
|
|
|
func (x *ListInvoiceResponse) Reset() { |
|
*x = ListInvoiceResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[118] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ListInvoiceResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ListInvoiceResponse) ProtoMessage() {} |
|
|
|
func (x *ListInvoiceResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[118] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ListInvoiceResponse.ProtoReflect.Descriptor instead. |
|
func (*ListInvoiceResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{118} |
|
} |
|
|
|
func (x *ListInvoiceResponse) GetInvoices() []*Invoice { |
|
if x != nil { |
|
return x.Invoices |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ListInvoiceResponse) GetLastIndexOffset() uint64 { |
|
if x != nil { |
|
return x.LastIndexOffset |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ListInvoiceResponse) GetFirstIndexOffset() uint64 { |
|
if x != nil { |
|
return x.FirstIndexOffset |
|
} |
|
return 0 |
|
} |
|
|
|
type InvoiceSubscription struct { |
|
state protoimpl.MessageState |
|
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. |
|
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. |
|
SettleIndex uint64 `protobuf:"varint,2,opt,name=settle_index,json=settleIndex,proto3" json:"settle_index,omitempty"` |
|
} |
|
|
|
func (x *InvoiceSubscription) Reset() { |
|
*x = InvoiceSubscription{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[119] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *InvoiceSubscription) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*InvoiceSubscription) ProtoMessage() {} |
|
|
|
func (x *InvoiceSubscription) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[119] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use InvoiceSubscription.ProtoReflect.Descriptor instead. |
|
func (*InvoiceSubscription) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{119} |
|
} |
|
|
|
func (x *InvoiceSubscription) GetAddIndex() uint64 { |
|
if x != nil { |
|
return x.AddIndex |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *InvoiceSubscription) GetSettleIndex() uint64 { |
|
if x != nil { |
|
return x.SettleIndex |
|
} |
|
return 0 |
|
} |
|
|
|
type Payment struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The payment hash |
|
PaymentHash string `protobuf:"bytes,1,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"` |
|
// Deprecated, use value_sat or value_msat. |
|
// |
|
// Deprecated: Do not use. |
|
Value int64 `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"` |
|
// Deprecated, use creation_time_ns |
|
// |
|
// Deprecated: Do not use. |
|
CreationDate int64 `protobuf:"varint,3,opt,name=creation_date,json=creationDate,proto3" json:"creation_date,omitempty"` |
|
// Deprecated, use fee_sat or fee_msat. |
|
// |
|
// Deprecated: Do not use. |
|
Fee int64 `protobuf:"varint,5,opt,name=fee,proto3" json:"fee,omitempty"` |
|
// The payment preimage |
|
PaymentPreimage string `protobuf:"bytes,6,opt,name=payment_preimage,json=paymentPreimage,proto3" json:"payment_preimage,omitempty"` |
|
// The value of the payment in satoshis |
|
ValueSat int64 `protobuf:"varint,7,opt,name=value_sat,json=valueSat,proto3" json:"value_sat,omitempty"` |
|
// The value of the payment in milli-satoshis |
|
ValueMsat int64 `protobuf:"varint,8,opt,name=value_msat,json=valueMsat,proto3" json:"value_msat,omitempty"` |
|
// The optional payment request being fulfilled. |
|
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 |
|
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 |
|
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. |
|
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"` |
|
} |
|
|
|
func (x *Payment) Reset() { |
|
*x = Payment{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[120] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *Payment) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*Payment) ProtoMessage() {} |
|
|
|
func (x *Payment) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[120] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use Payment.ProtoReflect.Descriptor instead. |
|
func (*Payment) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{120} |
|
} |
|
|
|
func (x *Payment) GetPaymentHash() string { |
|
if x != nil { |
|
return x.PaymentHash |
|
} |
|
return "" |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *Payment) GetValue() int64 { |
|
if x != nil { |
|
return x.Value |
|
} |
|
return 0 |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *Payment) GetCreationDate() int64 { |
|
if x != nil { |
|
return x.CreationDate |
|
} |
|
return 0 |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *Payment) GetFee() int64 { |
|
if x != nil { |
|
return x.Fee |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Payment) GetPaymentPreimage() string { |
|
if x != nil { |
|
return x.PaymentPreimage |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Payment) GetValueSat() int64 { |
|
if x != nil { |
|
return x.ValueSat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Payment) GetValueMsat() int64 { |
|
if x != nil { |
|
return x.ValueMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Payment) GetPaymentRequest() string { |
|
if x != nil { |
|
return x.PaymentRequest |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Payment) GetStatus() Payment_PaymentStatus { |
|
if x != nil { |
|
return x.Status |
|
} |
|
return Payment_UNKNOWN |
|
} |
|
|
|
func (x *Payment) GetFeeSat() int64 { |
|
if x != nil { |
|
return x.FeeSat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Payment) GetFeeMsat() int64 { |
|
if x != nil { |
|
return x.FeeMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Payment) GetCreationTimeNs() int64 { |
|
if x != nil { |
|
return x.CreationTimeNs |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Payment) GetHtlcs() []*HTLCAttempt { |
|
if x != nil { |
|
return x.Htlcs |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Payment) GetPaymentIndex() uint64 { |
|
if x != nil { |
|
return x.PaymentIndex |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Payment) GetFailureReason() PaymentFailureReason { |
|
if x != nil { |
|
return x.FailureReason |
|
} |
|
return PaymentFailureReason_FAILURE_REASON_NONE |
|
} |
|
|
|
type HTLCAttempt struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The unique ID that is used for this attempt. |
|
AttemptId uint64 `protobuf:"varint,7,opt,name=attempt_id,json=attemptId,proto3" json:"attempt_id,omitempty"` |
|
// The status of the HTLC. |
|
Status HTLCAttempt_HTLCStatus `protobuf:"varint,1,opt,name=status,proto3,enum=lnrpc.HTLCAttempt_HTLCStatus" json:"status,omitempty"` |
|
// The route taken by this HTLC. |
|
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. |
|
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"` |
|
// The preimage that was used to settle the HTLC. |
|
Preimage []byte `protobuf:"bytes,6,opt,name=preimage,proto3" json:"preimage,omitempty"` |
|
} |
|
|
|
func (x *HTLCAttempt) Reset() { |
|
*x = HTLCAttempt{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[121] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *HTLCAttempt) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*HTLCAttempt) ProtoMessage() {} |
|
|
|
func (x *HTLCAttempt) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[121] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use HTLCAttempt.ProtoReflect.Descriptor instead. |
|
func (*HTLCAttempt) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{121} |
|
} |
|
|
|
func (x *HTLCAttempt) GetAttemptId() uint64 { |
|
if x != nil { |
|
return x.AttemptId |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *HTLCAttempt) GetStatus() HTLCAttempt_HTLCStatus { |
|
if x != nil { |
|
return x.Status |
|
} |
|
return HTLCAttempt_IN_FLIGHT |
|
} |
|
|
|
func (x *HTLCAttempt) GetRoute() *Route { |
|
if x != nil { |
|
return x.Route |
|
} |
|
return nil |
|
} |
|
|
|
func (x *HTLCAttempt) GetAttemptTimeNs() int64 { |
|
if x != nil { |
|
return x.AttemptTimeNs |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *HTLCAttempt) GetResolveTimeNs() int64 { |
|
if x != nil { |
|
return x.ResolveTimeNs |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *HTLCAttempt) GetFailure() *Failure { |
|
if x != nil { |
|
return x.Failure |
|
} |
|
return nil |
|
} |
|
|
|
func (x *HTLCAttempt) GetPreimage() []byte { |
|
if x != nil { |
|
return x.Preimage |
|
} |
|
return nil |
|
} |
|
|
|
type ListPaymentsRequest struct { |
|
state protoimpl.MessageState |
|
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. |
|
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. |
|
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). |
|
Reversed bool `protobuf:"varint,4,opt,name=reversed,proto3" json:"reversed,omitempty"` |
|
} |
|
|
|
func (x *ListPaymentsRequest) Reset() { |
|
*x = ListPaymentsRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[122] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ListPaymentsRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ListPaymentsRequest) ProtoMessage() {} |
|
|
|
func (x *ListPaymentsRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[122] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ListPaymentsRequest.ProtoReflect.Descriptor instead. |
|
func (*ListPaymentsRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{122} |
|
} |
|
|
|
func (x *ListPaymentsRequest) GetIncludeIncomplete() bool { |
|
if x != nil { |
|
return x.IncludeIncomplete |
|
} |
|
return false |
|
} |
|
|
|
func (x *ListPaymentsRequest) GetIndexOffset() uint64 { |
|
if x != nil { |
|
return x.IndexOffset |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ListPaymentsRequest) GetMaxPayments() uint64 { |
|
if x != nil { |
|
return x.MaxPayments |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ListPaymentsRequest) GetReversed() bool { |
|
if x != nil { |
|
return x.Reversed |
|
} |
|
return false |
|
} |
|
|
|
type ListPaymentsResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// 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. |
|
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. |
|
LastIndexOffset uint64 `protobuf:"varint,3,opt,name=last_index_offset,json=lastIndexOffset,proto3" json:"last_index_offset,omitempty"` |
|
} |
|
|
|
func (x *ListPaymentsResponse) Reset() { |
|
*x = ListPaymentsResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[123] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ListPaymentsResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ListPaymentsResponse) ProtoMessage() {} |
|
|
|
func (x *ListPaymentsResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[123] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ListPaymentsResponse.ProtoReflect.Descriptor instead. |
|
func (*ListPaymentsResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{123} |
|
} |
|
|
|
func (x *ListPaymentsResponse) GetPayments() []*Payment { |
|
if x != nil { |
|
return x.Payments |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ListPaymentsResponse) GetFirstIndexOffset() uint64 { |
|
if x != nil { |
|
return x.FirstIndexOffset |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ListPaymentsResponse) GetLastIndexOffset() uint64 { |
|
if x != nil { |
|
return x.LastIndexOffset |
|
} |
|
return 0 |
|
} |
|
|
|
type DeleteAllPaymentsRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// 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. |
|
FailedHtlcsOnly bool `protobuf:"varint,2,opt,name=failed_htlcs_only,json=failedHtlcsOnly,proto3" json:"failed_htlcs_only,omitempty"` |
|
} |
|
|
|
func (x *DeleteAllPaymentsRequest) Reset() { |
|
*x = DeleteAllPaymentsRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[124] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *DeleteAllPaymentsRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*DeleteAllPaymentsRequest) ProtoMessage() {} |
|
|
|
func (x *DeleteAllPaymentsRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[124] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use DeleteAllPaymentsRequest.ProtoReflect.Descriptor instead. |
|
func (*DeleteAllPaymentsRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{124} |
|
} |
|
|
|
func (x *DeleteAllPaymentsRequest) GetFailedPaymentsOnly() bool { |
|
if x != nil { |
|
return x.FailedPaymentsOnly |
|
} |
|
return false |
|
} |
|
|
|
func (x *DeleteAllPaymentsRequest) GetFailedHtlcsOnly() bool { |
|
if x != nil { |
|
return x.FailedHtlcsOnly |
|
} |
|
return false |
|
} |
|
|
|
type DeleteAllPaymentsResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *DeleteAllPaymentsResponse) Reset() { |
|
*x = DeleteAllPaymentsResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[125] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *DeleteAllPaymentsResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*DeleteAllPaymentsResponse) ProtoMessage() {} |
|
|
|
func (x *DeleteAllPaymentsResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[125] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use DeleteAllPaymentsResponse.ProtoReflect.Descriptor instead. |
|
func (*DeleteAllPaymentsResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{125} |
|
} |
|
|
|
type AbandonChannelRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
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. |
|
IKnowWhatIAmDoing bool `protobuf:"varint,3,opt,name=i_know_what_i_am_doing,json=iKnowWhatIAmDoing,proto3" json:"i_know_what_i_am_doing,omitempty"` |
|
} |
|
|
|
func (x *AbandonChannelRequest) Reset() { |
|
*x = AbandonChannelRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[126] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *AbandonChannelRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*AbandonChannelRequest) ProtoMessage() {} |
|
|
|
func (x *AbandonChannelRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[126] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use AbandonChannelRequest.ProtoReflect.Descriptor instead. |
|
func (*AbandonChannelRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{126} |
|
} |
|
|
|
func (x *AbandonChannelRequest) GetChannelPoint() *ChannelPoint { |
|
if x != nil { |
|
return x.ChannelPoint |
|
} |
|
return nil |
|
} |
|
|
|
func (x *AbandonChannelRequest) GetPendingFundingShimOnly() bool { |
|
if x != nil { |
|
return x.PendingFundingShimOnly |
|
} |
|
return false |
|
} |
|
|
|
func (x *AbandonChannelRequest) GetIKnowWhatIAmDoing() bool { |
|
if x != nil { |
|
return x.IKnowWhatIAmDoing |
|
} |
|
return false |
|
} |
|
|
|
type AbandonChannelResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *AbandonChannelResponse) Reset() { |
|
*x = AbandonChannelResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[127] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *AbandonChannelResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*AbandonChannelResponse) ProtoMessage() {} |
|
|
|
func (x *AbandonChannelResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[127] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use AbandonChannelResponse.ProtoReflect.Descriptor instead. |
|
func (*AbandonChannelResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{127} |
|
} |
|
|
|
type DebugLevelRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
Show bool `protobuf:"varint,1,opt,name=show,proto3" json:"show,omitempty"` |
|
LevelSpec string `protobuf:"bytes,2,opt,name=level_spec,json=levelSpec,proto3" json:"level_spec,omitempty"` |
|
} |
|
|
|
func (x *DebugLevelRequest) Reset() { |
|
*x = DebugLevelRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[128] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *DebugLevelRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*DebugLevelRequest) ProtoMessage() {} |
|
|
|
func (x *DebugLevelRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[128] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use DebugLevelRequest.ProtoReflect.Descriptor instead. |
|
func (*DebugLevelRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{128} |
|
} |
|
|
|
func (x *DebugLevelRequest) GetShow() bool { |
|
if x != nil { |
|
return x.Show |
|
} |
|
return false |
|
} |
|
|
|
func (x *DebugLevelRequest) GetLevelSpec() string { |
|
if x != nil { |
|
return x.LevelSpec |
|
} |
|
return "" |
|
} |
|
|
|
type DebugLevelResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
SubSystems string `protobuf:"bytes,1,opt,name=sub_systems,json=subSystems,proto3" json:"sub_systems,omitempty"` |
|
} |
|
|
|
func (x *DebugLevelResponse) Reset() { |
|
*x = DebugLevelResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[129] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *DebugLevelResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*DebugLevelResponse) ProtoMessage() {} |
|
|
|
func (x *DebugLevelResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[129] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use DebugLevelResponse.ProtoReflect.Descriptor instead. |
|
func (*DebugLevelResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{129} |
|
} |
|
|
|
func (x *DebugLevelResponse) GetSubSystems() string { |
|
if x != nil { |
|
return x.SubSystems |
|
} |
|
return "" |
|
} |
|
|
|
type PayReqString struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The payment request string to be decoded |
|
PayReq string `protobuf:"bytes,1,opt,name=pay_req,json=payReq,proto3" json:"pay_req,omitempty"` |
|
} |
|
|
|
func (x *PayReqString) Reset() { |
|
*x = PayReqString{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[130] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *PayReqString) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*PayReqString) ProtoMessage() {} |
|
|
|
func (x *PayReqString) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[130] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use PayReqString.ProtoReflect.Descriptor instead. |
|
func (*PayReqString) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{130} |
|
} |
|
|
|
func (x *PayReqString) GetPayReq() string { |
|
if x != nil { |
|
return x.PayReq |
|
} |
|
return "" |
|
} |
|
|
|
type PayReq struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
Destination string `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"` |
|
PaymentHash string `protobuf:"bytes,2,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"` |
|
NumSatoshis int64 `protobuf:"varint,3,opt,name=num_satoshis,json=numSatoshis,proto3" json:"num_satoshis,omitempty"` |
|
Timestamp int64 `protobuf:"varint,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"` |
|
Expiry int64 `protobuf:"varint,5,opt,name=expiry,proto3" json:"expiry,omitempty"` |
|
Description string `protobuf:"bytes,6,opt,name=description,proto3" json:"description,omitempty"` |
|
DescriptionHash string `protobuf:"bytes,7,opt,name=description_hash,json=descriptionHash,proto3" json:"description_hash,omitempty"` |
|
FallbackAddr string `protobuf:"bytes,8,opt,name=fallback_addr,json=fallbackAddr,proto3" json:"fallback_addr,omitempty"` |
|
CltvExpiry int64 `protobuf:"varint,9,opt,name=cltv_expiry,json=cltvExpiry,proto3" json:"cltv_expiry,omitempty"` |
|
RouteHints []*RouteHint `protobuf:"bytes,10,rep,name=route_hints,json=routeHints,proto3" json:"route_hints,omitempty"` |
|
PaymentAddr []byte `protobuf:"bytes,11,opt,name=payment_addr,json=paymentAddr,proto3" json:"payment_addr,omitempty"` |
|
NumMsat int64 `protobuf:"varint,12,opt,name=num_msat,json=numMsat,proto3" json:"num_msat,omitempty"` |
|
Features map[uint32]*Feature `protobuf:"bytes,13,rep,name=features,proto3" json:"features,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` |
|
} |
|
|
|
func (x *PayReq) Reset() { |
|
*x = PayReq{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[131] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *PayReq) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*PayReq) ProtoMessage() {} |
|
|
|
func (x *PayReq) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[131] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use PayReq.ProtoReflect.Descriptor instead. |
|
func (*PayReq) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{131} |
|
} |
|
|
|
func (x *PayReq) GetDestination() string { |
|
if x != nil { |
|
return x.Destination |
|
} |
|
return "" |
|
} |
|
|
|
func (x *PayReq) GetPaymentHash() string { |
|
if x != nil { |
|
return x.PaymentHash |
|
} |
|
return "" |
|
} |
|
|
|
func (x *PayReq) GetNumSatoshis() int64 { |
|
if x != nil { |
|
return x.NumSatoshis |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PayReq) GetTimestamp() int64 { |
|
if x != nil { |
|
return x.Timestamp |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PayReq) GetExpiry() int64 { |
|
if x != nil { |
|
return x.Expiry |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PayReq) GetDescription() string { |
|
if x != nil { |
|
return x.Description |
|
} |
|
return "" |
|
} |
|
|
|
func (x *PayReq) GetDescriptionHash() string { |
|
if x != nil { |
|
return x.DescriptionHash |
|
} |
|
return "" |
|
} |
|
|
|
func (x *PayReq) GetFallbackAddr() string { |
|
if x != nil { |
|
return x.FallbackAddr |
|
} |
|
return "" |
|
} |
|
|
|
func (x *PayReq) GetCltvExpiry() int64 { |
|
if x != nil { |
|
return x.CltvExpiry |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PayReq) GetRouteHints() []*RouteHint { |
|
if x != nil { |
|
return x.RouteHints |
|
} |
|
return nil |
|
} |
|
|
|
func (x *PayReq) GetPaymentAddr() []byte { |
|
if x != nil { |
|
return x.PaymentAddr |
|
} |
|
return nil |
|
} |
|
|
|
func (x *PayReq) GetNumMsat() int64 { |
|
if x != nil { |
|
return x.NumMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PayReq) GetFeatures() map[uint32]*Feature { |
|
if x != nil { |
|
return x.Features |
|
} |
|
return nil |
|
} |
|
|
|
type Feature struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` |
|
IsRequired bool `protobuf:"varint,3,opt,name=is_required,json=isRequired,proto3" json:"is_required,omitempty"` |
|
IsKnown bool `protobuf:"varint,4,opt,name=is_known,json=isKnown,proto3" json:"is_known,omitempty"` |
|
} |
|
|
|
func (x *Feature) Reset() { |
|
*x = Feature{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[132] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *Feature) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*Feature) ProtoMessage() {} |
|
|
|
func (x *Feature) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[132] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use Feature.ProtoReflect.Descriptor instead. |
|
func (*Feature) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{132} |
|
} |
|
|
|
func (x *Feature) GetName() string { |
|
if x != nil { |
|
return x.Name |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Feature) GetIsRequired() bool { |
|
if x != nil { |
|
return x.IsRequired |
|
} |
|
return false |
|
} |
|
|
|
func (x *Feature) GetIsKnown() bool { |
|
if x != nil { |
|
return x.IsKnown |
|
} |
|
return false |
|
} |
|
|
|
type FeeReportRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *FeeReportRequest) Reset() { |
|
*x = FeeReportRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[133] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *FeeReportRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*FeeReportRequest) ProtoMessage() {} |
|
|
|
func (x *FeeReportRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[133] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use FeeReportRequest.ProtoReflect.Descriptor instead. |
|
func (*FeeReportRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{133} |
|
} |
|
|
|
type ChannelFeeReport struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The short channel id that this fee report belongs to. |
|
ChanId uint64 `protobuf:"varint,5,opt,name=chan_id,json=chanId,proto3" json:"chan_id,omitempty"` |
|
// The channel that this fee report belongs to. |
|
ChannelPoint string `protobuf:"bytes,1,opt,name=channel_point,json=channelPoint,proto3" json:"channel_point,omitempty"` |
|
// The base fee charged regardless of the number of milli-satoshis sent. |
|
BaseFeeMsat int64 `protobuf:"varint,2,opt,name=base_fee_msat,json=baseFeeMsat,proto3" json:"base_fee_msat,omitempty"` |
|
// The amount charged per milli-satoshis transferred expressed in |
|
// millionths of a satoshi. |
|
FeePerMil int64 `protobuf:"varint,3,opt,name=fee_per_mil,json=feePerMil,proto3" json:"fee_per_mil,omitempty"` |
|
// The effective fee rate in milli-satoshis. Computed by dividing the |
|
// fee_per_mil value by 1 million. |
|
FeeRate float64 `protobuf:"fixed64,4,opt,name=fee_rate,json=feeRate,proto3" json:"fee_rate,omitempty"` |
|
} |
|
|
|
func (x *ChannelFeeReport) Reset() { |
|
*x = ChannelFeeReport{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[134] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelFeeReport) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelFeeReport) ProtoMessage() {} |
|
|
|
func (x *ChannelFeeReport) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[134] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelFeeReport.ProtoReflect.Descriptor instead. |
|
func (*ChannelFeeReport) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{134} |
|
} |
|
|
|
func (x *ChannelFeeReport) GetChanId() uint64 { |
|
if x != nil { |
|
return x.ChanId |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelFeeReport) GetChannelPoint() string { |
|
if x != nil { |
|
return x.ChannelPoint |
|
} |
|
return "" |
|
} |
|
|
|
func (x *ChannelFeeReport) GetBaseFeeMsat() int64 { |
|
if x != nil { |
|
return x.BaseFeeMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelFeeReport) GetFeePerMil() int64 { |
|
if x != nil { |
|
return x.FeePerMil |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelFeeReport) GetFeeRate() float64 { |
|
if x != nil { |
|
return x.FeeRate |
|
} |
|
return 0 |
|
} |
|
|
|
type FeeReportResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// An array of channel fee reports which describes the current fee schedule |
|
// for each channel. |
|
ChannelFees []*ChannelFeeReport `protobuf:"bytes,1,rep,name=channel_fees,json=channelFees,proto3" json:"channel_fees,omitempty"` |
|
// The total amount of fee revenue (in satoshis) the switch has collected |
|
// over the past 24 hrs. |
|
DayFeeSum uint64 `protobuf:"varint,2,opt,name=day_fee_sum,json=dayFeeSum,proto3" json:"day_fee_sum,omitempty"` |
|
// The total amount of fee revenue (in satoshis) the switch has collected |
|
// over the past 1 week. |
|
WeekFeeSum uint64 `protobuf:"varint,3,opt,name=week_fee_sum,json=weekFeeSum,proto3" json:"week_fee_sum,omitempty"` |
|
// The total amount of fee revenue (in satoshis) the switch has collected |
|
// over the past 1 month. |
|
MonthFeeSum uint64 `protobuf:"varint,4,opt,name=month_fee_sum,json=monthFeeSum,proto3" json:"month_fee_sum,omitempty"` |
|
} |
|
|
|
func (x *FeeReportResponse) Reset() { |
|
*x = FeeReportResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[135] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *FeeReportResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*FeeReportResponse) ProtoMessage() {} |
|
|
|
func (x *FeeReportResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[135] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use FeeReportResponse.ProtoReflect.Descriptor instead. |
|
func (*FeeReportResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{135} |
|
} |
|
|
|
func (x *FeeReportResponse) GetChannelFees() []*ChannelFeeReport { |
|
if x != nil { |
|
return x.ChannelFees |
|
} |
|
return nil |
|
} |
|
|
|
func (x *FeeReportResponse) GetDayFeeSum() uint64 { |
|
if x != nil { |
|
return x.DayFeeSum |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *FeeReportResponse) GetWeekFeeSum() uint64 { |
|
if x != nil { |
|
return x.WeekFeeSum |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *FeeReportResponse) GetMonthFeeSum() uint64 { |
|
if x != nil { |
|
return x.MonthFeeSum |
|
} |
|
return 0 |
|
} |
|
|
|
type PolicyUpdateRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Types that are assignable to Scope: |
|
// *PolicyUpdateRequest_Global |
|
// *PolicyUpdateRequest_ChanPoint |
|
Scope isPolicyUpdateRequest_Scope `protobuf_oneof:"scope"` |
|
// The base fee charged regardless of the number of milli-satoshis sent. |
|
BaseFeeMsat int64 `protobuf:"varint,3,opt,name=base_fee_msat,json=baseFeeMsat,proto3" json:"base_fee_msat,omitempty"` |
|
// The effective fee rate in milli-satoshis. The precision of this value |
|
// goes up to 6 decimal places, so 1e-6. |
|
FeeRate float64 `protobuf:"fixed64,4,opt,name=fee_rate,json=feeRate,proto3" json:"fee_rate,omitempty"` |
|
// The required timelock delta for HTLCs forwarded over the channel. |
|
TimeLockDelta uint32 `protobuf:"varint,5,opt,name=time_lock_delta,json=timeLockDelta,proto3" json:"time_lock_delta,omitempty"` |
|
// If set, the maximum HTLC size in milli-satoshis. If unset, the maximum |
|
// HTLC will be unchanged. |
|
MaxHtlcMsat uint64 `protobuf:"varint,6,opt,name=max_htlc_msat,json=maxHtlcMsat,proto3" json:"max_htlc_msat,omitempty"` |
|
// The minimum HTLC size in milli-satoshis. Only applied if |
|
// min_htlc_msat_specified is true. |
|
MinHtlcMsat uint64 `protobuf:"varint,7,opt,name=min_htlc_msat,json=minHtlcMsat,proto3" json:"min_htlc_msat,omitempty"` |
|
// If true, min_htlc_msat is applied. |
|
MinHtlcMsatSpecified bool `protobuf:"varint,8,opt,name=min_htlc_msat_specified,json=minHtlcMsatSpecified,proto3" json:"min_htlc_msat_specified,omitempty"` |
|
} |
|
|
|
func (x *PolicyUpdateRequest) Reset() { |
|
*x = PolicyUpdateRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[136] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *PolicyUpdateRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*PolicyUpdateRequest) ProtoMessage() {} |
|
|
|
func (x *PolicyUpdateRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[136] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use PolicyUpdateRequest.ProtoReflect.Descriptor instead. |
|
func (*PolicyUpdateRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{136} |
|
} |
|
|
|
func (m *PolicyUpdateRequest) GetScope() isPolicyUpdateRequest_Scope { |
|
if m != nil { |
|
return m.Scope |
|
} |
|
return nil |
|
} |
|
|
|
func (x *PolicyUpdateRequest) GetGlobal() bool { |
|
if x, ok := x.GetScope().(*PolicyUpdateRequest_Global); ok { |
|
return x.Global |
|
} |
|
return false |
|
} |
|
|
|
func (x *PolicyUpdateRequest) GetChanPoint() *ChannelPoint { |
|
if x, ok := x.GetScope().(*PolicyUpdateRequest_ChanPoint); ok { |
|
return x.ChanPoint |
|
} |
|
return nil |
|
} |
|
|
|
func (x *PolicyUpdateRequest) GetBaseFeeMsat() int64 { |
|
if x != nil { |
|
return x.BaseFeeMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PolicyUpdateRequest) GetFeeRate() float64 { |
|
if x != nil { |
|
return x.FeeRate |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PolicyUpdateRequest) GetTimeLockDelta() uint32 { |
|
if x != nil { |
|
return x.TimeLockDelta |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PolicyUpdateRequest) GetMaxHtlcMsat() uint64 { |
|
if x != nil { |
|
return x.MaxHtlcMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PolicyUpdateRequest) GetMinHtlcMsat() uint64 { |
|
if x != nil { |
|
return x.MinHtlcMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PolicyUpdateRequest) GetMinHtlcMsatSpecified() bool { |
|
if x != nil { |
|
return x.MinHtlcMsatSpecified |
|
} |
|
return false |
|
} |
|
|
|
type isPolicyUpdateRequest_Scope interface { |
|
isPolicyUpdateRequest_Scope() |
|
} |
|
|
|
type PolicyUpdateRequest_Global struct { |
|
// If set, then this update applies to all currently active channels. |
|
Global bool `protobuf:"varint,1,opt,name=global,proto3,oneof"` |
|
} |
|
|
|
type PolicyUpdateRequest_ChanPoint struct { |
|
// If set, this update will target a specific channel. |
|
ChanPoint *ChannelPoint `protobuf:"bytes,2,opt,name=chan_point,json=chanPoint,proto3,oneof"` |
|
} |
|
|
|
func (*PolicyUpdateRequest_Global) isPolicyUpdateRequest_Scope() {} |
|
|
|
func (*PolicyUpdateRequest_ChanPoint) isPolicyUpdateRequest_Scope() {} |
|
|
|
type PolicyUpdateResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *PolicyUpdateResponse) Reset() { |
|
*x = PolicyUpdateResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[137] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *PolicyUpdateResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*PolicyUpdateResponse) ProtoMessage() {} |
|
|
|
func (x *PolicyUpdateResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[137] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use PolicyUpdateResponse.ProtoReflect.Descriptor instead. |
|
func (*PolicyUpdateResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{137} |
|
} |
|
|
|
type ForwardingHistoryRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Start time is the starting point of the forwarding history request. All |
|
// records beyond this point will be included, respecting the end time, and |
|
// the index offset. |
|
StartTime uint64 `protobuf:"varint,1,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"` |
|
// End time is the end point of the forwarding history request. The |
|
// response will carry at most 50k records between the start time and the |
|
// end time. The index offset can be used to implement pagination. |
|
EndTime uint64 `protobuf:"varint,2,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"` |
|
// Index offset is the offset in the time series to start at. As each |
|
// response can only contain 50k records, callers can use this to skip |
|
// around within a packed time series. |
|
IndexOffset uint32 `protobuf:"varint,3,opt,name=index_offset,json=indexOffset,proto3" json:"index_offset,omitempty"` |
|
// The max number of events to return in the response to this query. |
|
NumMaxEvents uint32 `protobuf:"varint,4,opt,name=num_max_events,json=numMaxEvents,proto3" json:"num_max_events,omitempty"` |
|
} |
|
|
|
func (x *ForwardingHistoryRequest) Reset() { |
|
*x = ForwardingHistoryRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[138] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ForwardingHistoryRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ForwardingHistoryRequest) ProtoMessage() {} |
|
|
|
func (x *ForwardingHistoryRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[138] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ForwardingHistoryRequest.ProtoReflect.Descriptor instead. |
|
func (*ForwardingHistoryRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{138} |
|
} |
|
|
|
func (x *ForwardingHistoryRequest) GetStartTime() uint64 { |
|
if x != nil { |
|
return x.StartTime |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ForwardingHistoryRequest) GetEndTime() uint64 { |
|
if x != nil { |
|
return x.EndTime |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ForwardingHistoryRequest) GetIndexOffset() uint32 { |
|
if x != nil { |
|
return x.IndexOffset |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ForwardingHistoryRequest) GetNumMaxEvents() uint32 { |
|
if x != nil { |
|
return x.NumMaxEvents |
|
} |
|
return 0 |
|
} |
|
|
|
type ForwardingEvent struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Timestamp is the time (unix epoch offset) that this circuit was |
|
// completed. Deprecated by timestamp_ns. |
|
// |
|
// Deprecated: Do not use. |
|
Timestamp uint64 `protobuf:"varint,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"` |
|
// The incoming channel ID that carried the HTLC that created the circuit. |
|
ChanIdIn uint64 `protobuf:"varint,2,opt,name=chan_id_in,json=chanIdIn,proto3" json:"chan_id_in,omitempty"` |
|
// The outgoing channel ID that carried the preimage that completed the |
|
// circuit. |
|
ChanIdOut uint64 `protobuf:"varint,4,opt,name=chan_id_out,json=chanIdOut,proto3" json:"chan_id_out,omitempty"` |
|
// The total amount (in satoshis) of the incoming HTLC that created half |
|
// the circuit. |
|
AmtIn uint64 `protobuf:"varint,5,opt,name=amt_in,json=amtIn,proto3" json:"amt_in,omitempty"` |
|
// The total amount (in satoshis) of the outgoing HTLC that created the |
|
// second half of the circuit. |
|
AmtOut uint64 `protobuf:"varint,6,opt,name=amt_out,json=amtOut,proto3" json:"amt_out,omitempty"` |
|
// The total fee (in satoshis) that this payment circuit carried. |
|
Fee uint64 `protobuf:"varint,7,opt,name=fee,proto3" json:"fee,omitempty"` |
|
// The total fee (in milli-satoshis) that this payment circuit carried. |
|
FeeMsat uint64 `protobuf:"varint,8,opt,name=fee_msat,json=feeMsat,proto3" json:"fee_msat,omitempty"` |
|
// The total amount (in milli-satoshis) of the incoming HTLC that created |
|
// half the circuit. |
|
AmtInMsat uint64 `protobuf:"varint,9,opt,name=amt_in_msat,json=amtInMsat,proto3" json:"amt_in_msat,omitempty"` |
|
// The total amount (in milli-satoshis) of the outgoing HTLC that created |
|
// the second half of the circuit. |
|
AmtOutMsat uint64 `protobuf:"varint,10,opt,name=amt_out_msat,json=amtOutMsat,proto3" json:"amt_out_msat,omitempty"` |
|
// The number of nanoseconds elapsed since January 1, 1970 UTC when this |
|
// circuit was completed. |
|
TimestampNs uint64 `protobuf:"varint,11,opt,name=timestamp_ns,json=timestampNs,proto3" json:"timestamp_ns,omitempty"` |
|
} |
|
|
|
func (x *ForwardingEvent) Reset() { |
|
*x = ForwardingEvent{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[139] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ForwardingEvent) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ForwardingEvent) ProtoMessage() {} |
|
|
|
func (x *ForwardingEvent) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[139] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ForwardingEvent.ProtoReflect.Descriptor instead. |
|
func (*ForwardingEvent) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{139} |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (x *ForwardingEvent) GetTimestamp() uint64 { |
|
if x != nil { |
|
return x.Timestamp |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ForwardingEvent) GetChanIdIn() uint64 { |
|
if x != nil { |
|
return x.ChanIdIn |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ForwardingEvent) GetChanIdOut() uint64 { |
|
if x != nil { |
|
return x.ChanIdOut |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ForwardingEvent) GetAmtIn() uint64 { |
|
if x != nil { |
|
return x.AmtIn |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ForwardingEvent) GetAmtOut() uint64 { |
|
if x != nil { |
|
return x.AmtOut |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ForwardingEvent) GetFee() uint64 { |
|
if x != nil { |
|
return x.Fee |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ForwardingEvent) GetFeeMsat() uint64 { |
|
if x != nil { |
|
return x.FeeMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ForwardingEvent) GetAmtInMsat() uint64 { |
|
if x != nil { |
|
return x.AmtInMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ForwardingEvent) GetAmtOutMsat() uint64 { |
|
if x != nil { |
|
return x.AmtOutMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ForwardingEvent) GetTimestampNs() uint64 { |
|
if x != nil { |
|
return x.TimestampNs |
|
} |
|
return 0 |
|
} |
|
|
|
type ForwardingHistoryResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// A list of forwarding events from the time slice of the time series |
|
// specified in the request. |
|
ForwardingEvents []*ForwardingEvent `protobuf:"bytes,1,rep,name=forwarding_events,json=forwardingEvents,proto3" json:"forwarding_events,omitempty"` |
|
// The index of the last time in the set of returned forwarding events. Can |
|
// be used to seek further, pagination style. |
|
LastOffsetIndex uint32 `protobuf:"varint,2,opt,name=last_offset_index,json=lastOffsetIndex,proto3" json:"last_offset_index,omitempty"` |
|
} |
|
|
|
func (x *ForwardingHistoryResponse) Reset() { |
|
*x = ForwardingHistoryResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[140] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ForwardingHistoryResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ForwardingHistoryResponse) ProtoMessage() {} |
|
|
|
func (x *ForwardingHistoryResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[140] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ForwardingHistoryResponse.ProtoReflect.Descriptor instead. |
|
func (*ForwardingHistoryResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{140} |
|
} |
|
|
|
func (x *ForwardingHistoryResponse) GetForwardingEvents() []*ForwardingEvent { |
|
if x != nil { |
|
return x.ForwardingEvents |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ForwardingHistoryResponse) GetLastOffsetIndex() uint32 { |
|
if x != nil { |
|
return x.LastOffsetIndex |
|
} |
|
return 0 |
|
} |
|
|
|
type ExportChannelBackupRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The target channel point to obtain a back up for. |
|
ChanPoint *ChannelPoint `protobuf:"bytes,1,opt,name=chan_point,json=chanPoint,proto3" json:"chan_point,omitempty"` |
|
} |
|
|
|
func (x *ExportChannelBackupRequest) Reset() { |
|
*x = ExportChannelBackupRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[141] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ExportChannelBackupRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ExportChannelBackupRequest) ProtoMessage() {} |
|
|
|
func (x *ExportChannelBackupRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[141] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ExportChannelBackupRequest.ProtoReflect.Descriptor instead. |
|
func (*ExportChannelBackupRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{141} |
|
} |
|
|
|
func (x *ExportChannelBackupRequest) GetChanPoint() *ChannelPoint { |
|
if x != nil { |
|
return x.ChanPoint |
|
} |
|
return nil |
|
} |
|
|
|
type ChannelBackup struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// |
|
//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. |
|
ChanBackup []byte `protobuf:"bytes,2,opt,name=chan_backup,json=chanBackup,proto3" json:"chan_backup,omitempty"` |
|
} |
|
|
|
func (x *ChannelBackup) Reset() { |
|
*x = ChannelBackup{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[142] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelBackup) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelBackup) ProtoMessage() {} |
|
|
|
func (x *ChannelBackup) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[142] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelBackup.ProtoReflect.Descriptor instead. |
|
func (*ChannelBackup) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{142} |
|
} |
|
|
|
func (x *ChannelBackup) GetChanPoint() *ChannelPoint { |
|
if x != nil { |
|
return x.ChanPoint |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelBackup) GetChanBackup() []byte { |
|
if x != nil { |
|
return x.ChanBackup |
|
} |
|
return nil |
|
} |
|
|
|
type MultiChanBackup struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// |
|
//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. |
|
MultiChanBackup []byte `protobuf:"bytes,2,opt,name=multi_chan_backup,json=multiChanBackup,proto3" json:"multi_chan_backup,omitempty"` |
|
} |
|
|
|
func (x *MultiChanBackup) Reset() { |
|
*x = MultiChanBackup{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[143] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *MultiChanBackup) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*MultiChanBackup) ProtoMessage() {} |
|
|
|
func (x *MultiChanBackup) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[143] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use MultiChanBackup.ProtoReflect.Descriptor instead. |
|
func (*MultiChanBackup) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{143} |
|
} |
|
|
|
func (x *MultiChanBackup) GetChanPoints() []*ChannelPoint { |
|
if x != nil { |
|
return x.ChanPoints |
|
} |
|
return nil |
|
} |
|
|
|
func (x *MultiChanBackup) GetMultiChanBackup() []byte { |
|
if x != nil { |
|
return x.MultiChanBackup |
|
} |
|
return nil |
|
} |
|
|
|
type ChanBackupExportRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *ChanBackupExportRequest) Reset() { |
|
*x = ChanBackupExportRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[144] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChanBackupExportRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChanBackupExportRequest) ProtoMessage() {} |
|
|
|
func (x *ChanBackupExportRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[144] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChanBackupExportRequest.ProtoReflect.Descriptor instead. |
|
func (*ChanBackupExportRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{144} |
|
} |
|
|
|
type ChanBackupSnapshot struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// |
|
//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. |
|
MultiChanBackup *MultiChanBackup `protobuf:"bytes,2,opt,name=multi_chan_backup,json=multiChanBackup,proto3" json:"multi_chan_backup,omitempty"` |
|
} |
|
|
|
func (x *ChanBackupSnapshot) Reset() { |
|
*x = ChanBackupSnapshot{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[145] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChanBackupSnapshot) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChanBackupSnapshot) ProtoMessage() {} |
|
|
|
func (x *ChanBackupSnapshot) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[145] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChanBackupSnapshot.ProtoReflect.Descriptor instead. |
|
func (*ChanBackupSnapshot) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{145} |
|
} |
|
|
|
func (x *ChanBackupSnapshot) GetSingleChanBackups() *ChannelBackups { |
|
if x != nil { |
|
return x.SingleChanBackups |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChanBackupSnapshot) GetMultiChanBackup() *MultiChanBackup { |
|
if x != nil { |
|
return x.MultiChanBackup |
|
} |
|
return nil |
|
} |
|
|
|
type ChannelBackups struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// |
|
//A set of single-chan static channel backups. |
|
ChanBackups []*ChannelBackup `protobuf:"bytes,1,rep,name=chan_backups,json=chanBackups,proto3" json:"chan_backups,omitempty"` |
|
} |
|
|
|
func (x *ChannelBackups) Reset() { |
|
*x = ChannelBackups{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[146] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelBackups) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelBackups) ProtoMessage() {} |
|
|
|
func (x *ChannelBackups) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[146] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelBackups.ProtoReflect.Descriptor instead. |
|
func (*ChannelBackups) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{146} |
|
} |
|
|
|
func (x *ChannelBackups) GetChanBackups() []*ChannelBackup { |
|
if x != nil { |
|
return x.ChanBackups |
|
} |
|
return nil |
|
} |
|
|
|
type RestoreChanBackupRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Types that are assignable to Backup: |
|
// *RestoreChanBackupRequest_ChanBackups |
|
// *RestoreChanBackupRequest_MultiChanBackup |
|
Backup isRestoreChanBackupRequest_Backup `protobuf_oneof:"backup"` |
|
} |
|
|
|
func (x *RestoreChanBackupRequest) Reset() { |
|
*x = RestoreChanBackupRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[147] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *RestoreChanBackupRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*RestoreChanBackupRequest) ProtoMessage() {} |
|
|
|
func (x *RestoreChanBackupRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[147] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use RestoreChanBackupRequest.ProtoReflect.Descriptor instead. |
|
func (*RestoreChanBackupRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{147} |
|
} |
|
|
|
func (m *RestoreChanBackupRequest) GetBackup() isRestoreChanBackupRequest_Backup { |
|
if m != nil { |
|
return m.Backup |
|
} |
|
return nil |
|
} |
|
|
|
func (x *RestoreChanBackupRequest) GetChanBackups() *ChannelBackups { |
|
if x, ok := x.GetBackup().(*RestoreChanBackupRequest_ChanBackups); ok { |
|
return x.ChanBackups |
|
} |
|
return nil |
|
} |
|
|
|
func (x *RestoreChanBackupRequest) GetMultiChanBackup() []byte { |
|
if x, ok := x.GetBackup().(*RestoreChanBackupRequest_MultiChanBackup); ok { |
|
return x.MultiChanBackup |
|
} |
|
return nil |
|
} |
|
|
|
type isRestoreChanBackupRequest_Backup interface { |
|
isRestoreChanBackupRequest_Backup() |
|
} |
|
|
|
type RestoreChanBackupRequest_ChanBackups struct { |
|
// |
|
//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. |
|
MultiChanBackup []byte `protobuf:"bytes,2,opt,name=multi_chan_backup,json=multiChanBackup,proto3,oneof"` |
|
} |
|
|
|
func (*RestoreChanBackupRequest_ChanBackups) isRestoreChanBackupRequest_Backup() {} |
|
|
|
func (*RestoreChanBackupRequest_MultiChanBackup) isRestoreChanBackupRequest_Backup() {} |
|
|
|
type RestoreBackupResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *RestoreBackupResponse) Reset() { |
|
*x = RestoreBackupResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[148] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *RestoreBackupResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*RestoreBackupResponse) ProtoMessage() {} |
|
|
|
func (x *RestoreBackupResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[148] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use RestoreBackupResponse.ProtoReflect.Descriptor instead. |
|
func (*RestoreBackupResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{148} |
|
} |
|
|
|
type ChannelBackupSubscription struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *ChannelBackupSubscription) Reset() { |
|
*x = ChannelBackupSubscription{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[149] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelBackupSubscription) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelBackupSubscription) ProtoMessage() {} |
|
|
|
func (x *ChannelBackupSubscription) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[149] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelBackupSubscription.ProtoReflect.Descriptor instead. |
|
func (*ChannelBackupSubscription) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{149} |
|
} |
|
|
|
type VerifyChanBackupResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *VerifyChanBackupResponse) Reset() { |
|
*x = VerifyChanBackupResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[150] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *VerifyChanBackupResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*VerifyChanBackupResponse) ProtoMessage() {} |
|
|
|
func (x *VerifyChanBackupResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[150] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use VerifyChanBackupResponse.ProtoReflect.Descriptor instead. |
|
func (*VerifyChanBackupResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{150} |
|
} |
|
|
|
type MacaroonPermission struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The entity a permission grants access to. |
|
Entity string `protobuf:"bytes,1,opt,name=entity,proto3" json:"entity,omitempty"` |
|
// The action that is granted. |
|
Action string `protobuf:"bytes,2,opt,name=action,proto3" json:"action,omitempty"` |
|
} |
|
|
|
func (x *MacaroonPermission) Reset() { |
|
*x = MacaroonPermission{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[151] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *MacaroonPermission) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*MacaroonPermission) ProtoMessage() {} |
|
|
|
func (x *MacaroonPermission) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[151] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use MacaroonPermission.ProtoReflect.Descriptor instead. |
|
func (*MacaroonPermission) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{151} |
|
} |
|
|
|
func (x *MacaroonPermission) GetEntity() string { |
|
if x != nil { |
|
return x.Entity |
|
} |
|
return "" |
|
} |
|
|
|
func (x *MacaroonPermission) GetAction() string { |
|
if x != nil { |
|
return x.Action |
|
} |
|
return "" |
|
} |
|
|
|
type BakeMacaroonRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The list of permissions the new macaroon should grant. |
|
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"` |
|
} |
|
|
|
func (x *BakeMacaroonRequest) Reset() { |
|
*x = BakeMacaroonRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[152] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *BakeMacaroonRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*BakeMacaroonRequest) ProtoMessage() {} |
|
|
|
func (x *BakeMacaroonRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[152] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use BakeMacaroonRequest.ProtoReflect.Descriptor instead. |
|
func (*BakeMacaroonRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{152} |
|
} |
|
|
|
func (x *BakeMacaroonRequest) GetPermissions() []*MacaroonPermission { |
|
if x != nil { |
|
return x.Permissions |
|
} |
|
return nil |
|
} |
|
|
|
func (x *BakeMacaroonRequest) GetRootKeyId() uint64 { |
|
if x != nil { |
|
return x.RootKeyId |
|
} |
|
return 0 |
|
} |
|
|
|
type BakeMacaroonResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The hex encoded macaroon, serialized in binary format. |
|
Macaroon string `protobuf:"bytes,1,opt,name=macaroon,proto3" json:"macaroon,omitempty"` |
|
} |
|
|
|
func (x *BakeMacaroonResponse) Reset() { |
|
*x = BakeMacaroonResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[153] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *BakeMacaroonResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*BakeMacaroonResponse) ProtoMessage() {} |
|
|
|
func (x *BakeMacaroonResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[153] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use BakeMacaroonResponse.ProtoReflect.Descriptor instead. |
|
func (*BakeMacaroonResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{153} |
|
} |
|
|
|
func (x *BakeMacaroonResponse) GetMacaroon() string { |
|
if x != nil { |
|
return x.Macaroon |
|
} |
|
return "" |
|
} |
|
|
|
type ListMacaroonIDsRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *ListMacaroonIDsRequest) Reset() { |
|
*x = ListMacaroonIDsRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[154] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ListMacaroonIDsRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ListMacaroonIDsRequest) ProtoMessage() {} |
|
|
|
func (x *ListMacaroonIDsRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[154] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ListMacaroonIDsRequest.ProtoReflect.Descriptor instead. |
|
func (*ListMacaroonIDsRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{154} |
|
} |
|
|
|
type ListMacaroonIDsResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The list of root key IDs that are in use. |
|
RootKeyIds []uint64 `protobuf:"varint,1,rep,packed,name=root_key_ids,json=rootKeyIds,proto3" json:"root_key_ids,omitempty"` |
|
} |
|
|
|
func (x *ListMacaroonIDsResponse) Reset() { |
|
*x = ListMacaroonIDsResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[155] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ListMacaroonIDsResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ListMacaroonIDsResponse) ProtoMessage() {} |
|
|
|
func (x *ListMacaroonIDsResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[155] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ListMacaroonIDsResponse.ProtoReflect.Descriptor instead. |
|
func (*ListMacaroonIDsResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{155} |
|
} |
|
|
|
func (x *ListMacaroonIDsResponse) GetRootKeyIds() []uint64 { |
|
if x != nil { |
|
return x.RootKeyIds |
|
} |
|
return nil |
|
} |
|
|
|
type DeleteMacaroonIDRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The root key ID to be removed. |
|
RootKeyId uint64 `protobuf:"varint,1,opt,name=root_key_id,json=rootKeyId,proto3" json:"root_key_id,omitempty"` |
|
} |
|
|
|
func (x *DeleteMacaroonIDRequest) Reset() { |
|
*x = DeleteMacaroonIDRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[156] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *DeleteMacaroonIDRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*DeleteMacaroonIDRequest) ProtoMessage() {} |
|
|
|
func (x *DeleteMacaroonIDRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[156] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use DeleteMacaroonIDRequest.ProtoReflect.Descriptor instead. |
|
func (*DeleteMacaroonIDRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{156} |
|
} |
|
|
|
func (x *DeleteMacaroonIDRequest) GetRootKeyId() uint64 { |
|
if x != nil { |
|
return x.RootKeyId |
|
} |
|
return 0 |
|
} |
|
|
|
type DeleteMacaroonIDResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// A boolean indicates that the deletion is successful. |
|
Deleted bool `protobuf:"varint,1,opt,name=deleted,proto3" json:"deleted,omitempty"` |
|
} |
|
|
|
func (x *DeleteMacaroonIDResponse) Reset() { |
|
*x = DeleteMacaroonIDResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[157] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *DeleteMacaroonIDResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*DeleteMacaroonIDResponse) ProtoMessage() {} |
|
|
|
func (x *DeleteMacaroonIDResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[157] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use DeleteMacaroonIDResponse.ProtoReflect.Descriptor instead. |
|
func (*DeleteMacaroonIDResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{157} |
|
} |
|
|
|
func (x *DeleteMacaroonIDResponse) GetDeleted() bool { |
|
if x != nil { |
|
return x.Deleted |
|
} |
|
return false |
|
} |
|
|
|
type MacaroonPermissionList struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// A list of macaroon permissions. |
|
Permissions []*MacaroonPermission `protobuf:"bytes,1,rep,name=permissions,proto3" json:"permissions,omitempty"` |
|
} |
|
|
|
func (x *MacaroonPermissionList) Reset() { |
|
*x = MacaroonPermissionList{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[158] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *MacaroonPermissionList) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*MacaroonPermissionList) ProtoMessage() {} |
|
|
|
func (x *MacaroonPermissionList) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[158] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use MacaroonPermissionList.ProtoReflect.Descriptor instead. |
|
func (*MacaroonPermissionList) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{158} |
|
} |
|
|
|
func (x *MacaroonPermissionList) GetPermissions() []*MacaroonPermission { |
|
if x != nil { |
|
return x.Permissions |
|
} |
|
return nil |
|
} |
|
|
|
type ListPermissionsRequest struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
} |
|
|
|
func (x *ListPermissionsRequest) Reset() { |
|
*x = ListPermissionsRequest{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[159] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ListPermissionsRequest) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ListPermissionsRequest) ProtoMessage() {} |
|
|
|
func (x *ListPermissionsRequest) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[159] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ListPermissionsRequest.ProtoReflect.Descriptor instead. |
|
func (*ListPermissionsRequest) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{159} |
|
} |
|
|
|
type ListPermissionsResponse struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// |
|
//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"` |
|
} |
|
|
|
func (x *ListPermissionsResponse) Reset() { |
|
*x = ListPermissionsResponse{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[160] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ListPermissionsResponse) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ListPermissionsResponse) ProtoMessage() {} |
|
|
|
func (x *ListPermissionsResponse) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[160] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ListPermissionsResponse.ProtoReflect.Descriptor instead. |
|
func (*ListPermissionsResponse) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{160} |
|
} |
|
|
|
func (x *ListPermissionsResponse) GetMethodPermissions() map[string]*MacaroonPermissionList { |
|
if x != nil { |
|
return x.MethodPermissions |
|
} |
|
return nil |
|
} |
|
|
|
type Failure struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Failure code as defined in the Lightning spec |
|
Code Failure_FailureCode `protobuf:"varint,1,opt,name=code,proto3,enum=lnrpc.Failure_FailureCode" json:"code,omitempty"` |
|
// An optional channel update message. |
|
ChannelUpdate *ChannelUpdate `protobuf:"bytes,3,opt,name=channel_update,json=channelUpdate,proto3" json:"channel_update,omitempty"` |
|
// A failure type-dependent htlc value. |
|
HtlcMsat uint64 `protobuf:"varint,4,opt,name=htlc_msat,json=htlcMsat,proto3" json:"htlc_msat,omitempty"` |
|
// The sha256 sum of the onion payload. |
|
OnionSha_256 []byte `protobuf:"bytes,5,opt,name=onion_sha_256,json=onionSha256,proto3" json:"onion_sha_256,omitempty"` |
|
// A failure type-dependent cltv expiry value. |
|
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. |
|
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"` |
|
} |
|
|
|
func (x *Failure) Reset() { |
|
*x = Failure{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[161] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *Failure) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*Failure) ProtoMessage() {} |
|
|
|
func (x *Failure) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[161] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use Failure.ProtoReflect.Descriptor instead. |
|
func (*Failure) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{161} |
|
} |
|
|
|
func (x *Failure) GetCode() Failure_FailureCode { |
|
if x != nil { |
|
return x.Code |
|
} |
|
return Failure_RESERVED |
|
} |
|
|
|
func (x *Failure) GetChannelUpdate() *ChannelUpdate { |
|
if x != nil { |
|
return x.ChannelUpdate |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Failure) GetHtlcMsat() uint64 { |
|
if x != nil { |
|
return x.HtlcMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Failure) GetOnionSha_256() []byte { |
|
if x != nil { |
|
return x.OnionSha_256 |
|
} |
|
return nil |
|
} |
|
|
|
func (x *Failure) GetCltvExpiry() uint32 { |
|
if x != nil { |
|
return x.CltvExpiry |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Failure) GetFlags() uint32 { |
|
if x != nil { |
|
return x.Flags |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Failure) GetFailureSourceIndex() uint32 { |
|
if x != nil { |
|
return x.FailureSourceIndex |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *Failure) GetHeight() uint32 { |
|
if x != nil { |
|
return x.Height |
|
} |
|
return 0 |
|
} |
|
|
|
type ChannelUpdate struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// |
|
//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. |
|
ChainHash []byte `protobuf:"bytes,2,opt,name=chain_hash,json=chainHash,proto3" json:"chain_hash,omitempty"` |
|
// |
|
//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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
FeeRate uint32 `protobuf:"varint,9,opt,name=fee_rate,json=feeRate,proto3" json:"fee_rate,omitempty"` |
|
// |
|
//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. |
|
ExtraOpaqueData []byte `protobuf:"bytes,12,opt,name=extra_opaque_data,json=extraOpaqueData,proto3" json:"extra_opaque_data,omitempty"` |
|
} |
|
|
|
func (x *ChannelUpdate) Reset() { |
|
*x = ChannelUpdate{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[162] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *ChannelUpdate) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*ChannelUpdate) ProtoMessage() {} |
|
|
|
func (x *ChannelUpdate) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[162] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use ChannelUpdate.ProtoReflect.Descriptor instead. |
|
func (*ChannelUpdate) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{162} |
|
} |
|
|
|
func (x *ChannelUpdate) GetSignature() []byte { |
|
if x != nil { |
|
return x.Signature |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelUpdate) GetChainHash() []byte { |
|
if x != nil { |
|
return x.ChainHash |
|
} |
|
return nil |
|
} |
|
|
|
func (x *ChannelUpdate) GetChanId() uint64 { |
|
if x != nil { |
|
return x.ChanId |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelUpdate) GetTimestamp() uint32 { |
|
if x != nil { |
|
return x.Timestamp |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelUpdate) GetMessageFlags() uint32 { |
|
if x != nil { |
|
return x.MessageFlags |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelUpdate) GetChannelFlags() uint32 { |
|
if x != nil { |
|
return x.ChannelFlags |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelUpdate) GetTimeLockDelta() uint32 { |
|
if x != nil { |
|
return x.TimeLockDelta |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelUpdate) GetHtlcMinimumMsat() uint64 { |
|
if x != nil { |
|
return x.HtlcMinimumMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelUpdate) GetBaseFee() uint32 { |
|
if x != nil { |
|
return x.BaseFee |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelUpdate) GetFeeRate() uint32 { |
|
if x != nil { |
|
return x.FeeRate |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelUpdate) GetHtlcMaximumMsat() uint64 { |
|
if x != nil { |
|
return x.HtlcMaximumMsat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *ChannelUpdate) GetExtraOpaqueData() []byte { |
|
if x != nil { |
|
return x.ExtraOpaqueData |
|
} |
|
return nil |
|
} |
|
|
|
type MacaroonId struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
Nonce []byte `protobuf:"bytes,1,opt,name=nonce,proto3" json:"nonce,omitempty"` |
|
StorageId []byte `protobuf:"bytes,2,opt,name=storageId,proto3" json:"storageId,omitempty"` |
|
Ops []*Op `protobuf:"bytes,3,rep,name=ops,proto3" json:"ops,omitempty"` |
|
} |
|
|
|
func (x *MacaroonId) Reset() { |
|
*x = MacaroonId{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[163] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *MacaroonId) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*MacaroonId) ProtoMessage() {} |
|
|
|
func (x *MacaroonId) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[163] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use MacaroonId.ProtoReflect.Descriptor instead. |
|
func (*MacaroonId) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{163} |
|
} |
|
|
|
func (x *MacaroonId) GetNonce() []byte { |
|
if x != nil { |
|
return x.Nonce |
|
} |
|
return nil |
|
} |
|
|
|
func (x *MacaroonId) GetStorageId() []byte { |
|
if x != nil { |
|
return x.StorageId |
|
} |
|
return nil |
|
} |
|
|
|
func (x *MacaroonId) GetOps() []*Op { |
|
if x != nil { |
|
return x.Ops |
|
} |
|
return nil |
|
} |
|
|
|
type Op struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
Entity string `protobuf:"bytes,1,opt,name=entity,proto3" json:"entity,omitempty"` |
|
Actions []string `protobuf:"bytes,2,rep,name=actions,proto3" json:"actions,omitempty"` |
|
} |
|
|
|
func (x *Op) Reset() { |
|
*x = Op{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[164] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *Op) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*Op) ProtoMessage() {} |
|
|
|
func (x *Op) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[164] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use Op.ProtoReflect.Descriptor instead. |
|
func (*Op) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{164} |
|
} |
|
|
|
func (x *Op) GetEntity() string { |
|
if x != nil { |
|
return x.Entity |
|
} |
|
return "" |
|
} |
|
|
|
func (x *Op) GetActions() []string { |
|
if x != nil { |
|
return x.Actions |
|
} |
|
return nil |
|
} |
|
|
|
type PendingChannelsResponse_PendingChannel struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
RemoteNodePub string `protobuf:"bytes,1,opt,name=remote_node_pub,json=remoteNodePub,proto3" json:"remote_node_pub,omitempty"` |
|
ChannelPoint string `protobuf:"bytes,2,opt,name=channel_point,json=channelPoint,proto3" json:"channel_point,omitempty"` |
|
Capacity int64 `protobuf:"varint,3,opt,name=capacity,proto3" json:"capacity,omitempty"` |
|
LocalBalance int64 `protobuf:"varint,4,opt,name=local_balance,json=localBalance,proto3" json:"local_balance,omitempty"` |
|
RemoteBalance int64 `protobuf:"varint,5,opt,name=remote_balance,json=remoteBalance,proto3" json:"remote_balance,omitempty"` |
|
// 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. |
|
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"` |
|
// The commitment type used by this channel. |
|
CommitmentType CommitmentType `protobuf:"varint,9,opt,name=commitment_type,json=commitmentType,proto3,enum=lnrpc.CommitmentType" json:"commitment_type,omitempty"` |
|
} |
|
|
|
func (x *PendingChannelsResponse_PendingChannel) Reset() { |
|
*x = PendingChannelsResponse_PendingChannel{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[170] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *PendingChannelsResponse_PendingChannel) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*PendingChannelsResponse_PendingChannel) ProtoMessage() {} |
|
|
|
func (x *PendingChannelsResponse_PendingChannel) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[170] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use PendingChannelsResponse_PendingChannel.ProtoReflect.Descriptor instead. |
|
func (*PendingChannelsResponse_PendingChannel) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{72, 0} |
|
} |
|
|
|
func (x *PendingChannelsResponse_PendingChannel) GetRemoteNodePub() string { |
|
if x != nil { |
|
return x.RemoteNodePub |
|
} |
|
return "" |
|
} |
|
|
|
func (x *PendingChannelsResponse_PendingChannel) GetChannelPoint() string { |
|
if x != nil { |
|
return x.ChannelPoint |
|
} |
|
return "" |
|
} |
|
|
|
func (x *PendingChannelsResponse_PendingChannel) GetCapacity() int64 { |
|
if x != nil { |
|
return x.Capacity |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingChannelsResponse_PendingChannel) GetLocalBalance() int64 { |
|
if x != nil { |
|
return x.LocalBalance |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingChannelsResponse_PendingChannel) GetRemoteBalance() int64 { |
|
if x != nil { |
|
return x.RemoteBalance |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingChannelsResponse_PendingChannel) GetLocalChanReserveSat() int64 { |
|
if x != nil { |
|
return x.LocalChanReserveSat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingChannelsResponse_PendingChannel) GetRemoteChanReserveSat() int64 { |
|
if x != nil { |
|
return x.RemoteChanReserveSat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingChannelsResponse_PendingChannel) GetInitiator() Initiator { |
|
if x != nil { |
|
return x.Initiator |
|
} |
|
return Initiator_INITIATOR_UNKNOWN |
|
} |
|
|
|
func (x *PendingChannelsResponse_PendingChannel) GetCommitmentType() CommitmentType { |
|
if x != nil { |
|
return x.CommitmentType |
|
} |
|
return CommitmentType_LEGACY |
|
} |
|
|
|
type PendingChannelsResponse_PendingOpenChannel struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The pending channel |
|
Channel *PendingChannelsResponse_PendingChannel `protobuf:"bytes,1,opt,name=channel,proto3" json:"channel,omitempty"` |
|
// The height at which this channel will be confirmed |
|
ConfirmationHeight uint32 `protobuf:"varint,2,opt,name=confirmation_height,json=confirmationHeight,proto3" json:"confirmation_height,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,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. |
|
FeePerKw int64 `protobuf:"varint,6,opt,name=fee_per_kw,json=feePerKw,proto3" json:"fee_per_kw,omitempty"` |
|
} |
|
|
|
func (x *PendingChannelsResponse_PendingOpenChannel) Reset() { |
|
*x = PendingChannelsResponse_PendingOpenChannel{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[171] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *PendingChannelsResponse_PendingOpenChannel) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*PendingChannelsResponse_PendingOpenChannel) ProtoMessage() {} |
|
|
|
func (x *PendingChannelsResponse_PendingOpenChannel) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[171] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use PendingChannelsResponse_PendingOpenChannel.ProtoReflect.Descriptor instead. |
|
func (*PendingChannelsResponse_PendingOpenChannel) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{72, 1} |
|
} |
|
|
|
func (x *PendingChannelsResponse_PendingOpenChannel) GetChannel() *PendingChannelsResponse_PendingChannel { |
|
if x != nil { |
|
return x.Channel |
|
} |
|
return nil |
|
} |
|
|
|
func (x *PendingChannelsResponse_PendingOpenChannel) GetConfirmationHeight() uint32 { |
|
if x != nil { |
|
return x.ConfirmationHeight |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingChannelsResponse_PendingOpenChannel) GetCommitFee() int64 { |
|
if x != nil { |
|
return x.CommitFee |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingChannelsResponse_PendingOpenChannel) GetCommitWeight() int64 { |
|
if x != nil { |
|
return x.CommitWeight |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingChannelsResponse_PendingOpenChannel) GetFeePerKw() int64 { |
|
if x != nil { |
|
return x.FeePerKw |
|
} |
|
return 0 |
|
} |
|
|
|
type PendingChannelsResponse_WaitingCloseChannel struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The pending channel waiting for closing tx to confirm |
|
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. |
|
Commitments *PendingChannelsResponse_Commitments `protobuf:"bytes,3,opt,name=commitments,proto3" json:"commitments,omitempty"` |
|
} |
|
|
|
func (x *PendingChannelsResponse_WaitingCloseChannel) Reset() { |
|
*x = PendingChannelsResponse_WaitingCloseChannel{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[172] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *PendingChannelsResponse_WaitingCloseChannel) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*PendingChannelsResponse_WaitingCloseChannel) ProtoMessage() {} |
|
|
|
func (x *PendingChannelsResponse_WaitingCloseChannel) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[172] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use PendingChannelsResponse_WaitingCloseChannel.ProtoReflect.Descriptor instead. |
|
func (*PendingChannelsResponse_WaitingCloseChannel) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{72, 2} |
|
} |
|
|
|
func (x *PendingChannelsResponse_WaitingCloseChannel) GetChannel() *PendingChannelsResponse_PendingChannel { |
|
if x != nil { |
|
return x.Channel |
|
} |
|
return nil |
|
} |
|
|
|
func (x *PendingChannelsResponse_WaitingCloseChannel) GetLimboBalance() int64 { |
|
if x != nil { |
|
return x.LimboBalance |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingChannelsResponse_WaitingCloseChannel) GetCommitments() *PendingChannelsResponse_Commitments { |
|
if x != nil { |
|
return x.Commitments |
|
} |
|
return nil |
|
} |
|
|
|
type PendingChannelsResponse_Commitments struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// Hash of the local version of the commitment tx. |
|
LocalTxid string `protobuf:"bytes,1,opt,name=local_txid,json=localTxid,proto3" json:"local_txid,omitempty"` |
|
// Hash of the remote version of the commitment tx. |
|
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. |
|
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. |
|
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. |
|
RemotePendingCommitFeeSat uint64 `protobuf:"varint,6,opt,name=remote_pending_commit_fee_sat,json=remotePendingCommitFeeSat,proto3" json:"remote_pending_commit_fee_sat,omitempty"` |
|
} |
|
|
|
func (x *PendingChannelsResponse_Commitments) Reset() { |
|
*x = PendingChannelsResponse_Commitments{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[173] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *PendingChannelsResponse_Commitments) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*PendingChannelsResponse_Commitments) ProtoMessage() {} |
|
|
|
func (x *PendingChannelsResponse_Commitments) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[173] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use PendingChannelsResponse_Commitments.ProtoReflect.Descriptor instead. |
|
func (*PendingChannelsResponse_Commitments) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{72, 3} |
|
} |
|
|
|
func (x *PendingChannelsResponse_Commitments) GetLocalTxid() string { |
|
if x != nil { |
|
return x.LocalTxid |
|
} |
|
return "" |
|
} |
|
|
|
func (x *PendingChannelsResponse_Commitments) GetRemoteTxid() string { |
|
if x != nil { |
|
return x.RemoteTxid |
|
} |
|
return "" |
|
} |
|
|
|
func (x *PendingChannelsResponse_Commitments) GetRemotePendingTxid() string { |
|
if x != nil { |
|
return x.RemotePendingTxid |
|
} |
|
return "" |
|
} |
|
|
|
func (x *PendingChannelsResponse_Commitments) GetLocalCommitFeeSat() uint64 { |
|
if x != nil { |
|
return x.LocalCommitFeeSat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingChannelsResponse_Commitments) GetRemoteCommitFeeSat() uint64 { |
|
if x != nil { |
|
return x.RemoteCommitFeeSat |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingChannelsResponse_Commitments) GetRemotePendingCommitFeeSat() uint64 { |
|
if x != nil { |
|
return x.RemotePendingCommitFeeSat |
|
} |
|
return 0 |
|
} |
|
|
|
type PendingChannelsResponse_ClosedChannel struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The pending channel to be closed |
|
Channel *PendingChannelsResponse_PendingChannel `protobuf:"bytes,1,opt,name=channel,proto3" json:"channel,omitempty"` |
|
// The transaction id of the closing transaction |
|
ClosingTxid string `protobuf:"bytes,2,opt,name=closing_txid,json=closingTxid,proto3" json:"closing_txid,omitempty"` |
|
} |
|
|
|
func (x *PendingChannelsResponse_ClosedChannel) Reset() { |
|
*x = PendingChannelsResponse_ClosedChannel{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[174] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *PendingChannelsResponse_ClosedChannel) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*PendingChannelsResponse_ClosedChannel) ProtoMessage() {} |
|
|
|
func (x *PendingChannelsResponse_ClosedChannel) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[174] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use PendingChannelsResponse_ClosedChannel.ProtoReflect.Descriptor instead. |
|
func (*PendingChannelsResponse_ClosedChannel) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{72, 4} |
|
} |
|
|
|
func (x *PendingChannelsResponse_ClosedChannel) GetChannel() *PendingChannelsResponse_PendingChannel { |
|
if x != nil { |
|
return x.Channel |
|
} |
|
return nil |
|
} |
|
|
|
func (x *PendingChannelsResponse_ClosedChannel) GetClosingTxid() string { |
|
if x != nil { |
|
return x.ClosingTxid |
|
} |
|
return "" |
|
} |
|
|
|
type PendingChannelsResponse_ForceClosedChannel struct { |
|
state protoimpl.MessageState |
|
sizeCache protoimpl.SizeCache |
|
unknownFields protoimpl.UnknownFields |
|
|
|
// The pending channel to be force closed |
|
Channel *PendingChannelsResponse_PendingChannel `protobuf:"bytes,1,opt,name=channel,proto3" json:"channel,omitempty"` |
|
// The transaction id of the closing transaction |
|
ClosingTxid string `protobuf:"bytes,2,opt,name=closing_txid,json=closingTxid,proto3" json:"closing_txid,omitempty"` |
|
// The balance in satoshis encumbered in this pending channel |
|
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. |
|
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"` |
|
PendingHtlcs []*PendingHTLC `protobuf:"bytes,8,rep,name=pending_htlcs,json=pendingHtlcs,proto3" json:"pending_htlcs,omitempty"` |
|
Anchor PendingChannelsResponse_ForceClosedChannel_AnchorState `protobuf:"varint,9,opt,name=anchor,proto3,enum=lnrpc.PendingChannelsResponse_ForceClosedChannel_AnchorState" json:"anchor,omitempty"` |
|
} |
|
|
|
func (x *PendingChannelsResponse_ForceClosedChannel) Reset() { |
|
*x = PendingChannelsResponse_ForceClosedChannel{} |
|
if protoimpl.UnsafeEnabled { |
|
mi := &file_rpc_proto_msgTypes[175] |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
ms.StoreMessageInfo(mi) |
|
} |
|
} |
|
|
|
func (x *PendingChannelsResponse_ForceClosedChannel) String() string { |
|
return protoimpl.X.MessageStringOf(x) |
|
} |
|
|
|
func (*PendingChannelsResponse_ForceClosedChannel) ProtoMessage() {} |
|
|
|
func (x *PendingChannelsResponse_ForceClosedChannel) ProtoReflect() protoreflect.Message { |
|
mi := &file_rpc_proto_msgTypes[175] |
|
if protoimpl.UnsafeEnabled && x != nil { |
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
|
if ms.LoadMessageInfo() == nil { |
|
ms.StoreMessageInfo(mi) |
|
} |
|
return ms |
|
} |
|
return mi.MessageOf(x) |
|
} |
|
|
|
// Deprecated: Use PendingChannelsResponse_ForceClosedChannel.ProtoReflect.Descriptor instead. |
|
func (*PendingChannelsResponse_ForceClosedChannel) Descriptor() ([]byte, []int) { |
|
return file_rpc_proto_rawDescGZIP(), []int{72, 5} |
|
} |
|
|
|
func (x *PendingChannelsResponse_ForceClosedChannel) GetChannel() *PendingChannelsResponse_PendingChannel { |
|
if x != nil { |
|
return x.Channel |
|
} |
|
return nil |
|
} |
|
|
|
func (x *PendingChannelsResponse_ForceClosedChannel) GetClosingTxid() string { |
|
if x != nil { |
|
return x.ClosingTxid |
|
} |
|
return "" |
|
} |
|
|
|
func (x *PendingChannelsResponse_ForceClosedChannel) GetLimboBalance() int64 { |
|
if x != nil { |
|
return x.LimboBalance |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingChannelsResponse_ForceClosedChannel) GetMaturityHeight() uint32 { |
|
if x != nil { |
|
return x.MaturityHeight |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingChannelsResponse_ForceClosedChannel) GetBlocksTilMaturity() int32 { |
|
if x != nil { |
|
return x.BlocksTilMaturity |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingChannelsResponse_ForceClosedChannel) GetRecoveredBalance() int64 { |
|
if x != nil { |
|
return x.RecoveredBalance |
|
} |
|
return 0 |
|
} |
|
|
|
func (x *PendingChannelsResponse_ForceClosedChannel) GetPendingHtlcs() []*PendingHTLC { |
|
if x != nil { |
|
return x.PendingHtlcs |
|
} |
|
return nil |
|
} |
|
|
|
func (x *PendingChannelsResponse_ForceClosedChannel) GetAnchor() PendingChannelsResponse_ForceClosedChannel_AnchorState { |
|
if x != nil { |
|
return x.Anchor |
|
} |
|
return PendingChannelsResponse_ForceClosedChannel_LIMBO |
|
} |
|
|
|
var File_rpc_proto protoreflect.FileDescriptor |
|
|
|
var file_rpc_proto_rawDesc = []byte{ |
|
0x0a, 0x09, 0x72, 0x70, 0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x05, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x22, 0xe6, 0x01, 0x0a, 0x04, 0x55, 0x74, 0x78, 0x6f, 0x12, 0x35, 0x0a, 0x0c, 0x61, |
|
0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, |
|
0x0e, 0x32, 0x12, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, |
|
0x73, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x54, 0x79, |
|
0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, |
|
0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1d, 0x0a, 0x0a, |
|
0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, |
|
0x52, 0x09, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x61, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, |
|
0x6b, 0x5f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, |
|
0x70, 0x6b, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x12, 0x2b, 0x0a, 0x08, 0x6f, 0x75, 0x74, 0x70, |
|
0x6f, 0x69, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x4f, 0x75, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x08, 0x6f, 0x75, 0x74, |
|
0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, |
|
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, |
|
0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xc6, 0x02, 0x0a, 0x0b, |
|
0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x74, |
|
0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, |
|
0x48, 0x61, 0x73, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, |
|
0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x11, |
|
0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, |
|
0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6e, 0x75, 0x6d, 0x43, 0x6f, 0x6e, 0x66, |
|
0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, |
|
0x63, 0x6b, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, |
|
0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, |
|
0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, |
|
0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x74, |
|
0x69, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, |
|
0x09, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, |
|
0x74, 0x61, 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, |
|
0x74, 0x6f, 0x74, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x65, 0x73, |
|
0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, |
|
0x09, 0x52, 0x0d, 0x64, 0x65, 0x73, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, |
|
0x12, 0x1c, 0x0a, 0x0a, 0x72, 0x61, 0x77, 0x5f, 0x74, 0x78, 0x5f, 0x68, 0x65, 0x78, 0x18, 0x09, |
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x61, 0x77, 0x54, 0x78, 0x48, 0x65, 0x78, 0x12, 0x14, |
|
0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, |
|
0x61, 0x62, 0x65, 0x6c, 0x22, 0x74, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, |
|
0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, |
|
0x0a, 0x0c, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, |
|
0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, |
|
0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, |
|
0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x65, 0x6e, 0x64, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, |
|
0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, |
|
0x09, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x4c, 0x0a, 0x12, 0x54, 0x72, |
|
0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, |
|
0x12, 0x36, 0x0a, 0x0c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, |
|
0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x54, |
|
0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x74, 0x72, 0x61, 0x6e, |
|
0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x68, 0x0a, 0x08, 0x46, 0x65, 0x65, 0x4c, |
|
0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x05, 0x66, 0x69, 0x78, 0x65, 0x64, 0x18, 0x01, 0x20, |
|
0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x05, 0x66, 0x69, 0x78, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0a, |
|
0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, |
|
0x48, 0x00, 0x52, 0x09, 0x66, 0x69, 0x78, 0x65, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x1a, 0x0a, |
|
0x07, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, |
|
0x52, 0x07, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x6c, 0x69, 0x6d, |
|
0x69, 0x74, 0x22, 0xea, 0x05, 0x0a, 0x0b, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, |
|
0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, |
|
0x52, 0x04, 0x64, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x5f, 0x73, |
|
0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, |
|
0x0a, 0x64, 0x65, 0x73, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x61, |
|
0x6d, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x61, 0x6d, 0x74, 0x12, 0x19, 0x0a, |
|
0x08, 0x61, 0x6d, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, |
|
0x07, 0x61, 0x6d, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, |
|
0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, |
|
0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x32, 0x0a, 0x13, 0x70, |
|
0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x5f, 0x73, 0x74, 0x72, 0x69, |
|
0x6e, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x11, 0x70, 0x61, |
|
0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, |
|
0x27, 0x0a, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, |
|
0x73, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, |
|
0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x66, 0x69, 0x6e, 0x61, |
|
0x6c, 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, |
|
0x28, 0x05, 0x52, 0x0e, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x43, 0x6c, 0x74, 0x76, 0x44, 0x65, 0x6c, |
|
0x74, 0x61, 0x12, 0x2c, 0x0a, 0x09, 0x66, 0x65, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, |
|
0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x65, |
|
0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x08, 0x66, 0x65, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, |
|
0x12, 0x2c, 0x0a, 0x10, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, 0x61, |
|
0x6e, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x42, 0x02, 0x30, 0x01, 0x52, 0x0e, |
|
0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x49, 0x64, 0x12, 0x26, |
|
0x0a, 0x0f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x6f, 0x70, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, |
|
0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x6f, 0x70, |
|
0x50, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x6c, |
|
0x69, 0x6d, 0x69, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x6c, 0x74, 0x76, |
|
0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x59, 0x0a, 0x13, 0x64, 0x65, 0x73, 0x74, 0x5f, 0x63, 0x75, |
|
0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x0b, 0x20, 0x03, |
|
0x28, 0x0b, 0x32, 0x29, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x52, |
|
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x44, 0x65, 0x73, 0x74, 0x43, 0x75, 0x73, 0x74, 0x6f, |
|
0x6d, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x11, 0x64, |
|
0x65, 0x73, 0x74, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, |
|
0x12, 0x2c, 0x0a, 0x12, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x70, |
|
0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x61, 0x6c, |
|
0x6c, 0x6f, 0x77, 0x53, 0x65, 0x6c, 0x66, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x36, |
|
0x0a, 0x0d, 0x64, 0x65, 0x73, 0x74, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, |
|
0x0f, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x65, |
|
0x61, 0x74, 0x75, 0x72, 0x65, 0x42, 0x69, 0x74, 0x52, 0x0c, 0x64, 0x65, 0x73, 0x74, 0x46, 0x65, |
|
0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, |
|
0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, |
|
0x79, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x1a, 0x44, 0x0a, 0x16, 0x44, 0x65, 0x73, |
|
0x74, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x45, 0x6e, |
|
0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, |
|
0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, |
|
0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, |
|
0xb4, 0x01, 0x0a, 0x0c, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, |
|
0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x65, 0x72, 0x72, 0x6f, |
|
0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, |
|
0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, |
|
0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, |
|
0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, |
|
0x12, 0x31, 0x0a, 0x0d, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x74, |
|
0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, |
|
0x52, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x6f, |
|
0x75, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, |
|
0x61, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, |
|
0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x22, 0x95, 0x01, 0x0a, 0x12, 0x53, 0x65, 0x6e, 0x64, 0x54, |
|
0x6f, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, |
|
0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, |
|
0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, |
|
0x12, 0x32, 0x0a, 0x13, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, |
|
0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, |
|
0x01, 0x52, 0x11, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x53, 0x74, |
|
0x72, 0x69, 0x6e, 0x67, 0x12, 0x22, 0x0a, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x04, 0x20, |
|
0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x6f, 0x75, 0x74, |
|
0x65, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, 0x22, 0xda, |
|
0x03, 0x0a, 0x14, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, |
|
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x6f, 0x64, 0x65, 0x5f, |
|
0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x6e, 0x6f, |
|
0x64, 0x65, 0x50, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, |
|
0x6e, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, |
|
0x61, 0x69, 0x6e, 0x48, 0x61, 0x73, 0x68, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x65, 0x6e, 0x64, 0x69, |
|
0x6e, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, |
|
0x52, 0x0d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x49, 0x64, 0x12, |
|
0x1f, 0x0a, 0x0b, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6d, 0x74, 0x18, 0x04, |
|
0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x41, 0x6d, 0x74, |
|
0x12, 0x19, 0x0a, 0x08, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x61, 0x6d, 0x74, 0x18, 0x05, 0x20, 0x01, |
|
0x28, 0x04, 0x52, 0x07, 0x70, 0x75, 0x73, 0x68, 0x41, 0x6d, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x64, |
|
0x75, 0x73, 0x74, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, |
|
0x09, 0x64, 0x75, 0x73, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x2d, 0x0a, 0x13, 0x6d, 0x61, |
|
0x78, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x5f, 0x66, 0x6c, 0x69, 0x67, 0x68, |
|
0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x6d, 0x61, 0x78, 0x56, 0x61, 0x6c, 0x75, |
|
0x65, 0x49, 0x6e, 0x46, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x68, 0x61, |
|
0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x18, 0x08, 0x20, 0x01, |
|
0x28, 0x04, 0x52, 0x0e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x65, 0x72, |
|
0x76, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x18, 0x09, |
|
0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x69, 0x6e, 0x48, 0x74, 0x6c, 0x63, 0x12, 0x1c, 0x0a, |
|
0x0a, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6b, 0x77, 0x18, 0x0a, 0x20, 0x01, 0x28, |
|
0x04, 0x52, 0x08, 0x66, 0x65, 0x65, 0x50, 0x65, 0x72, 0x4b, 0x77, 0x12, 0x1b, 0x0a, 0x09, 0x63, |
|
0x73, 0x76, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, |
|
0x63, 0x73, 0x76, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x2c, 0x0a, 0x12, 0x6d, 0x61, 0x78, 0x5f, |
|
0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x18, 0x0c, |
|
0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6d, 0x61, 0x78, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, |
|
0x64, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, |
|
0x6c, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, |
|
0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x22, 0xf3, 0x02, 0x0a, 0x15, |
|
0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x52, 0x65, 0x73, |
|
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x18, |
|
0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x12, 0x26, 0x0a, |
|
0x0f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, |
|
0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, |
|
0x68, 0x61, 0x6e, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x03, |
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x29, 0x0a, 0x10, 0x75, |
|
0x70, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x18, |
|
0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x75, 0x70, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x53, 0x68, |
|
0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x73, 0x76, 0x5f, 0x64, 0x65, |
|
0x6c, 0x61, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x73, 0x76, 0x44, 0x65, |
|
0x6c, 0x61, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x5f, 0x73, |
|
0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, |
|
0x65, 0x53, 0x61, 0x74, 0x12, 0x2b, 0x0a, 0x12, 0x69, 0x6e, 0x5f, 0x66, 0x6c, 0x69, 0x67, 0x68, |
|
0x74, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, |
|
0x52, 0x0f, 0x69, 0x6e, 0x46, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x4d, 0x61, 0x78, 0x4d, 0x73, 0x61, |
|
0x74, 0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x63, 0x6f, |
|
0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x48, 0x74, |
|
0x6c, 0x63, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0b, 0x6d, 0x69, 0x6e, 0x5f, 0x68, |
|
0x74, 0x6c, 0x63, 0x5f, 0x69, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6d, 0x69, |
|
0x6e, 0x48, 0x74, 0x6c, 0x63, 0x49, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x69, 0x6e, 0x5f, 0x61, |
|
0x63, 0x63, 0x65, 0x70, 0x74, 0x5f, 0x64, 0x65, 0x70, 0x74, 0x68, 0x18, 0x0a, 0x20, 0x01, 0x28, |
|
0x0d, 0x52, 0x0e, 0x6d, 0x69, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x44, 0x65, 0x70, 0x74, |
|
0x68, 0x22, 0x9d, 0x01, 0x0a, 0x0c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x6f, 0x69, |
|
0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x12, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, |
|
0x69, 0x64, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, |
|
0x52, 0x10, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69, 0x64, 0x42, 0x79, 0x74, |
|
0x65, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, |
|
0x69, 0x64, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0e, |
|
0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69, 0x64, 0x53, 0x74, 0x72, 0x12, 0x21, |
|
0x0a, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, |
|
0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, 0x64, 0x65, |
|
0x78, 0x42, 0x0e, 0x0a, 0x0c, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, |
|
0x64, 0x22, 0x67, 0x0a, 0x08, 0x4f, 0x75, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1d, 0x0a, |
|
0x0a, 0x74, 0x78, 0x69, 0x64, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, |
|
0x0c, 0x52, 0x09, 0x74, 0x78, 0x69, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, |
|
0x74, 0x78, 0x69, 0x64, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, |
|
0x74, 0x78, 0x69, 0x64, 0x53, 0x74, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, |
|
0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6f, |
|
0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x3e, 0x0a, 0x10, 0x4c, 0x69, |
|
0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x16, |
|
0x0a, 0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, |
|
0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x02, |
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x22, 0x91, 0x02, 0x0a, 0x12, 0x45, |
|
0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x46, 0x65, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, |
|
0x74, 0x12, 0x4f, 0x0a, 0x0c, 0x41, 0x64, 0x64, 0x72, 0x54, 0x6f, 0x41, 0x6d, 0x6f, 0x75, 0x6e, |
|
0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, |
|
0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x46, 0x65, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, |
|
0x73, 0x74, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x54, 0x6f, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x45, |
|
0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x41, 0x64, 0x64, 0x72, 0x54, 0x6f, 0x41, 0x6d, 0x6f, 0x75, |
|
0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, |
|
0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, |
|
0x6f, 0x6e, 0x66, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x69, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x73, |
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x73, |
|
0x12, 0x2b, 0x0a, 0x11, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x5f, 0x75, 0x6e, 0x63, 0x6f, 0x6e, 0x66, |
|
0x69, 0x72, 0x6d, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x70, 0x65, |
|
0x6e, 0x64, 0x55, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x1a, 0x3f, 0x0a, |
|
0x11, 0x41, 0x64, 0x64, 0x72, 0x54, 0x6f, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6e, 0x74, |
|
0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, |
|
0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, |
|
0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x87, |
|
0x01, 0x0a, 0x13, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x46, 0x65, 0x65, 0x52, 0x65, |
|
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x5f, 0x73, 0x61, |
|
0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x66, 0x65, 0x65, 0x53, 0x61, 0x74, 0x12, |
|
0x33, 0x0a, 0x14, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x5f, 0x70, |
|
0x65, 0x72, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, |
|
0x01, 0x52, 0x11, 0x66, 0x65, 0x65, 0x72, 0x61, 0x74, 0x65, 0x53, 0x61, 0x74, 0x50, 0x65, 0x72, |
|
0x42, 0x79, 0x74, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x73, 0x61, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x5f, |
|
0x76, 0x62, 0x79, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x73, 0x61, 0x74, |
|
0x50, 0x65, 0x72, 0x56, 0x62, 0x79, 0x74, 0x65, 0x22, 0xeb, 0x02, 0x0a, 0x0f, 0x53, 0x65, 0x6e, |
|
0x64, 0x4d, 0x61, 0x6e, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4c, 0x0a, 0x0c, |
|
0x41, 0x64, 0x64, 0x72, 0x54, 0x6f, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x03, |
|
0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, |
|
0x61, 0x6e, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x54, |
|
0x6f, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x41, 0x64, |
|
0x64, 0x72, 0x54, 0x6f, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, |
|
0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, |
|
0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x12, 0x22, 0x0a, 0x0d, 0x73, |
|
0x61, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x76, 0x62, 0x79, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, |
|
0x28, 0x04, 0x52, 0x0b, 0x73, 0x61, 0x74, 0x50, 0x65, 0x72, 0x56, 0x62, 0x79, 0x74, 0x65, 0x12, |
|
0x24, 0x0a, 0x0c, 0x73, 0x61, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x18, |
|
0x05, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x73, 0x61, 0x74, 0x50, 0x65, |
|
0x72, 0x42, 0x79, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x06, |
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x1b, 0x0a, 0x09, 0x6d, |
|
0x69, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, |
|
0x6d, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x70, 0x65, 0x6e, |
|
0x64, 0x5f, 0x75, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x18, 0x08, 0x20, |
|
0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x55, 0x6e, 0x63, 0x6f, 0x6e, 0x66, |
|
0x69, 0x72, 0x6d, 0x65, 0x64, 0x1a, 0x3f, 0x0a, 0x11, 0x41, 0x64, 0x64, 0x72, 0x54, 0x6f, 0x41, |
|
0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, |
|
0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, |
|
0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, |
|
0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x26, 0x0a, 0x10, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x61, |
|
0x6e, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, |
|
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0xa4, |
|
0x02, 0x0a, 0x10, 0x53, 0x65, 0x6e, 0x64, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, |
|
0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x64, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, |
|
0x09, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, |
|
0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, |
|
0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x18, 0x03, |
|
0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, |
|
0x12, 0x22, 0x0a, 0x0d, 0x73, 0x61, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x76, 0x62, 0x79, 0x74, |
|
0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x73, 0x61, 0x74, 0x50, 0x65, 0x72, 0x56, |
|
0x62, 0x79, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0c, 0x73, 0x61, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x5f, |
|
0x62, 0x79, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, |
|
0x73, 0x61, 0x74, 0x50, 0x65, 0x72, 0x42, 0x79, 0x74, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x65, |
|
0x6e, 0x64, 0x5f, 0x61, 0x6c, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x65, |
|
0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x07, |
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x1b, 0x0a, 0x09, 0x6d, |
|
0x69, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, |
|
0x6d, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x70, 0x65, 0x6e, |
|
0x64, 0x5f, 0x75, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x18, 0x09, 0x20, |
|
0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x55, 0x6e, 0x63, 0x6f, 0x6e, 0x66, |
|
0x69, 0x72, 0x6d, 0x65, 0x64, 0x22, 0x27, 0x0a, 0x11, 0x53, 0x65, 0x6e, 0x64, 0x43, 0x6f, 0x69, |
|
0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, |
|
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x78, 0x69, 0x64, 0x22, 0x68, |
|
0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, |
|
0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x69, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, |
|
0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x66, |
|
0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x73, 0x18, 0x02, |
|
0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x43, 0x6f, 0x6e, 0x66, 0x73, 0x12, 0x18, |
|
0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, |
|
0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x38, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, |
|
0x55, 0x6e, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, |
|
0x21, 0x0a, 0x05, 0x75, 0x74, 0x78, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, |
|
0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x74, 0x78, 0x6f, 0x52, 0x05, 0x75, 0x74, 0x78, |
|
0x6f, 0x73, 0x22, 0x55, 0x0a, 0x11, 0x4e, 0x65, 0x77, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, |
|
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, |
|
0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x64, |
|
0x64, 0x72, 0x65, 0x73, 0x73, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, |
|
0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, |
|
0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x2e, 0x0a, 0x12, 0x4e, 0x65, 0x77, |
|
0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, |
|
0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, |
|
0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x26, 0x0a, 0x12, 0x53, 0x69, 0x67, |
|
0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, |
|
0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x6d, 0x73, |
|
0x67, 0x22, 0x33, 0x0a, 0x13, 0x53, 0x69, 0x67, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, |
|
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, |
|
0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x67, |
|
0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x46, 0x0a, 0x14, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, |
|
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, |
|
0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x6d, 0x73, 0x67, |
|
0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, |
|
0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x45, |
|
0x0a, 0x15, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, |
|
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x69, 0x64, |
|
0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x12, 0x16, 0x0a, |
|
0x06, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, |
|
0x75, 0x62, 0x6b, 0x65, 0x79, 0x22, 0x6f, 0x0a, 0x12, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, |
|
0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x04, 0x61, |
|
0x64, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x6c, 0x6e, 0x72, 0x70, |
|
0x63, 0x2e, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, |
|
0x73, 0x73, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x65, 0x72, 0x6d, |
|
0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x70, 0x65, 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, |
|
0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x74, |
|
0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x22, 0x15, 0x0a, 0x13, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, |
|
0x74, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x30, 0x0a, |
|
0x15, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x50, 0x65, 0x65, 0x72, 0x52, |
|
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x75, 0x62, 0x5f, 0x6b, 0x65, |
|
0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x22, |
|
0x18, 0x0a, 0x16, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x50, 0x65, 0x65, |
|
0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x86, 0x02, 0x0a, 0x04, 0x48, 0x54, |
|
0x4c, 0x43, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x18, 0x01, |
|
0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x12, 0x16, |
|
0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, |
|
0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x61, 0x73, 0x68, 0x5f, 0x6c, |
|
0x6f, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x68, 0x61, 0x73, 0x68, 0x4c, |
|
0x6f, 0x63, 0x6b, 0x12, 0x2b, 0x0a, 0x11, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, |
|
0x6e, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, |
|
0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, |
|
0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x05, |
|
0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x68, 0x74, 0x6c, 0x63, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, |
|
0x2d, 0x0a, 0x12, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, |
|
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x66, 0x6f, 0x72, |
|
0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x32, |
|
0x0a, 0x15, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x74, 0x6c, |
|
0x63, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x13, 0x66, |
|
0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x48, 0x74, 0x6c, 0x63, 0x49, 0x6e, 0x64, |
|
0x65, 0x78, 0x22, 0x84, 0x02, 0x0a, 0x12, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, |
|
0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x73, 0x76, |
|
0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x73, |
|
0x76, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x72, |
|
0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, |
|
0x52, 0x0e, 0x63, 0x68, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x53, 0x61, 0x74, |
|
0x12, 0x24, 0x0a, 0x0e, 0x64, 0x75, 0x73, 0x74, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x73, |
|
0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x64, 0x75, 0x73, 0x74, 0x4c, 0x69, |
|
0x6d, 0x69, 0x74, 0x53, 0x61, 0x74, 0x12, 0x2f, 0x0a, 0x14, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x65, |
|
0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6d, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x04, |
|
0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x6d, 0x61, 0x78, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, |
|
0x41, 0x6d, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x69, 0x6e, 0x5f, 0x68, |
|
0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, |
|
0x6d, 0x69, 0x6e, 0x48, 0x74, 0x6c, 0x63, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x6d, |
|
0x61, 0x78, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x68, 0x74, 0x6c, 0x63, |
|
0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6d, 0x61, 0x78, 0x41, 0x63, 0x63, 0x65, |
|
0x70, 0x74, 0x65, 0x64, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x22, 0xd7, 0x09, 0x0a, 0x07, 0x43, 0x68, |
|
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, |
|
0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x23, 0x0a, |
|
0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x02, |
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6b, |
|
0x65, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x70, 0x6f, |
|
0x69, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, |
|
0x65, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x5f, |
|
0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x42, 0x02, 0x30, 0x01, 0x52, 0x06, 0x63, 0x68, |
|
0x61, 0x6e, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, |
|
0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, |
|
0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, |
|
0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x61, |
|
0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, |
|
0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x72, |
|
0x65, 0x6d, 0x6f, 0x74, 0x65, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x0a, |
|
0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, |
|
0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x46, 0x65, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, |
|
0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x09, 0x20, 0x01, |
|
0x28, 0x03, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, |
|
0x12, 0x1c, 0x0a, 0x0a, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x6b, 0x77, 0x18, 0x0a, |
|
0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x66, 0x65, 0x65, 0x50, 0x65, 0x72, 0x4b, 0x77, 0x12, 0x2b, |
|
0x0a, 0x11, 0x75, 0x6e, 0x73, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x6c, 0x61, |
|
0x6e, 0x63, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x75, 0x6e, 0x73, 0x65, 0x74, |
|
0x74, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x74, |
|
0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x5f, 0x73, 0x65, |
|
0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, |
|
0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x53, 0x65, 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x17, 0x74, |
|
0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x5f, 0x72, 0x65, |
|
0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x15, 0x74, 0x6f, |
|
0x74, 0x61, 0x6c, 0x53, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x52, 0x65, 0x63, 0x65, 0x69, |
|
0x76, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x75, 0x6d, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, |
|
0x65, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x6e, 0x75, 0x6d, 0x55, 0x70, 0x64, |
|
0x61, 0x74, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x0d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, |
|
0x68, 0x74, 0x6c, 0x63, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x6c, 0x6e, |
|
0x72, 0x70, 0x63, 0x2e, 0x48, 0x54, 0x4c, 0x43, 0x52, 0x0c, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, |
|
0x67, 0x48, 0x74, 0x6c, 0x63, 0x73, 0x12, 0x1f, 0x0a, 0x09, 0x63, 0x73, 0x76, 0x5f, 0x64, 0x65, |
|
0x6c, 0x61, 0x79, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x02, 0x18, 0x01, 0x52, 0x08, 0x63, |
|
0x73, 0x76, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, |
|
0x74, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, |
|
0x65, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x12, |
|
0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x12, |
|
0x2a, 0x0a, 0x11, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x66, |
|
0x6c, 0x61, 0x67, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x68, 0x61, 0x6e, |
|
0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x37, 0x0a, 0x16, 0x6c, |
|
0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, |
|
0x65, 0x5f, 0x73, 0x61, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, |
|
0x13, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, |
|
0x65, 0x53, 0x61, 0x74, 0x12, 0x39, 0x0a, 0x17, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, |
|
0x68, 0x61, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x18, |
|
0x15, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x14, 0x72, 0x65, 0x6d, 0x6f, 0x74, |
|
0x65, 0x43, 0x68, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x53, 0x61, 0x74, 0x12, |
|
0x2e, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x74, 0x69, 0x63, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, |
|
0x5f, 0x6b, 0x65, 0x79, 0x18, 0x16, 0x20, 0x01, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0f, |
|
0x73, 0x74, 0x61, 0x74, 0x69, 0x63, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x12, |
|
0x3e, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, |
|
0x70, 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, |
|
0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, |
|
0x1a, 0x0a, 0x08, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, |
|
0x03, 0x52, 0x08, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x75, |
|
0x70, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x70, 0x74, |
|
0x69, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x61, 0x64, 0x64, |
|
0x72, 0x65, 0x73, 0x73, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6c, 0x6f, 0x73, |
|
0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x75, 0x73, 0x68, |
|
0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x61, 0x74, 0x18, 0x1b, 0x20, 0x01, 0x28, |
|
0x04, 0x52, 0x0d, 0x70, 0x75, 0x73, 0x68, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x61, 0x74, |
|
0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x68, 0x61, 0x77, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, |
|
0x1c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x68, 0x61, 0x77, 0x48, 0x65, 0x69, 0x67, 0x68, |
|
0x74, 0x12, 0x46, 0x0a, 0x11, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x74, |
|
0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6c, |
|
0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x73, |
|
0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x10, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x6f, |
|
0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x48, 0x0a, 0x12, 0x72, 0x65, 0x6d, |
|
0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x18, |
|
0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, |
|
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, |
|
0x52, 0x11, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, |
|
0x6e, 0x74, 0x73, 0x22, 0xb3, 0x01, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, |
|
0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x61, |
|
0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, |
|
0x52, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x23, 0x0a, 0x0d, |
|
0x69, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x02, 0x20, |
|
0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4f, 0x6e, 0x6c, |
|
0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, |
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4f, 0x6e, |
|
0x6c, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x6f, 0x6e, |
|
0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, |
|
0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x65, 0x65, 0x72, 0x18, 0x05, 0x20, |
|
0x01, 0x28, 0x0c, 0x52, 0x04, 0x70, 0x65, 0x65, 0x72, 0x22, 0x42, 0x0a, 0x14, 0x4c, 0x69, 0x73, |
|
0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, |
|
0x65, 0x12, 0x2a, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x0b, 0x20, |
|
0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, |
|
0x6e, 0x65, 0x6c, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0xd8, 0x05, |
|
0x0a, 0x13, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x53, 0x75, |
|
0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, |
|
0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x68, |
|
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x07, 0x63, 0x68, |
|
0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x02, 0x30, 0x01, 0x52, |
|
0x06, 0x63, 0x68, 0x61, 0x6e, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, |
|
0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, |
|
0x69, 0x6e, 0x48, 0x61, 0x73, 0x68, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x6c, 0x6f, 0x73, 0x69, 0x6e, |
|
0x67, 0x5f, 0x74, 0x78, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, |
|
0x0d, 0x63, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x23, |
|
0x0a, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, |
|
0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x75, 0x62, |
|
0x6b, 0x65, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, |
|
0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x12, |
|
0x21, 0x0a, 0x0c, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, |
|
0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x48, 0x65, 0x69, 0x67, |
|
0x68, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x64, 0x5f, 0x62, 0x61, |
|
0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x73, 0x65, 0x74, |
|
0x74, 0x6c, 0x65, 0x64, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x74, |
|
0x69, 0x6d, 0x65, 0x5f, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, |
|
0x63, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x74, 0x69, 0x6d, 0x65, 0x4c, 0x6f, |
|
0x63, 0x6b, 0x65, 0x64, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x45, 0x0a, 0x0a, 0x63, |
|
0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, |
|
0x26, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, |
|
0x6c, 0x6f, 0x73, 0x65, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x2e, 0x43, 0x6c, 0x6f, 0x73, |
|
0x75, 0x72, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x54, 0x79, |
|
0x70, 0x65, 0x12, 0x37, 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, |
|
0x61, 0x74, 0x6f, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x0d, 0x6f, 0x70, |
|
0x65, 0x6e, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x39, 0x0a, 0x0f, 0x63, |
|
0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x0c, |
|
0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x69, |
|
0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x0e, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x49, 0x6e, 0x69, |
|
0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x33, 0x0a, 0x0b, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75, |
|
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6c, 0x6e, |
|
0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, |
|
0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x8a, 0x01, 0x0a, 0x0b, |
|
0x43, 0x6c, 0x6f, 0x73, 0x75, 0x72, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x43, |
|
0x4f, 0x4f, 0x50, 0x45, 0x52, 0x41, 0x54, 0x49, 0x56, 0x45, 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, |
|
0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x46, 0x4f, 0x52, 0x43, |
|
0x45, 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x52, 0x45, 0x4d, |
|
0x4f, 0x54, 0x45, 0x5f, 0x46, 0x4f, 0x52, 0x43, 0x45, 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x10, |
|
0x02, 0x12, 0x10, 0x0a, 0x0c, 0x42, 0x52, 0x45, 0x41, 0x43, 0x48, 0x5f, 0x43, 0x4c, 0x4f, 0x53, |
|
0x45, 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x55, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x43, |
|
0x41, 0x4e, 0x43, 0x45, 0x4c, 0x45, 0x44, 0x10, 0x04, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x42, 0x41, |
|
0x4e, 0x44, 0x4f, 0x4e, 0x45, 0x44, 0x10, 0x05, 0x22, 0xeb, 0x01, 0x0a, 0x0a, 0x52, 0x65, 0x73, |
|
0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3e, 0x0a, 0x0f, 0x72, 0x65, 0x73, 0x6f, 0x6c, |
|
0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, |
|
0x32, 0x15, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, |
|
0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0e, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, |
|
0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x32, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x63, 0x6f, |
|
0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x75, 0x74, 0x63, 0x6f, |
|
0x6d, 0x65, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x6f, |
|
0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, |
|
0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x75, 0x74, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x08, |
|
0x6f, 0x75, 0x74, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x6d, 0x6f, 0x75, |
|
0x6e, 0x74, 0x5f, 0x73, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x61, 0x6d, |
|
0x6f, 0x75, 0x6e, 0x74, 0x53, 0x61, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x77, 0x65, 0x65, 0x70, |
|
0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x77, 0x65, |
|
0x65, 0x70, 0x54, 0x78, 0x69, 0x64, 0x22, 0xde, 0x01, 0x0a, 0x15, 0x43, 0x6c, 0x6f, 0x73, 0x65, |
|
0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, |
|
0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65, 0x18, |
|
0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x63, 0x6f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, |
|
0x76, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x66, 0x6f, 0x72, 0x63, |
|
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x46, 0x6f, |
|
0x72, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x66, 0x6f, |
|
0x72, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x72, 0x65, 0x6d, 0x6f, 0x74, |
|
0x65, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x72, 0x65, 0x61, 0x63, 0x68, |
|
0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x62, 0x72, 0x65, 0x61, 0x63, 0x68, 0x12, 0x29, |
|
0x0a, 0x10, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, |
|
0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, |
|
0x67, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x62, 0x61, |
|
0x6e, 0x64, 0x6f, 0x6e, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x61, 0x62, |
|
0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x65, 0x64, 0x22, 0x50, 0x0a, 0x16, 0x43, 0x6c, 0x6f, 0x73, 0x65, |
|
0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, |
|
0x65, 0x12, 0x36, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, |
|
0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, |
|
0x6e, 0x65, 0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, |
|
0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0xdf, 0x04, 0x0a, 0x04, 0x50, 0x65, |
|
0x65, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x75, 0x62, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, |
|
0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x61, |
|
0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, |
|
0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x73, |
|
0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x62, 0x79, 0x74, 0x65, 0x73, |
|
0x53, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x72, 0x65, |
|
0x63, 0x76, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x62, 0x79, 0x74, 0x65, 0x73, 0x52, |
|
0x65, 0x63, 0x76, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x61, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x18, |
|
0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x73, 0x61, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x12, 0x19, |
|
0x0a, 0x08, 0x73, 0x61, 0x74, 0x5f, 0x72, 0x65, 0x63, 0x76, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, |
|
0x52, 0x07, 0x73, 0x61, 0x74, 0x52, 0x65, 0x63, 0x76, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x6e, 0x62, |
|
0x6f, 0x75, 0x6e, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x6e, 0x62, 0x6f, |
|
0x75, 0x6e, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, |
|
0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x70, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, |
|
0x12, 0x31, 0x0a, 0x09, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, |
|
0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x65, 0x65, 0x72, |
|
0x2e, 0x53, 0x79, 0x6e, 0x63, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x73, 0x79, 0x6e, 0x63, 0x54, |
|
0x79, 0x70, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, |
|
0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x65, |
|
0x65, 0x72, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, |
|
0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x06, 0x65, 0x72, |
|
0x72, 0x6f, 0x72, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x65, 0x64, 0x45, 0x72, |
|
0x72, 0x6f, 0x72, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x66, |
|
0x6c, 0x61, 0x70, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, |
|
0x09, 0x66, 0x6c, 0x61, 0x70, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x6c, 0x61, |
|
0x73, 0x74, 0x5f, 0x66, 0x6c, 0x61, 0x70, 0x5f, 0x6e, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, |
|
0x52, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x46, 0x6c, 0x61, 0x70, 0x4e, 0x73, 0x1a, 0x4b, 0x0a, 0x0d, |
|
0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, |
|
0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, |
|
0x24, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, |
|
0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x05, |
|
0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x50, 0x0a, 0x08, 0x53, 0x79, 0x6e, |
|
0x63, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, |
|
0x5f, 0x53, 0x59, 0x4e, 0x43, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x43, 0x54, 0x49, 0x56, |
|
0x45, 0x5f, 0x53, 0x59, 0x4e, 0x43, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x41, 0x53, 0x53, |
|
0x49, 0x56, 0x45, 0x5f, 0x53, 0x59, 0x4e, 0x43, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x50, 0x49, |
|
0x4e, 0x4e, 0x45, 0x44, 0x5f, 0x53, 0x59, 0x4e, 0x43, 0x10, 0x03, 0x22, 0x46, 0x0a, 0x10, 0x54, |
|
0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x65, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, |
|
0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, |
|
0x28, 0x04, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x14, 0x0a, |
|
0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, |
|
0x72, 0x6f, 0x72, 0x22, 0x35, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x65, 0x72, 0x73, |
|
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x61, 0x74, 0x65, 0x73, |
|
0x74, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6c, |
|
0x61, 0x74, 0x65, 0x73, 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x36, 0x0a, 0x11, 0x4c, 0x69, |
|
0x73, 0x74, 0x50, 0x65, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, |
|
0x21, 0x0a, 0x05, 0x70, 0x65, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, |
|
0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x52, 0x05, 0x70, 0x65, 0x65, |
|
0x72, 0x73, 0x22, 0x17, 0x0a, 0x15, 0x50, 0x65, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x53, |
|
0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x84, 0x01, 0x0a, 0x09, |
|
0x50, 0x65, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x75, 0x62, |
|
0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x75, 0x62, 0x4b, |
|
0x65, 0x79, 0x12, 0x2e, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, |
|
0x32, 0x1a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x45, 0x76, 0x65, |
|
0x6e, 0x74, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, |
|
0x70, 0x65, 0x22, 0x2e, 0x0a, 0x09, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, |
|
0x0f, 0x0a, 0x0b, 0x50, 0x45, 0x45, 0x52, 0x5f, 0x4f, 0x4e, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0x00, |
|
0x12, 0x10, 0x0a, 0x0c, 0x50, 0x45, 0x45, 0x52, 0x5f, 0x4f, 0x46, 0x46, 0x4c, 0x49, 0x4e, 0x45, |
|
0x10, 0x01, 0x22, 0x10, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, |
|
0x75, 0x65, 0x73, 0x74, 0x22, 0x87, 0x06, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, |
|
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, |
|
0x69, 0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, |
|
0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x68, 0x61, 0x73, |
|
0x68, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x48, |
|
0x61, 0x73, 0x68, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, |
|
0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x64, |
|
0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x50, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, |
|
0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, |
|
0x61, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x11, 0x20, 0x01, 0x28, |
|
0x09, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x30, 0x0a, 0x14, 0x6e, 0x75, 0x6d, 0x5f, |
|
0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, |
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x6e, 0x75, 0x6d, 0x50, 0x65, 0x6e, 0x64, 0x69, |
|
0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x6e, 0x75, |
|
0x6d, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, |
|
0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x6e, 0x75, 0x6d, 0x41, 0x63, 0x74, 0x69, |
|
0x76, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x6e, 0x75, |
|
0x6d, 0x5f, 0x69, 0x6e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, |
|
0x65, 0x6c, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6e, 0x75, 0x6d, 0x49, 0x6e, |
|
0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x1b, |
|
0x0a, 0x09, 0x6e, 0x75, 0x6d, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, |
|
0x0d, 0x52, 0x08, 0x6e, 0x75, 0x6d, 0x50, 0x65, 0x65, 0x72, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x62, |
|
0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, |
|
0x0d, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1d, |
|
0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x08, 0x20, 0x01, |
|
0x28, 0x09, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, 0x12, 0x32, 0x0a, |
|
0x15, 0x62, 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x69, 0x6d, |
|
0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x62, 0x65, |
|
0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, |
|
0x70, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x79, 0x6e, 0x63, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x63, |
|
0x68, 0x61, 0x69, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x73, 0x79, 0x6e, 0x63, |
|
0x65, 0x64, 0x54, 0x6f, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x79, 0x6e, |
|
0x63, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x18, 0x12, 0x20, 0x01, |
|
0x28, 0x08, 0x52, 0x0d, 0x73, 0x79, 0x6e, 0x63, 0x65, 0x64, 0x54, 0x6f, 0x47, 0x72, 0x61, 0x70, |
|
0x68, 0x12, 0x1c, 0x0a, 0x07, 0x74, 0x65, 0x73, 0x74, 0x6e, 0x65, 0x74, 0x18, 0x0a, 0x20, 0x01, |
|
0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x07, 0x74, 0x65, 0x73, 0x74, 0x6e, 0x65, 0x74, 0x12, |
|
0x24, 0x0a, 0x06, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, |
|
0x0c, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x52, 0x06, 0x63, |
|
0x68, 0x61, 0x69, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x72, 0x69, 0x73, 0x18, 0x0c, 0x20, |
|
0x03, 0x28, 0x09, 0x52, 0x04, 0x75, 0x72, 0x69, 0x73, 0x12, 0x40, 0x0a, 0x08, 0x66, 0x65, 0x61, |
|
0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x13, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6c, 0x6e, |
|
0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, |
|
0x6e, 0x73, 0x65, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, |
|
0x79, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x1a, 0x4b, 0x0a, 0x0d, 0x46, |
|
0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, |
|
0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x24, |
|
0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, |
|
0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x05, 0x76, |
|
0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x4a, 0x04, 0x08, 0x0b, 0x10, 0x0c, 0x22, 0x18, |
|
0x0a, 0x16, 0x47, 0x65, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x49, 0x6e, 0x66, |
|
0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x87, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, |
|
0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, |
|
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, |
|
0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x72, 0x65, 0x63, |
|
0x6f, 0x76, 0x65, 0x72, 0x79, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x72, 0x65, 0x63, |
|
0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18, 0x02, |
|
0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x46, 0x69, |
|
0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, |
|
0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, |
|
0x73, 0x73, 0x22, 0x37, 0x0a, 0x05, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x63, |
|
0x68, 0x61, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x68, 0x61, 0x69, |
|
0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x02, 0x20, 0x01, |
|
0x28, 0x09, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x22, 0x7a, 0x0a, 0x12, 0x43, |
|
0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, |
|
0x65, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x73, 0x68, 0x61, 0x18, 0x01, |
|
0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x68, 0x61, 0x12, 0x21, |
|
0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, |
|
0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x65, 0x69, 0x67, 0x68, |
|
0x74, 0x12, 0x24, 0x0a, 0x0e, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x73, 0x5f, 0x6c, |
|
0x65, 0x66, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6e, 0x75, 0x6d, 0x43, 0x6f, |
|
0x6e, 0x66, 0x73, 0x4c, 0x65, 0x66, 0x74, 0x22, 0x4d, 0x0a, 0x11, 0x43, 0x68, 0x61, 0x6e, 0x6e, |
|
0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x38, 0x0a, 0x0d, |
|
0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, |
|
0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, |
|
0x6e, 0x65, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, |
|
0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0x51, 0x0a, 0x12, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, |
|
0x6c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, |
|
0x63, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, |
|
0x28, 0x0c, 0x52, 0x0b, 0x63, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69, 0x64, 0x12, |
|
0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, |
|
0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0xfb, 0x01, 0x0a, 0x13, 0x43, 0x6c, |
|
0x6f, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, |
|
0x74, 0x12, 0x38, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x70, 0x6f, 0x69, |
|
0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x0c, 0x63, |
|
0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x66, |
|
0x6f, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x66, 0x6f, 0x72, 0x63, |
|
0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, |
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x6f, |
|
0x6e, 0x66, 0x12, 0x24, 0x0a, 0x0c, 0x73, 0x61, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x62, 0x79, |
|
0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x73, 0x61, |
|
0x74, 0x50, 0x65, 0x72, 0x42, 0x79, 0x74, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, 0x6c, 0x69, |
|
0x76, 0x65, 0x72, 0x79, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, |
|
0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, |
|
0x65, 0x73, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x73, 0x61, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x76, |
|
0x62, 0x79, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x73, 0x61, 0x74, 0x50, |
|
0x65, 0x72, 0x56, 0x62, 0x79, 0x74, 0x65, 0x22, 0x96, 0x01, 0x0a, 0x11, 0x43, 0x6c, 0x6f, 0x73, |
|
0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x3b, 0x0a, |
|
0x0d, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x01, |
|
0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x65, 0x6e, |
|
0x64, 0x69, 0x6e, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x0c, 0x63, 0x6c, |
|
0x6f, 0x73, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x3a, 0x0a, 0x0a, 0x63, 0x68, |
|
0x61, 0x6e, 0x5f, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, |
|
0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6c, |
|
0x6f, 0x73, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x09, 0x63, 0x68, 0x61, |
|
0x6e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, |
|
0x22, 0x46, 0x0a, 0x0d, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, |
|
0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, |
|
0x04, 0x74, 0x78, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, |
|
0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6f, 0x75, 0x74, |
|
0x70, 0x75, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x79, 0x0a, 0x13, 0x52, 0x65, 0x61, 0x64, |
|
0x79, 0x46, 0x6f, 0x72, 0x50, 0x73, 0x62, 0x74, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, |
|
0x27, 0x0a, 0x0f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, |
|
0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, |
|
0x67, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x75, 0x6e, 0x64, |
|
0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, |
|
0x52, 0x0d, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, |
|
0x12, 0x0a, 0x04, 0x70, 0x73, 0x62, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x70, |
|
0x73, 0x62, 0x74, 0x22, 0xc0, 0x05, 0x0a, 0x12, 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, |
|
0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0d, 0x73, 0x61, |
|
0x74, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x76, 0x62, 0x79, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, |
|
0x04, 0x52, 0x0b, 0x73, 0x61, 0x74, 0x50, 0x65, 0x72, 0x56, 0x62, 0x79, 0x74, 0x65, 0x12, 0x1f, |
|
0x0a, 0x0b, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, |
|
0x01, 0x28, 0x0c, 0x52, 0x0a, 0x6e, 0x6f, 0x64, 0x65, 0x50, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, |
|
0x30, 0x0a, 0x12, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x5f, 0x73, |
|
0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, |
|
0x10, 0x6e, 0x6f, 0x64, 0x65, 0x50, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x53, 0x74, 0x72, 0x69, 0x6e, |
|
0x67, 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, |
|
0x6e, 0x67, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, |
|
0x12, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x41, 0x6d, 0x6f, |
|
0x75, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x73, 0x61, 0x74, 0x18, |
|
0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x70, 0x75, 0x73, 0x68, 0x53, 0x61, 0x74, 0x12, 0x1f, |
|
0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x18, 0x06, 0x20, |
|
0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x12, |
|
0x24, 0x0a, 0x0c, 0x73, 0x61, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x18, |
|
0x07, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x73, 0x61, 0x74, 0x50, 0x65, |
|
0x72, 0x42, 0x79, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, |
|
0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, |
|
0x22, 0x0a, 0x0d, 0x6d, 0x69, 0x6e, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x73, 0x61, 0x74, |
|
0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x48, 0x74, 0x6c, 0x63, 0x4d, |
|
0x73, 0x61, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x73, |
|
0x76, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x72, |
|
0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x73, 0x76, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x1b, 0x0a, |
|
0x09, 0x6d, 0x69, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, |
|
0x52, 0x08, 0x6d, 0x69, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x70, |
|
0x65, 0x6e, 0x64, 0x5f, 0x75, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x18, |
|
0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x55, 0x6e, 0x63, 0x6f, |
|
0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6c, 0x6f, 0x73, 0x65, |
|
0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, |
|
0x63, 0x6c, 0x6f, 0x73, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x35, 0x0a, 0x0c, |
|
0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x68, 0x69, 0x6d, 0x18, 0x0e, 0x20, 0x01, |
|
0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x69, |
|
0x6e, 0x67, 0x53, 0x68, 0x69, 0x6d, 0x52, 0x0b, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x53, |
|
0x68, 0x69, 0x6d, 0x12, 0x43, 0x0a, 0x1f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x6d, 0x61, |
|
0x78, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x69, 0x6e, 0x5f, 0x66, 0x6c, 0x69, 0x67, 0x68, |
|
0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x52, 0x1a, 0x72, 0x65, |
|
0x6d, 0x6f, 0x74, 0x65, 0x4d, 0x61, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x49, 0x6e, 0x46, 0x6c, |
|
0x69, 0x67, 0x68, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x6d, 0x6f, |
|
0x74, 0x65, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x18, 0x10, 0x20, 0x01, |
|
0x28, 0x0d, 0x52, 0x0e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4d, 0x61, 0x78, 0x48, 0x74, 0x6c, |
|
0x63, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, |
|
0x63, 0x73, 0x76, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x4c, 0x6f, |
|
0x63, 0x61, 0x6c, 0x43, 0x73, 0x76, 0x22, 0xf3, 0x01, 0x0a, 0x10, 0x4f, 0x70, 0x65, 0x6e, 0x53, |
|
0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x39, 0x0a, 0x0c, 0x63, |
|
0x68, 0x61, 0x6e, 0x5f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, |
|
0x0b, 0x32, 0x14, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, |
|
0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x50, |
|
0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x37, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x6f, |
|
0x70, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6c, 0x6e, 0x72, 0x70, |
|
0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x55, 0x70, 0x64, |
|
0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x4f, 0x70, 0x65, 0x6e, 0x12, |
|
0x39, 0x0a, 0x09, 0x70, 0x73, 0x62, 0x74, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01, |
|
0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x79, |
|
0x46, 0x6f, 0x72, 0x50, 0x73, 0x62, 0x74, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x48, 0x00, |
|
0x52, 0x08, 0x70, 0x73, 0x62, 0x74, 0x46, 0x75, 0x6e, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x65, |
|
0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, |
|
0x01, 0x28, 0x0c, 0x52, 0x0d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, |
|
0x49, 0x64, 0x42, 0x08, 0x0a, 0x06, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0x48, 0x0a, 0x0a, |
|
0x4b, 0x65, 0x79, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x6b, 0x65, |
|
0x79, 0x5f, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, |
|
0x6b, 0x65, 0x79, 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x6b, 0x65, 0x79, |
|
0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6b, 0x65, |
|
0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x5f, 0x0a, 0x0d, 0x4b, 0x65, 0x79, 0x44, 0x65, 0x73, |
|
0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0d, 0x72, 0x61, 0x77, 0x5f, 0x6b, |
|
0x65, 0x79, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, |
|
0x72, 0x61, 0x77, 0x4b, 0x65, 0x79, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x07, 0x6b, |
|
0x65, 0x79, 0x5f, 0x6c, 0x6f, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6c, |
|
0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4b, 0x65, 0x79, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x52, |
|
0x06, 0x6b, 0x65, 0x79, 0x4c, 0x6f, 0x63, 0x22, 0xf0, 0x01, 0x0a, 0x0d, 0x43, 0x68, 0x61, 0x6e, |
|
0x50, 0x6f, 0x69, 0x6e, 0x74, 0x53, 0x68, 0x69, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x6d, 0x74, |
|
0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x61, 0x6d, 0x74, 0x12, 0x32, 0x0a, 0x0a, 0x63, |
|
0x68, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, |
|
0x13, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x50, |
|
0x6f, 0x69, 0x6e, 0x74, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, |
|
0x31, 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, |
|
0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4b, 0x65, 0x79, 0x44, 0x65, |
|
0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x4b, |
|
0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x6b, 0x65, 0x79, |
|
0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4b, 0x65, |
|
0x79, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, 0x61, |
|
0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x70, 0x65, 0x6e, 0x64, |
|
0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x68, 0x61, |
|
0x77, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, |
|
0x74, 0x68, 0x61, 0x77, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0x6e, 0x0a, 0x08, 0x50, 0x73, |
|
0x62, 0x74, 0x53, 0x68, 0x69, 0x6d, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, |
|
0x67, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, |
|
0x0d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x49, 0x64, 0x12, 0x1b, |
|
0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x70, 0x73, 0x62, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, |
|
0x0c, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x50, 0x73, 0x62, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, |
|
0x6f, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, |
|
0x09, 0x6e, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x22, 0x85, 0x01, 0x0a, 0x0b, 0x46, |
|
0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x68, 0x69, 0x6d, 0x12, 0x3e, 0x0a, 0x0f, 0x63, 0x68, |
|
0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x73, 0x68, 0x69, 0x6d, 0x18, 0x01, 0x20, |
|
0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, |
|
0x50, 0x6f, 0x69, 0x6e, 0x74, 0x53, 0x68, 0x69, 0x6d, 0x48, 0x00, 0x52, 0x0d, 0x63, 0x68, 0x61, |
|
0x6e, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x53, 0x68, 0x69, 0x6d, 0x12, 0x2e, 0x0a, 0x09, 0x70, 0x73, |
|
0x62, 0x74, 0x5f, 0x73, 0x68, 0x69, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, |
|
0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x73, 0x62, 0x74, 0x53, 0x68, 0x69, 0x6d, 0x48, 0x00, |
|
0x52, 0x08, 0x70, 0x73, 0x62, 0x74, 0x53, 0x68, 0x69, 0x6d, 0x42, 0x06, 0x0a, 0x04, 0x73, 0x68, |
|
0x69, 0x6d, 0x22, 0x3b, 0x0a, 0x11, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x68, 0x69, |
|
0x6d, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x65, 0x6e, 0x64, 0x69, |
|
0x6e, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, |
|
0x52, 0x0d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x49, 0x64, 0x22, |
|
0x5c, 0x0a, 0x11, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x73, 0x62, 0x74, 0x56, 0x65, |
|
0x72, 0x69, 0x66, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x70, |
|
0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x66, 0x75, 0x6e, 0x64, 0x65, |
|
0x64, 0x50, 0x73, 0x62, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, |
|
0x5f, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, |
|
0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x49, 0x64, 0x22, 0x80, 0x01, |
|
0x0a, 0x13, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x73, 0x62, 0x74, 0x46, 0x69, 0x6e, |
|
0x61, 0x6c, 0x69, 0x7a, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, |
|
0x70, 0x73, 0x62, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x73, 0x69, 0x67, 0x6e, |
|
0x65, 0x64, 0x50, 0x73, 0x62, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, |
|
0x67, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, |
|
0x0d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x49, 0x64, 0x12, 0x20, |
|
0x0a, 0x0c, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x72, 0x61, 0x77, 0x5f, 0x74, 0x78, 0x18, 0x03, |
|
0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x61, 0x77, 0x54, 0x78, |
|
0x22, 0x99, 0x02, 0x0a, 0x14, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, |
|
0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x67, 0x12, 0x39, 0x0a, 0x0d, 0x73, 0x68, 0x69, |
|
0x6d, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, |
|
0x32, 0x12, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, |
|
0x53, 0x68, 0x69, 0x6d, 0x48, 0x00, 0x52, 0x0c, 0x73, 0x68, 0x69, 0x6d, 0x52, 0x65, 0x67, 0x69, |
|
0x73, 0x74, 0x65, 0x72, 0x12, 0x3b, 0x0a, 0x0b, 0x73, 0x68, 0x69, 0x6d, 0x5f, 0x63, 0x61, 0x6e, |
|
0x63, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6c, 0x6e, 0x72, 0x70, |
|
0x63, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x68, 0x69, 0x6d, 0x43, 0x61, 0x6e, |
|
0x63, 0x65, 0x6c, 0x48, 0x00, 0x52, 0x0a, 0x73, 0x68, 0x69, 0x6d, 0x43, 0x61, 0x6e, 0x63, 0x65, |
|
0x6c, 0x12, 0x3b, 0x0a, 0x0b, 0x70, 0x73, 0x62, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, |
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x46, |
|
0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x73, 0x62, 0x74, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, |
|
0x48, 0x00, 0x52, 0x0a, 0x70, 0x73, 0x62, 0x74, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x41, |
|
0x0a, 0x0d, 0x70, 0x73, 0x62, 0x74, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x18, |
|
0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x75, |
|
0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x73, 0x62, 0x74, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, |
|
0x65, 0x48, 0x00, 0x52, 0x0c, 0x70, 0x73, 0x62, 0x74, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, |
|
0x65, 0x42, 0x09, 0x0a, 0x07, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x22, 0x16, 0x0a, 0x14, |
|
0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x53, 0x74, 0x65, 0x70, |
|
0x52, 0x65, 0x73, 0x70, 0x22, 0xcc, 0x01, 0x0a, 0x0b, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, |
|
0x48, 0x54, 0x4c, 0x43, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, |
|
0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, |
|
0x12, 0x16, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, |
|
0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x75, 0x74, 0x70, |
|
0x6f, 0x69, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x75, 0x74, 0x70, |
|
0x6f, 0x69, 0x6e, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x61, 0x74, 0x75, 0x72, 0x69, 0x74, 0x79, |
|
0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d, |
|
0x61, 0x74, 0x75, 0x72, 0x69, 0x74, 0x79, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x2e, 0x0a, |
|
0x13, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x5f, 0x74, 0x69, 0x6c, 0x5f, 0x6d, 0x61, 0x74, 0x75, |
|
0x72, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x62, 0x6c, 0x6f, 0x63, |
|
0x6b, 0x73, 0x54, 0x69, 0x6c, 0x4d, 0x61, 0x74, 0x75, 0x72, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, |
|
0x05, 0x73, 0x74, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x74, |
|
0x61, 0x67, 0x65, 0x22, 0x18, 0x0a, 0x16, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, |
|
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xfd, 0x11, |
|
0x0a, 0x17, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, |
|
0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x74, 0x6f, 0x74, |
|
0x61, 0x6c, 0x5f, 0x6c, 0x69, 0x6d, 0x62, 0x6f, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, |
|
0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x4c, 0x69, 0x6d, |
|
0x62, 0x6f, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x65, 0x0a, 0x15, 0x70, 0x65, 0x6e, |
|
0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, |
|
0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, |
|
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, |
|
0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x13, 0x70, 0x65, 0x6e, |
|
0x64, 0x69, 0x6e, 0x67, 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, |
|
0x12, 0x6a, 0x0a, 0x18, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6c, 0x6f, 0x73, |
|
0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, |
|
0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, |
|
0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, |
|
0x73, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, |
|
0x42, 0x02, 0x18, 0x01, 0x52, 0x16, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6c, 0x6f, |
|
0x73, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x76, 0x0a, 0x1e, |
|
0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x63, 0x6c, |
|
0x6f, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x04, |
|
0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x65, 0x6e, |
|
0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, |
|
0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, |
|
0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x1b, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, |
|
0x46, 0x6f, 0x72, 0x63, 0x65, 0x43, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, |
|
0x6e, 0x65, 0x6c, 0x73, 0x12, 0x68, 0x0a, 0x16, 0x77, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x5f, |
|
0x63, 0x6c, 0x6f, 0x73, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x05, |
|
0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x65, 0x6e, |
|
0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, |
|
0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x43, 0x6c, 0x6f, 0x73, |
|
0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x14, 0x77, 0x61, 0x69, 0x74, 0x69, 0x6e, |
|
0x67, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x1a, 0xa1, |
|
0x03, 0x0a, 0x0e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, |
|
0x6c, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x6e, 0x6f, 0x64, 0x65, |
|
0x5f, 0x70, 0x75, 0x62, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x6d, 0x6f, |
|
0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x50, 0x75, 0x62, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x61, |
|
0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, |
|
0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1a, |
|
0x0a, 0x08, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, |
|
0x52, 0x08, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x6f, |
|
0x63, 0x61, 0x6c, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, |
|
0x03, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, |
|
0x25, 0x0a, 0x0e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, |
|
0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x42, |
|
0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x33, 0x0a, 0x16, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, |
|
0x63, 0x68, 0x61, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x5f, 0x73, 0x61, 0x74, |
|
0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x68, 0x61, |
|
0x6e, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x53, 0x61, 0x74, 0x12, 0x35, 0x0a, 0x17, 0x72, |
|
0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x72, |
|
0x76, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x14, 0x72, 0x65, |
|
0x6d, 0x6f, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x53, |
|
0x61, 0x74, 0x12, 0x2e, 0x0a, 0x09, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x18, |
|
0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, |
|
0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x09, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, |
|
0x6f, 0x72, 0x12, 0x3e, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, |
|
0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x6c, 0x6e, |
|
0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x54, 0x79, |
|
0x70, 0x65, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x54, 0x79, |
|
0x70, 0x65, 0x1a, 0xf0, 0x01, 0x0a, 0x12, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x70, |
|
0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x47, 0x0a, 0x07, 0x63, 0x68, 0x61, |
|
0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, |
|
0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, |
|
0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, |
|
0x65, 0x6c, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, |
|
0x6f, 0x6e, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, |
|
0x12, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x65, 0x69, |
|
0x67, 0x68, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x66, 0x65, |
|
0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x46, |
|
0x65, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x77, 0x65, 0x69, |
|
0x67, 0x68, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x69, |
|
0x74, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1c, 0x0a, 0x0a, 0x66, 0x65, 0x65, 0x5f, 0x70, |
|
0x65, 0x72, 0x5f, 0x6b, 0x77, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x66, 0x65, 0x65, |
|
0x50, 0x65, 0x72, 0x4b, 0x77, 0x1a, 0xd1, 0x01, 0x0a, 0x13, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e, |
|
0x67, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x47, 0x0a, |
|
0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, |
|
0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, |
|
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, |
|
0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x07, 0x63, |
|
0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x69, 0x6d, 0x62, 0x6f, 0x5f, |
|
0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6c, |
|
0x69, 0x6d, 0x62, 0x6f, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x4c, 0x0a, 0x0b, 0x63, |
|
0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, |
|
0x32, 0x2a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, |
|
0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, |
|
0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x0b, 0x63, 0x6f, |
|
0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0xa3, 0x02, 0x0a, 0x0b, 0x43, 0x6f, |
|
0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x63, |
|
0x61, 0x6c, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6c, |
|
0x6f, 0x63, 0x61, 0x6c, 0x54, 0x78, 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x6d, 0x6f, |
|
0x74, 0x65, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, |
|
0x65, 0x6d, 0x6f, 0x74, 0x65, 0x54, 0x78, 0x69, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x65, 0x6d, |
|
0x6f, 0x74, 0x65, 0x5f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, |
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x65, |
|
0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69, 0x64, 0x12, 0x2f, 0x0a, 0x14, 0x6c, 0x6f, 0x63, |
|
0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x73, 0x61, |
|
0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x6f, |
|
0x6d, 0x6d, 0x69, 0x74, 0x46, 0x65, 0x65, 0x53, 0x61, 0x74, 0x12, 0x31, 0x0a, 0x15, 0x72, 0x65, |
|
0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x5f, |
|
0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x12, 0x72, 0x65, 0x6d, 0x6f, 0x74, |
|
0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x46, 0x65, 0x65, 0x53, 0x61, 0x74, 0x12, 0x40, 0x0a, |
|
0x1d, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, |
|
0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x18, 0x06, |
|
0x20, 0x01, 0x28, 0x04, 0x52, 0x19, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x65, 0x6e, 0x64, |
|
0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x46, 0x65, 0x65, 0x53, 0x61, 0x74, 0x1a, |
|
0x7b, 0x0a, 0x0d, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, |
|
0x12, 0x47, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, |
|
0x0b, 0x32, 0x2d, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, |
|
0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, |
|
0x65, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, |
|
0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6c, 0x6f, |
|
0x73, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, |
|
0x0b, 0x63, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69, 0x64, 0x1a, 0xee, 0x03, 0x0a, |
|
0x12, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, |
|
0x6e, 0x65, 0x6c, 0x12, 0x47, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01, |
|
0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x65, 0x6e, |
|
0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, |
|
0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, |
|
0x6e, 0x65, 0x6c, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x21, 0x0a, 0x0c, |
|
0x63, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x78, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, |
|
0x28, 0x09, 0x52, 0x0b, 0x63, 0x6c, 0x6f, 0x73, 0x69, 0x6e, 0x67, 0x54, 0x78, 0x69, 0x64, 0x12, |
|
0x23, 0x0a, 0x0d, 0x6c, 0x69, 0x6d, 0x62, 0x6f, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, |
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6c, 0x69, 0x6d, 0x62, 0x6f, 0x42, 0x61, 0x6c, |
|
0x61, 0x6e, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x61, 0x74, 0x75, 0x72, 0x69, 0x74, 0x79, |
|
0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d, |
|
0x61, 0x74, 0x75, 0x72, 0x69, 0x74, 0x79, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x2e, 0x0a, |
|
0x13, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x5f, 0x74, 0x69, 0x6c, 0x5f, 0x6d, 0x61, 0x74, 0x75, |
|
0x72, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x62, 0x6c, 0x6f, 0x63, |
|
0x6b, 0x73, 0x54, 0x69, 0x6c, 0x4d, 0x61, 0x74, 0x75, 0x72, 0x69, 0x74, 0x79, 0x12, 0x2b, 0x0a, |
|
0x11, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, |
|
0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, |
|
0x72, 0x65, 0x64, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x37, 0x0a, 0x0d, 0x70, 0x65, |
|
0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, |
|
0x0b, 0x32, 0x12, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, |
|
0x67, 0x48, 0x54, 0x4c, 0x43, 0x52, 0x0c, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x48, 0x74, |
|
0x6c, 0x63, 0x73, 0x12, 0x55, 0x0a, 0x06, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x18, 0x09, 0x20, |
|
0x01, 0x28, 0x0e, 0x32, 0x3d, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x65, 0x6e, 0x64, |
|
0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, |
|
0x6e, 0x73, 0x65, 0x2e, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x43, |
|
0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x41, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x53, 0x74, 0x61, |
|
0x74, 0x65, 0x52, 0x06, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x22, 0x31, 0x0a, 0x0b, 0x41, 0x6e, |
|
0x63, 0x68, 0x6f, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x4c, 0x49, 0x4d, |
|
0x42, 0x4f, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x52, 0x45, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x45, |
|
0x44, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x4c, 0x4f, 0x53, 0x54, 0x10, 0x02, 0x22, 0x1a, 0x0a, |
|
0x18, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x62, |
|
0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x95, 0x04, 0x0a, 0x12, 0x43, 0x68, |
|
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, |
|
0x12, 0x33, 0x0a, 0x0c, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, |
|
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, |
|
0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x48, 0x00, 0x52, 0x0b, 0x6f, 0x70, 0x65, 0x6e, 0x43, 0x68, |
|
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x43, 0x0a, 0x0e, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x5f, |
|
0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, |
|
0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6c, 0x6f, |
|
0x73, 0x65, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x48, 0x00, 0x52, 0x0d, 0x63, 0x6c, 0x6f, |
|
0x73, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x3c, 0x0a, 0x0e, 0x61, 0x63, |
|
0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, |
|
0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, |
|
0x65, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0d, 0x61, 0x63, 0x74, 0x69, 0x76, |
|
0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x40, 0x0a, 0x10, 0x69, 0x6e, 0x61, 0x63, |
|
0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, |
|
0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, |
|
0x65, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x69, 0x6e, 0x61, 0x63, 0x74, |
|
0x69, 0x76, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x48, 0x0a, 0x14, 0x70, 0x65, |
|
0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, |
|
0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x48, 0x00, |
|
0x52, 0x12, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, |
|
0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x38, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, |
|
0x28, 0x0e, 0x32, 0x24, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, |
|
0x65, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x55, 0x70, |
|
0x64, 0x61, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x76, |
|
0x0a, 0x0a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, |
|
0x4f, 0x50, 0x45, 0x4e, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x10, 0x00, 0x12, 0x12, |
|
0x0a, 0x0e, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x44, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, |
|
0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x5f, 0x43, 0x48, 0x41, |
|
0x4e, 0x4e, 0x45, 0x4c, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x49, 0x4e, 0x41, 0x43, 0x54, 0x49, |
|
0x56, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14, |
|
0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x4f, 0x50, 0x45, 0x4e, 0x5f, 0x43, 0x48, 0x41, |
|
0x4e, 0x4e, 0x45, 0x4c, 0x10, 0x04, 0x42, 0x09, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, |
|
0x6c, 0x22, 0x74, 0x0a, 0x14, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, |
|
0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x6f, 0x6e, |
|
0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, |
|
0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x42, |
|
0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x2f, 0x0a, 0x13, 0x75, 0x6e, 0x63, 0x6f, 0x6e, 0x66, |
|
0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, |
|
0x01, 0x28, 0x03, 0x52, 0x12, 0x75, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, |
|
0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x16, 0x0a, 0x14, 0x57, 0x61, 0x6c, 0x6c, 0x65, |
|
0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, |
|
0xd5, 0x02, 0x0a, 0x15, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, |
|
0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x6f, 0x74, |
|
0x61, 0x6c, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, |
|
0x52, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x2b, |
|
0x0a, 0x11, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x6c, 0x61, |
|
0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x66, 0x69, |
|
0x72, 0x6d, 0x65, 0x64, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x2f, 0x0a, 0x13, 0x75, |
|
0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, |
|
0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x75, 0x6e, 0x63, 0x6f, 0x6e, 0x66, |
|
0x69, 0x72, 0x6d, 0x65, 0x64, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x59, 0x0a, 0x0f, |
|
0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, |
|
0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x57, 0x61, |
|
0x6c, 0x6c, 0x65, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, |
|
0x6e, 0x73, 0x65, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, |
|
0x63, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, |
|
0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x1a, 0x5e, 0x0a, 0x13, 0x41, 0x63, 0x63, 0x6f, 0x75, |
|
0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, |
|
0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, |
|
0x12, 0x31, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, |
|
0x1b, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x41, 0x63, |
|
0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x05, 0x76, 0x61, |
|
0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x2e, 0x0a, 0x06, 0x41, 0x6d, 0x6f, 0x75, 0x6e, |
|
0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, |
|
0x73, 0x61, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, |
|
0x04, 0x52, 0x04, 0x6d, 0x73, 0x61, 0x74, 0x22, 0x17, 0x0a, 0x15, 0x43, 0x68, 0x61, 0x6e, 0x6e, |
|
0x65, 0x6c, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, |
|
0x22, 0x80, 0x04, 0x0a, 0x16, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x61, 0x6c, 0x61, |
|
0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x07, 0x62, |
|
0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, |
|
0x52, 0x07, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x34, 0x0a, 0x14, 0x70, 0x65, 0x6e, |
|
0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, |
|
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x12, 0x70, 0x65, 0x6e, |
|
0x64, 0x69, 0x6e, 0x67, 0x4f, 0x70, 0x65, 0x6e, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, |
|
0x32, 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, |
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x41, |
|
0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x61, 0x6c, 0x61, |
|
0x6e, 0x63, 0x65, 0x12, 0x34, 0x0a, 0x0e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x62, 0x61, |
|
0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x6c, 0x6e, |
|
0x72, 0x70, 0x63, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0d, 0x72, 0x65, 0x6d, 0x6f, |
|
0x74, 0x65, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x45, 0x0a, 0x17, 0x75, 0x6e, 0x73, |
|
0x65, 0x74, 0x74, 0x6c, 0x65, 0x64, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x62, 0x61, 0x6c, |
|
0x61, 0x6e, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x15, 0x75, 0x6e, 0x73, 0x65, 0x74, |
|
0x74, 0x6c, 0x65, 0x64, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, |
|
0x12, 0x47, 0x0a, 0x18, 0x75, 0x6e, 0x73, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x64, 0x5f, 0x72, 0x65, |
|
0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, |
|
0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, |
|
0x74, 0x52, 0x16, 0x75, 0x6e, 0x73, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x64, 0x52, 0x65, 0x6d, 0x6f, |
|
0x74, 0x65, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x4a, 0x0a, 0x1a, 0x70, 0x65, 0x6e, |
|
0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, |
|
0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, |
|
0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x17, 0x70, 0x65, |
|
0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4f, 0x70, 0x65, 0x6e, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x61, |
|
0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x4c, 0x0a, 0x1b, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, |
|
0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x62, 0x61, 0x6c, |
|
0x61, 0x6e, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x18, 0x70, 0x65, 0x6e, 0x64, 0x69, |
|
0x6e, 0x67, 0x4f, 0x70, 0x65, 0x6e, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x42, 0x61, 0x6c, 0x61, |
|
0x6e, 0x63, 0x65, 0x22, 0xae, 0x06, 0x0a, 0x12, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x6f, 0x75, |
|
0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x75, |
|
0x62, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x75, 0x62, |
|
0x4b, 0x65, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x6d, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, |
|
0x52, 0x03, 0x61, 0x6d, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x6d, 0x74, 0x5f, 0x6d, 0x73, 0x61, |
|
0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x61, 0x6d, 0x74, 0x4d, 0x73, 0x61, 0x74, |
|
0x12, 0x28, 0x0a, 0x10, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x64, |
|
0x65, 0x6c, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x66, 0x69, 0x6e, 0x61, |
|
0x6c, 0x43, 0x6c, 0x74, 0x76, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x2c, 0x0a, 0x09, 0x66, 0x65, |
|
0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, |
|
0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x65, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x08, |
|
0x66, 0x65, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x67, 0x6e, 0x6f, |
|
0x72, 0x65, 0x64, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0c, 0x52, |
|
0x0c, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x3b, 0x0a, |
|
0x0d, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x5f, 0x65, 0x64, 0x67, 0x65, 0x73, 0x18, 0x07, |
|
0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x64, 0x67, |
|
0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0c, 0x69, 0x67, |
|
0x6e, 0x6f, 0x72, 0x65, 0x64, 0x45, 0x64, 0x67, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x6f, |
|
0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x75, 0x62, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x08, 0x20, 0x01, |
|
0x28, 0x09, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, |
|
0x12, 0x2e, 0x0a, 0x13, 0x75, 0x73, 0x65, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, |
|
0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x75, |
|
0x73, 0x65, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, |
|
0x12, 0x34, 0x0a, 0x0d, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x69, 0x72, |
|
0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, |
|
0x4e, 0x6f, 0x64, 0x65, 0x50, 0x61, 0x69, 0x72, 0x52, 0x0c, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, |
|
0x64, 0x50, 0x61, 0x69, 0x72, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x6c, |
|
0x69, 0x6d, 0x69, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x63, 0x6c, 0x74, 0x76, |
|
0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x60, 0x0a, 0x13, 0x64, 0x65, 0x73, 0x74, 0x5f, 0x63, 0x75, |
|
0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x0d, 0x20, 0x03, |
|
0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, |
|
0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x44, 0x65, |
|
0x73, 0x74, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x45, |
|
0x6e, 0x74, 0x72, 0x79, 0x52, 0x11, 0x64, 0x65, 0x73, 0x74, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, |
|
0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x2c, 0x0a, 0x10, 0x6f, 0x75, 0x74, 0x67, 0x6f, |
|
0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, |
|
0x04, 0x42, 0x02, 0x30, 0x01, 0x52, 0x0e, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x43, |
|
0x68, 0x61, 0x6e, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x6f, |
|
0x70, 0x5f, 0x70, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, |
|
0x6c, 0x61, 0x73, 0x74, 0x48, 0x6f, 0x70, 0x50, 0x75, 0x62, 0x6b, 0x65, 0x79, 0x12, 0x31, 0x0a, |
|
0x0b, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x10, 0x20, 0x03, |
|
0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, |
|
0x48, 0x69, 0x6e, 0x74, 0x52, 0x0a, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x48, 0x69, 0x6e, 0x74, 0x73, |
|
0x12, 0x36, 0x0a, 0x0d, 0x64, 0x65, 0x73, 0x74, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, |
|
0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, |
|
0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x42, 0x69, 0x74, 0x52, 0x0c, 0x64, 0x65, 0x73, 0x74, |
|
0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x1a, 0x44, 0x0a, 0x16, 0x44, 0x65, 0x73, 0x74, |
|
0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x45, 0x6e, 0x74, |
|
0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, |
|
0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, |
|
0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x4a, 0x04, |
|
0x08, 0x03, 0x10, 0x04, 0x22, 0x2e, 0x0a, 0x08, 0x4e, 0x6f, 0x64, 0x65, 0x50, 0x61, 0x69, 0x72, |
|
0x12, 0x12, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, |
|
0x66, 0x72, 0x6f, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, |
|
0x52, 0x02, 0x74, 0x6f, 0x22, 0x5d, 0x0a, 0x0b, 0x45, 0x64, 0x67, 0x65, 0x4c, 0x6f, 0x63, 0x61, |
|
0x74, 0x6f, 0x72, 0x12, 0x21, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, |
|
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x02, 0x30, 0x01, 0x52, 0x09, 0x63, 0x68, 0x61, |
|
0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, |
|
0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, |
|
0x08, 0x52, 0x10, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x76, 0x65, |
|
0x72, 0x73, 0x65, 0x22, 0x5e, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x6f, 0x75, 0x74, |
|
0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x06, 0x72, 0x6f, |
|
0x75, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, |
|
0x12, 0x21, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x70, 0x72, 0x6f, 0x62, |
|
0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0b, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, |
|
0x72, 0x6f, 0x62, 0x22, 0x91, 0x04, 0x0a, 0x03, 0x48, 0x6f, 0x70, 0x12, 0x1b, 0x0a, 0x07, 0x63, |
|
0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x02, 0x30, 0x01, |
|
0x52, 0x06, 0x63, 0x68, 0x61, 0x6e, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e, |
|
0x5f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, |
|
0x02, 0x18, 0x01, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, |
|
0x79, 0x12, 0x28, 0x0a, 0x0e, 0x61, 0x6d, 0x74, 0x5f, 0x74, 0x6f, 0x5f, 0x66, 0x6f, 0x72, 0x77, |
|
0x61, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0c, 0x61, |
|
0x6d, 0x74, 0x54, 0x6f, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x12, 0x14, 0x0a, 0x03, 0x66, |
|
0x65, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x03, 0x66, 0x65, |
|
0x65, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, |
|
0x0d, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x2d, 0x0a, 0x13, 0x61, 0x6d, 0x74, |
|
0x5f, 0x74, 0x6f, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x5f, 0x6d, 0x73, 0x61, 0x74, |
|
0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x61, 0x6d, 0x74, 0x54, 0x6f, 0x46, 0x6f, 0x72, |
|
0x77, 0x61, 0x72, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x66, 0x65, 0x65, 0x5f, |
|
0x6d, 0x73, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x66, 0x65, 0x65, 0x4d, |
|
0x73, 0x61, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x75, 0x62, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x08, |
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x0b, |
|
0x74, 0x6c, 0x76, 0x5f, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, |
|
0x08, 0x52, 0x0a, 0x74, 0x6c, 0x76, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x2f, 0x0a, |
|
0x0a, 0x6d, 0x70, 0x70, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, |
|
0x0b, 0x32, 0x10, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x50, 0x50, 0x52, 0x65, 0x63, |
|
0x6f, 0x72, 0x64, 0x52, 0x09, 0x6d, 0x70, 0x70, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x2f, |
|
0x0a, 0x0a, 0x61, 0x6d, 0x70, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x0c, 0x20, 0x01, |
|
0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x4d, 0x50, 0x52, 0x65, |
|
0x63, 0x6f, 0x72, 0x64, 0x52, 0x09, 0x61, 0x6d, 0x70, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, |
|
0x44, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, |
|
0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, |
|
0x48, 0x6f, 0x70, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, |
|
0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x65, |
|
0x63, 0x6f, 0x72, 0x64, 0x73, 0x1a, 0x40, 0x0a, 0x12, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, |
|
0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, |
|
0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, |
|
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, |
|
0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x54, 0x0a, 0x09, 0x4d, 0x50, 0x50, 0x52, 0x65, |
|
0x63, 0x6f, 0x72, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, |
|
0x61, 0x64, 0x64, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, |
|
0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x6f, 0x74, 0x61, 0x6c, |
|
0x5f, 0x61, 0x6d, 0x74, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, |
|
0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x41, 0x6d, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x22, 0x62, 0x0a, |
|
0x09, 0x41, 0x4d, 0x50, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x6f, |
|
0x6f, 0x74, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, |
|
0x72, 0x6f, 0x6f, 0x74, 0x53, 0x68, 0x61, 0x72, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x73, 0x65, 0x74, |
|
0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x73, 0x65, 0x74, 0x49, 0x64, |
|
0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, |
|
0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x64, 0x65, |
|
0x78, 0x22, 0xe1, 0x01, 0x0a, 0x05, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x74, |
|
0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x01, |
|
0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x4c, |
|
0x6f, 0x63, 0x6b, 0x12, 0x21, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x66, 0x65, 0x65, |
|
0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x09, 0x74, 0x6f, 0x74, |
|
0x61, 0x6c, 0x46, 0x65, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, |
|
0x61, 0x6d, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x08, 0x74, |
|
0x6f, 0x74, 0x61, 0x6c, 0x41, 0x6d, 0x74, 0x12, 0x1e, 0x0a, 0x04, 0x68, 0x6f, 0x70, 0x73, 0x18, |
|
0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x48, 0x6f, |
|
0x70, 0x52, 0x04, 0x68, 0x6f, 0x70, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6f, 0x74, 0x61, 0x6c, |
|
0x5f, 0x66, 0x65, 0x65, 0x73, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, |
|
0x52, 0x0d, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x73, 0x4d, 0x73, 0x61, 0x74, 0x12, |
|
0x24, 0x0a, 0x0e, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x61, 0x6d, 0x74, 0x5f, 0x6d, 0x73, 0x61, |
|
0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x41, 0x6d, |
|
0x74, 0x4d, 0x73, 0x61, 0x74, 0x22, 0x55, 0x0a, 0x0f, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, |
|
0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x75, 0x62, 0x5f, |
|
0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x75, 0x62, 0x4b, 0x65, |
|
0x79, 0x12, 0x29, 0x0a, 0x10, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x63, 0x68, 0x61, |
|
0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, 0x6e, 0x63, |
|
0x6c, 0x75, 0x64, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0xae, 0x01, 0x0a, |
|
0x08, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x28, 0x0a, 0x04, 0x6e, 0x6f, 0x64, |
|
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, |
|
0x4c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6e, |
|
0x6f, 0x64, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, |
|
0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6e, 0x75, 0x6d, 0x43, 0x68, |
|
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, |
|
0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, |
|
0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x12, 0x2e, 0x0a, |
|
0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, |
|
0x12, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x45, |
|
0x64, 0x67, 0x65, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0xb4, 0x02, |
|
0x0a, 0x0d, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x12, |
|
0x1f, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x01, |
|
0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, |
|
0x12, 0x17, 0x0a, 0x07, 0x70, 0x75, 0x62, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, |
|
0x09, 0x52, 0x06, 0x70, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, |
|
0x61, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, |
|
0x30, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, |
|
0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x41, |
|
0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, |
|
0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, |
|
0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x3e, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, |
|
0x72, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6c, 0x6e, 0x72, 0x70, |
|
0x63, 0x2e, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x2e, |
|
0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x66, |
|
0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x1a, 0x4b, 0x0a, 0x0d, 0x46, 0x65, 0x61, 0x74, 0x75, |
|
0x72, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, |
|
0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x24, 0x0a, 0x05, 0x76, 0x61, |
|
0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6c, 0x6e, 0x72, 0x70, |
|
0x63, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, |
|
0x3a, 0x02, 0x38, 0x01, 0x22, 0x3b, 0x0a, 0x0b, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x64, 0x64, 0x72, |
|
0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x01, |
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x12, 0x0a, |
|
0x04, 0x61, 0x64, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x64, 0x64, |
|
0x72, 0x22, 0x86, 0x02, 0x0a, 0x0d, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, |
|
0x69, 0x63, 0x79, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6c, 0x6f, 0x63, 0x6b, |
|
0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x69, |
|
0x6d, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x6d, |
|
0x69, 0x6e, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x6d, |
|
0x69, 0x6e, 0x48, 0x74, 0x6c, 0x63, 0x12, 0x22, 0x0a, 0x0d, 0x66, 0x65, 0x65, 0x5f, 0x62, 0x61, |
|
0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x66, |
|
0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x2d, 0x0a, 0x13, 0x66, 0x65, |
|
0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x5f, 0x6d, 0x73, 0x61, |
|
0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x66, 0x65, 0x65, 0x52, 0x61, 0x74, 0x65, |
|
0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, |
|
0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, |
|
0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x68, 0x74, 0x6c, |
|
0x63, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6d, 0x61, |
|
0x78, 0x48, 0x74, 0x6c, 0x63, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x61, 0x73, |
|
0x74, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, |
|
0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0xbc, 0x02, 0x0a, 0x0b, 0x43, |
|
0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x45, 0x64, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0a, 0x63, 0x68, |
|
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x02, |
|
0x30, 0x01, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1d, 0x0a, |
|
0x0a, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, |
|
0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0b, |
|
0x6c, 0x61, 0x73, 0x74, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, |
|
0x0d, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, |
|
0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x31, 0x5f, 0x70, 0x75, 0x62, 0x18, 0x04, |
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x31, 0x50, 0x75, 0x62, 0x12, 0x1b, |
|
0x0a, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x32, 0x5f, 0x70, 0x75, 0x62, 0x18, 0x05, 0x20, 0x01, 0x28, |
|
0x09, 0x52, 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x32, 0x50, 0x75, 0x62, 0x12, 0x1a, 0x0a, 0x08, 0x63, |
|
0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x63, |
|
0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x12, 0x37, 0x0a, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x31, |
|
0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, |
|
0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, |
|
0x69, 0x63, 0x79, 0x52, 0x0b, 0x6e, 0x6f, 0x64, 0x65, 0x31, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, |
|
0x12, 0x37, 0x0a, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x32, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, |
|
0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x52, |
|
0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0b, 0x6e, 0x6f, |
|
0x64, 0x65, 0x32, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x22, 0x46, 0x0a, 0x13, 0x43, 0x68, 0x61, |
|
0x6e, 0x6e, 0x65, 0x6c, 0x47, 0x72, 0x61, 0x70, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, |
|
0x12, 0x2f, 0x0a, 0x13, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x75, 0x6e, 0x61, 0x6e, |
|
0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x69, |
|
0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x55, 0x6e, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, |
|
0x64, 0x22, 0x64, 0x0a, 0x0c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x47, 0x72, 0x61, 0x70, |
|
0x68, 0x12, 0x2a, 0x0a, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, |
|
0x32, 0x14, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, |
|
0x6e, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x28, 0x0a, |
|
0x05, 0x65, 0x64, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6c, |
|
0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x45, 0x64, 0x67, 0x65, |
|
0x52, 0x05, 0x65, 0x64, 0x67, 0x65, 0x73, 0x22, 0x41, 0x0a, 0x12, 0x4e, 0x6f, 0x64, 0x65, 0x4d, |
|
0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, |
|
0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x6c, |
|
0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x54, |
|
0x79, 0x70, 0x65, 0x52, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x22, 0xe1, 0x01, 0x0a, 0x13, 0x4e, |
|
0x6f, 0x64, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, |
|
0x73, 0x65, 0x12, 0x6c, 0x0a, 0x16, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x6e, 0x65, 0x73, |
|
0x73, 0x5f, 0x63, 0x65, 0x6e, 0x74, 0x72, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x03, |
|
0x28, 0x0b, 0x32, 0x35, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x4d, |
|
0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x42, |
|
0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x6e, 0x65, 0x73, 0x73, 0x43, 0x65, 0x6e, 0x74, 0x72, 0x61, |
|
0x6c, 0x69, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x15, 0x62, 0x65, 0x74, 0x77, 0x65, |
|
0x65, 0x6e, 0x6e, 0x65, 0x73, 0x73, 0x43, 0x65, 0x6e, 0x74, 0x72, 0x61, 0x6c, 0x69, 0x74, 0x79, |
|
0x1a, 0x5c, 0x0a, 0x1a, 0x42, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x6e, 0x65, 0x73, 0x73, 0x43, |
|
0x65, 0x6e, 0x74, 0x72, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, |
|
0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, |
|
0x12, 0x28, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, |
|
0x12, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x4d, 0x65, 0x74, |
|
0x72, 0x69, 0x63, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x4e, |
|
0x0a, 0x0b, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x12, 0x14, 0x0a, |
|
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x76, 0x61, |
|
0x6c, 0x75, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, |
|
0x64, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0f, 0x6e, |
|
0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x2e, |
|
0x0a, 0x0f, 0x43, 0x68, 0x61, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, |
|
0x74, 0x12, 0x1b, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, |
|
0x28, 0x04, 0x42, 0x02, 0x30, 0x01, 0x52, 0x06, 0x63, 0x68, 0x61, 0x6e, 0x49, 0x64, 0x22, 0x14, |
|
0x0a, 0x12, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, |
|
0x75, 0x65, 0x73, 0x74, 0x22, 0xd5, 0x03, 0x0a, 0x0b, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, |
|
0x49, 0x6e, 0x66, 0x6f, 0x12, 0x25, 0x0a, 0x0e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x64, 0x69, |
|
0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x67, 0x72, |
|
0x61, 0x70, 0x68, 0x44, 0x69, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0e, 0x61, |
|
0x76, 0x67, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x64, 0x65, 0x67, 0x72, 0x65, 0x65, 0x18, 0x02, 0x20, |
|
0x01, 0x28, 0x01, 0x52, 0x0c, 0x61, 0x76, 0x67, 0x4f, 0x75, 0x74, 0x44, 0x65, 0x67, 0x72, 0x65, |
|
0x65, 0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x64, 0x65, 0x67, |
|
0x72, 0x65, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x4f, 0x75, |
|
0x74, 0x44, 0x65, 0x67, 0x72, 0x65, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x75, 0x6d, 0x5f, 0x6e, |
|
0x6f, 0x64, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x75, 0x6d, 0x4e, |
|
0x6f, 0x64, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x68, 0x61, 0x6e, |
|
0x6e, 0x65, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6e, 0x75, 0x6d, 0x43, |
|
0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x34, 0x0a, 0x16, 0x74, 0x6f, 0x74, 0x61, 0x6c, |
|
0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, |
|
0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x14, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x4e, 0x65, |
|
0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x12, 0x28, 0x0a, |
|
0x10, 0x61, 0x76, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x69, 0x7a, |
|
0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0e, 0x61, 0x76, 0x67, 0x43, 0x68, 0x61, 0x6e, |
|
0x6e, 0x65, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x69, 0x6e, 0x5f, 0x63, |
|
0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, |
|
0x03, 0x52, 0x0e, 0x6d, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x69, 0x7a, |
|
0x65, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, |
|
0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x6d, 0x61, 0x78, |
|
0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x35, 0x0a, 0x17, 0x6d, |
|
0x65, 0x64, 0x69, 0x61, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x69, |
|
0x7a, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x14, 0x6d, 0x65, |
|
0x64, 0x69, 0x61, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x53, |
|
0x61, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x6e, 0x75, 0x6d, 0x5f, 0x7a, 0x6f, 0x6d, 0x62, 0x69, 0x65, |
|
0x5f, 0x63, 0x68, 0x61, 0x6e, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x6e, 0x75, |
|
0x6d, 0x5a, 0x6f, 0x6d, 0x62, 0x69, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x73, 0x22, 0x0d, 0x0a, 0x0b, |
|
0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x0e, 0x0a, 0x0c, 0x53, |
|
0x74, 0x6f, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1b, 0x0a, 0x19, 0x47, |
|
0x72, 0x61, 0x70, 0x68, 0x54, 0x6f, 0x70, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x53, 0x75, 0x62, 0x73, |
|
0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xcd, 0x01, 0x0a, 0x13, 0x47, 0x72, 0x61, |
|
0x70, 0x68, 0x54, 0x6f, 0x70, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, |
|
0x12, 0x34, 0x0a, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, |
|
0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4e, |
|
0x6f, 0x64, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x0b, 0x6e, 0x6f, 0x64, 0x65, 0x55, |
|
0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x12, 0x41, 0x0a, 0x0f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, |
|
0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, |
|
0x18, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x45, |
|
0x64, 0x67, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x0e, 0x63, 0x68, 0x61, 0x6e, 0x6e, |
|
0x65, 0x6c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x12, 0x3d, 0x0a, 0x0c, 0x63, 0x6c, 0x6f, |
|
0x73, 0x65, 0x64, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, |
|
0x1a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x43, 0x68, |
|
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x0b, 0x63, 0x6c, 0x6f, |
|
0x73, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x73, 0x22, 0xef, 0x02, 0x0a, 0x0a, 0x4e, 0x6f, 0x64, |
|
0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x20, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, |
|
0x73, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x09, |
|
0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x64, 0x65, |
|
0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, |
|
0x0b, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4b, 0x65, 0x79, 0x12, 0x2b, 0x0a, 0x0f, |
|
0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, |
|
0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0e, 0x67, 0x6c, 0x6f, 0x62, 0x61, |
|
0x6c, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, |
|
0x61, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, |
|
0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, |
|
0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x39, 0x0a, 0x0e, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x61, 0x64, |
|
0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, |
|
0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, |
|
0x73, 0x52, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, |
|
0x12, 0x3b, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, |
|
0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x55, |
|
0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x45, 0x6e, |
|
0x74, 0x72, 0x79, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x1a, 0x4b, 0x0a, |
|
0x0d, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, |
|
0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, |
|
0x12, 0x24, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, |
|
0x0e, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, |
|
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x91, 0x02, 0x0a, 0x11, 0x43, |
|
0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x45, 0x64, 0x67, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, |
|
0x12, 0x1b, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, |
|
0x04, 0x42, 0x02, 0x30, 0x01, 0x52, 0x06, 0x63, 0x68, 0x61, 0x6e, 0x49, 0x64, 0x12, 0x32, 0x0a, |
|
0x0a, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, |
|
0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, |
|
0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x50, 0x6f, 0x69, 0x6e, |
|
0x74, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, |
|
0x01, 0x28, 0x03, 0x52, 0x08, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x12, 0x3b, 0x0a, |
|
0x0e, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, |
|
0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x6f, |
|
0x75, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0d, 0x72, 0x6f, 0x75, |
|
0x74, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x61, 0x64, |
|
0x76, 0x65, 0x72, 0x74, 0x69, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x05, |
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x61, 0x64, 0x76, 0x65, 0x72, 0x74, 0x69, 0x73, 0x69, 0x6e, |
|
0x67, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, |
|
0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, |
|
0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6e, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x22, 0xa7, |
|
0x01, 0x0a, 0x13, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, |
|
0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, |
|
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x02, 0x30, 0x01, 0x52, 0x06, 0x63, 0x68, 0x61, |
|
0x6e, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, |
|
0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x12, |
|
0x23, 0x0a, 0x0d, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, |
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x48, 0x65, |
|
0x69, 0x67, 0x68, 0x74, 0x12, 0x32, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x69, |
|
0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x09, 0x63, |
|
0x68, 0x61, 0x6e, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0xcf, 0x01, 0x0a, 0x07, 0x48, 0x6f, 0x70, |
|
0x48, 0x69, 0x6e, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, |
|
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x1b, 0x0a, |
|
0x07, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x02, |
|
0x30, 0x01, 0x52, 0x06, 0x63, 0x68, 0x61, 0x6e, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x66, 0x65, |
|
0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, |
|
0x0d, 0x52, 0x0b, 0x66, 0x65, 0x65, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x3e, |
|
0x0a, 0x1b, 0x66, 0x65, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, |
|
0x61, 0x6c, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x18, 0x04, 0x20, |
|
0x01, 0x28, 0x0d, 0x52, 0x19, 0x66, 0x65, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, |
|
0x6f, 0x6e, 0x61, 0x6c, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x12, 0x2a, |
|
0x0a, 0x11, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x5f, 0x64, 0x65, |
|
0x6c, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x6c, 0x74, 0x76, 0x45, |
|
0x78, 0x70, 0x69, 0x72, 0x79, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x22, 0x38, 0x0a, 0x09, 0x52, 0x6f, |
|
0x75, 0x74, 0x65, 0x48, 0x69, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x09, 0x68, 0x6f, 0x70, 0x5f, 0x68, |
|
0x69, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x48, 0x6f, 0x70, 0x48, 0x69, 0x6e, 0x74, 0x52, 0x08, 0x68, 0x6f, 0x70, 0x48, |
|
0x69, 0x6e, 0x74, 0x73, 0x22, 0x96, 0x08, 0x0a, 0x07, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, |
|
0x12, 0x12, 0x0a, 0x04, 0x6d, 0x65, 0x6d, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, |
|
0x6d, 0x65, 0x6d, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, |
|
0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x72, 0x50, 0x72, 0x65, 0x69, 0x6d, |
|
0x61, 0x67, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x04, 0x20, |
|
0x01, 0x28, 0x0c, 0x52, 0x05, 0x72, 0x48, 0x61, 0x73, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, |
|
0x6c, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, |
|
0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x17, |
|
0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, |
|
0x1c, 0x0a, 0x07, 0x73, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, |
|
0x42, 0x02, 0x18, 0x01, 0x52, 0x07, 0x73, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x64, 0x12, 0x23, 0x0a, |
|
0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x07, |
|
0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, |
|
0x74, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x64, 0x61, 0x74, |
|
0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x73, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x44, |
|
0x61, 0x74, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, |
|
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x61, |
|
0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x29, 0x0a, 0x10, |
|
0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x68, 0x61, 0x73, 0x68, |
|
0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, |
|
0x69, 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, |
|
0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, |
|
0x23, 0x0a, 0x0d, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x61, 0x64, 0x64, 0x72, |
|
0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, |
|
0x41, 0x64, 0x64, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x65, 0x78, 0x70, |
|
0x69, 0x72, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x63, 0x6c, 0x74, 0x76, 0x45, |
|
0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x31, 0x0a, 0x0b, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x5f, 0x68, |
|
0x69, 0x6e, 0x74, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x48, 0x69, 0x6e, 0x74, 0x52, 0x0a, 0x72, 0x6f, |
|
0x75, 0x74, 0x65, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x69, 0x76, |
|
0x61, 0x74, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, 0x72, 0x69, 0x76, 0x61, |
|
0x74, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, |
|
0x10, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x61, 0x64, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, |
|
0x21, 0x0a, 0x0c, 0x73, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, |
|
0x11, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x73, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x49, 0x6e, 0x64, |
|
0x65, 0x78, 0x12, 0x1d, 0x0a, 0x08, 0x61, 0x6d, 0x74, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x18, 0x12, |
|
0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x07, 0x61, 0x6d, 0x74, 0x50, 0x61, 0x69, |
|
0x64, 0x12, 0x20, 0x0a, 0x0c, 0x61, 0x6d, 0x74, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, 0x73, 0x61, |
|
0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x6d, 0x74, 0x50, 0x61, 0x69, 0x64, |
|
0x53, 0x61, 0x74, 0x12, 0x22, 0x0a, 0x0d, 0x61, 0x6d, 0x74, 0x5f, 0x70, 0x61, 0x69, 0x64, 0x5f, |
|
0x6d, 0x73, 0x61, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x61, 0x6d, 0x74, 0x50, |
|
0x61, 0x69, 0x64, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x31, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, |
|
0x18, 0x15, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x49, |
|
0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x2e, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x74, |
|
0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x28, 0x0a, 0x05, 0x68, 0x74, |
|
0x6c, 0x63, 0x73, 0x18, 0x16, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6c, 0x6e, 0x72, 0x70, |
|
0x63, 0x2e, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x48, 0x54, 0x4c, 0x43, 0x52, 0x05, 0x68, |
|
0x74, 0x6c, 0x63, 0x73, 0x12, 0x38, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, |
|
0x18, 0x18, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x49, |
|
0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x45, |
|
0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x1d, |
|
0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x18, 0x19, 0x20, 0x01, |
|
0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x4b, 0x65, 0x79, 0x73, 0x65, 0x6e, 0x64, 0x12, 0x21, 0x0a, |
|
0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x1a, 0x20, |
|
0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, |
|
0x12, 0x15, 0x0a, 0x06, 0x69, 0x73, 0x5f, 0x61, 0x6d, 0x70, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x08, |
|
0x52, 0x05, 0x69, 0x73, 0x41, 0x6d, 0x70, 0x1a, 0x4b, 0x0a, 0x0d, 0x46, 0x65, 0x61, 0x74, 0x75, |
|
0x72, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, |
|
0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x24, 0x0a, 0x05, 0x76, 0x61, |
|
0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6c, 0x6e, 0x72, 0x70, |
|
0x63, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, |
|
0x3a, 0x02, 0x38, 0x01, 0x22, 0x41, 0x0a, 0x0c, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, |
|
0x74, 0x61, 0x74, 0x65, 0x12, 0x08, 0x0a, 0x04, 0x4f, 0x50, 0x45, 0x4e, 0x10, 0x00, 0x12, 0x0b, |
|
0x0a, 0x07, 0x53, 0x45, 0x54, 0x54, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x43, |
|
0x41, 0x4e, 0x43, 0x45, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x43, 0x43, |
|
0x45, 0x50, 0x54, 0x45, 0x44, 0x10, 0x03, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x22, 0xfc, 0x03, |
|
0x0a, 0x0b, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x48, 0x54, 0x4c, 0x43, 0x12, 0x1b, 0x0a, |
|
0x07, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x02, |
|
0x30, 0x01, 0x52, 0x06, 0x63, 0x68, 0x61, 0x6e, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x74, |
|
0x6c, 0x63, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, |
|
0x68, 0x74, 0x6c, 0x63, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x6d, 0x74, |
|
0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x61, 0x6d, 0x74, |
|
0x4d, 0x73, 0x61, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x5f, 0x68, |
|
0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x61, 0x63, 0x63, |
|
0x65, 0x70, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x63, |
|
0x65, 0x70, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, |
|
0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, |
|
0x73, 0x6f, 0x6c, 0x76, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, |
|
0x52, 0x0b, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x23, 0x0a, |
|
0x0d, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x07, |
|
0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x48, 0x65, 0x69, 0x67, |
|
0x68, 0x74, 0x12, 0x2d, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, |
|
0x0e, 0x32, 0x17, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, |
|
0x65, 0x48, 0x54, 0x4c, 0x43, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, |
|
0x65, 0x12, 0x4c, 0x0a, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x65, 0x63, 0x6f, |
|
0x72, 0x64, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6c, 0x6e, 0x72, 0x70, |
|
0x63, 0x2e, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x48, 0x54, 0x4c, 0x43, 0x2e, 0x43, 0x75, |
|
0x73, 0x74, 0x6f, 0x6d, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, |
|
0x52, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x12, |
|
0x2b, 0x0a, 0x12, 0x6d, 0x70, 0x70, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x61, 0x6d, 0x74, |
|
0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x6d, 0x70, 0x70, |
|
0x54, 0x6f, 0x74, 0x61, 0x6c, 0x41, 0x6d, 0x74, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x1c, 0x0a, 0x03, |
|
0x61, 0x6d, 0x70, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, |
|
0x63, 0x2e, 0x41, 0x4d, 0x50, 0x52, 0x03, 0x61, 0x6d, 0x70, 0x1a, 0x40, 0x0a, 0x12, 0x43, 0x75, |
|
0x73, 0x74, 0x6f, 0x6d, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, |
|
0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x6b, |
|
0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, |
|
0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x8c, 0x01, 0x0a, |
|
0x03, 0x41, 0x4d, 0x50, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x73, 0x68, 0x61, |
|
0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x72, 0x6f, 0x6f, 0x74, 0x53, 0x68, |
|
0x61, 0x72, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x73, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, |
|
0x01, 0x28, 0x0c, 0x52, 0x05, 0x73, 0x65, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x68, |
|
0x69, 0x6c, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, |
|
0x0a, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x68, |
|
0x61, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, |
|
0x1a, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, |
|
0x0c, 0x52, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0x94, 0x01, 0x0a, 0x12, |
|
0x41, 0x64, 0x64, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, |
|
0x73, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, |
|
0x28, 0x0c, 0x52, 0x05, 0x72, 0x48, 0x61, 0x73, 0x68, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x61, 0x79, |
|
0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, |
|
0x28, 0x09, 0x52, 0x0e, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, |
|
0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, |
|
0x10, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x61, 0x64, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, |
|
0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, |
|
0x11, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x64, |
|
0x64, 0x72, 0x22, 0x46, 0x0a, 0x0b, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, |
|
0x68, 0x12, 0x20, 0x0a, 0x0a, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x5f, 0x73, 0x74, 0x72, 0x18, |
|
0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x08, 0x72, 0x48, 0x61, 0x73, 0x68, |
|
0x53, 0x74, 0x72, 0x12, 0x15, 0x0a, 0x06, 0x72, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, |
|
0x01, 0x28, 0x0c, 0x52, 0x05, 0x72, 0x48, 0x61, 0x73, 0x68, 0x22, 0xa0, 0x01, 0x0a, 0x12, 0x4c, |
|
0x69, 0x73, 0x74, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, |
|
0x74, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x6e, 0x6c, |
|
0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, |
|
0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x6f, 0x66, |
|
0x66, 0x73, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x69, 0x6e, 0x64, 0x65, |
|
0x78, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x6e, 0x75, 0x6d, 0x5f, 0x6d, |
|
0x61, 0x78, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, |
|
0x04, 0x52, 0x0e, 0x6e, 0x75, 0x6d, 0x4d, 0x61, 0x78, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, |
|
0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x64, 0x18, 0x06, 0x20, |
|
0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x64, 0x22, 0x9b, 0x01, |
|
0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, |
|
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, |
|
0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, |
|
0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x08, 0x69, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, |
|
0x73, 0x12, 0x2a, 0x0a, 0x11, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, |
|
0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x6c, 0x61, |
|
0x73, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x2c, 0x0a, |
|
0x12, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x6f, 0x66, 0x66, |
|
0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x66, 0x69, 0x72, 0x73, 0x74, |
|
0x49, 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x55, 0x0a, 0x13, 0x49, |
|
0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, |
|
0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, |
|
0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x61, 0x64, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, |
|
0x21, 0x0a, 0x0c, 0x73, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, |
|
0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x73, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x49, 0x6e, 0x64, |
|
0x65, 0x78, 0x22, 0x8a, 0x05, 0x0a, 0x07, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x21, |
|
0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, |
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, |
|
0x68, 0x12, 0x18, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, |
|
0x42, 0x02, 0x18, 0x01, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x27, 0x0a, 0x0d, 0x63, |
|
0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, |
|
0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, |
|
0x44, 0x61, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x03, 0x66, 0x65, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, |
|
0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x03, 0x66, 0x65, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x61, |
|
0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x06, |
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x65, |
|
0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x73, |
|
0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x53, |
|
0x61, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6d, 0x73, 0x61, 0x74, |
|
0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x4d, 0x73, 0x61, |
|
0x74, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x71, |
|
0x75, 0x65, 0x73, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x61, 0x79, 0x6d, |
|
0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x06, 0x73, 0x74, |
|
0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x61, 0x79, 0x6d, 0x65, |
|
0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, |
|
0x12, 0x17, 0x0a, 0x07, 0x66, 0x65, 0x65, 0x5f, 0x73, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, |
|
0x03, 0x52, 0x06, 0x66, 0x65, 0x65, 0x53, 0x61, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x66, 0x65, 0x65, |
|
0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x66, 0x65, 0x65, |
|
0x4d, 0x73, 0x61, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, |
|
0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6e, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, |
|
0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x4e, 0x73, 0x12, 0x28, |
|
0x0a, 0x05, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, |
|
0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x48, 0x54, 0x4c, 0x43, 0x41, 0x74, 0x74, 0x65, 0x6d, 0x70, |
|
0x74, 0x52, 0x05, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61, 0x79, 0x6d, |
|
0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x52, |
|
0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x42, 0x0a, |
|
0x0e, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, |
|
0x10, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, |
|
0x79, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x52, 0x65, 0x61, 0x73, |
|
0x6f, 0x6e, 0x52, 0x0d, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x52, 0x65, 0x61, 0x73, 0x6f, |
|
0x6e, 0x22, 0x46, 0x0a, 0x0d, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, |
|
0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, |
|
0x0d, 0x0a, 0x09, 0x49, 0x4e, 0x5f, 0x46, 0x4c, 0x49, 0x47, 0x48, 0x54, 0x10, 0x01, 0x12, 0x0d, |
|
0x0a, 0x09, 0x53, 0x55, 0x43, 0x43, 0x45, 0x45, 0x44, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0a, 0x0a, |
|
0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x03, 0x4a, 0x04, 0x08, 0x04, 0x10, 0x05, 0x22, |
|
0xd5, 0x02, 0x0a, 0x0b, 0x48, 0x54, 0x4c, 0x43, 0x41, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x12, |
|
0x1d, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, |
|
0x01, 0x28, 0x04, 0x52, 0x09, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x49, 0x64, 0x12, 0x35, |
|
0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, |
|
0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x48, 0x54, 0x4c, 0x43, 0x41, 0x74, 0x74, 0x65, 0x6d, |
|
0x70, 0x74, 0x2e, 0x48, 0x54, 0x4c, 0x43, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, |
|
0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x22, 0x0a, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x02, |
|
0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x6f, 0x75, |
|
0x74, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x74, 0x74, |
|
0x65, 0x6d, 0x70, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, |
|
0x28, 0x03, 0x52, 0x0d, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x4e, |
|
0x73, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x5f, 0x74, 0x69, 0x6d, |
|
0x65, 0x5f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x72, 0x65, 0x73, 0x6f, |
|
0x6c, 0x76, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x4e, 0x73, 0x12, 0x28, 0x0a, 0x07, 0x66, 0x61, 0x69, |
|
0x6c, 0x75, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x52, 0x07, 0x66, 0x61, 0x69, 0x6c, |
|
0x75, 0x72, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, |
|
0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x70, 0x72, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, |
|
0x36, 0x0a, 0x0a, 0x48, 0x54, 0x4c, 0x43, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0d, 0x0a, |
|
0x09, 0x49, 0x4e, 0x5f, 0x46, 0x4c, 0x49, 0x47, 0x48, 0x54, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, |
|
0x53, 0x55, 0x43, 0x43, 0x45, 0x45, 0x44, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x46, |
|
0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x22, 0xa6, 0x01, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, |
|
0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, |
|
0x2d, 0x0a, 0x12, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x69, 0x6e, 0x63, 0x6f, 0x6d, |
|
0x70, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x69, 0x6e, 0x63, |
|
0x6c, 0x75, 0x64, 0x65, 0x49, 0x6e, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x21, |
|
0x0a, 0x0c, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, |
|
0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x66, 0x66, 0x73, 0x65, |
|
0x74, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, |
|
0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x50, 0x61, 0x79, 0x6d, |
|
0x65, 0x6e, 0x74, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x64, |
|
0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x64, |
|
0x22, 0x9c, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, |
|
0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x70, 0x61, 0x79, |
|
0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6c, 0x6e, |
|
0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x70, 0x61, 0x79, |
|
0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x69, |
|
0x6e, 0x64, 0x65, 0x78, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, |
|
0x04, 0x52, 0x10, 0x66, 0x69, 0x72, 0x73, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x66, 0x66, |
|
0x73, 0x65, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, |
|
0x78, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, |
|
0x6c, 0x61, 0x73, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, |
|
0x78, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x50, 0x61, 0x79, 0x6d, |
|
0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x66, |
|
0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x6f, |
|
0x6e, 0x6c, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x66, 0x61, 0x69, 0x6c, 0x65, |
|
0x64, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x2a, 0x0a, |
|
0x11, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x73, 0x5f, 0x6f, 0x6e, |
|
0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, |
|
0x48, 0x74, 0x6c, 0x63, 0x73, 0x4f, 0x6e, 0x6c, 0x79, 0x22, 0x1b, 0x0a, 0x19, 0x44, 0x65, 0x6c, |
|
0x65, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, |
|
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xbf, 0x01, 0x0a, 0x15, 0x41, 0x62, 0x61, 0x6e, 0x64, |
|
0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, |
|
0x12, 0x38, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, |
|
0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, |
|
0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x0c, 0x63, 0x68, |
|
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x39, 0x0a, 0x19, 0x70, 0x65, |
|
0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x68, |
|
0x69, 0x6d, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x70, |
|
0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x68, 0x69, |
|
0x6d, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x31, 0x0a, 0x16, 0x69, 0x5f, 0x6b, 0x6e, 0x6f, 0x77, 0x5f, |
|
0x77, 0x68, 0x61, 0x74, 0x5f, 0x69, 0x5f, 0x61, 0x6d, 0x5f, 0x64, 0x6f, 0x69, 0x6e, 0x67, 0x18, |
|
0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x69, 0x4b, 0x6e, 0x6f, 0x77, 0x57, 0x68, 0x61, 0x74, |
|
0x49, 0x41, 0x6d, 0x44, 0x6f, 0x69, 0x6e, 0x67, 0x22, 0x18, 0x0a, 0x16, 0x41, 0x62, 0x61, 0x6e, |
|
0x64, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, |
|
0x73, 0x65, 0x22, 0x46, 0x0a, 0x11, 0x44, 0x65, 0x62, 0x75, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, |
|
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x68, 0x6f, 0x77, 0x18, |
|
0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x73, 0x68, 0x6f, 0x77, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, |
|
0x65, 0x76, 0x65, 0x6c, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, |
|
0x09, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x22, 0x35, 0x0a, 0x12, 0x44, 0x65, |
|
0x62, 0x75, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, |
|
0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x75, 0x62, 0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x73, 0x18, |
|
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, |
|
0x73, 0x22, 0x27, 0x0a, 0x0c, 0x50, 0x61, 0x79, 0x52, 0x65, 0x71, 0x53, 0x74, 0x72, 0x69, 0x6e, |
|
0x67, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x5f, 0x72, 0x65, 0x71, 0x18, 0x01, 0x20, 0x01, |
|
0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x79, 0x52, 0x65, 0x71, 0x22, 0xb0, 0x04, 0x0a, 0x06, 0x50, |
|
0x61, 0x79, 0x52, 0x65, 0x71, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, |
|
0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, |
|
0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, 0x6d, 0x65, |
|
0x6e, 0x74, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, |
|
0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x73, 0x68, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x75, |
|
0x6d, 0x5f, 0x73, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, |
|
0x52, 0x0b, 0x6e, 0x75, 0x6d, 0x53, 0x61, 0x74, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x12, 0x1c, 0x0a, |
|
0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, |
|
0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x65, |
|
0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x65, 0x78, 0x70, |
|
0x69, 0x72, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, |
|
0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, |
|
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, |
|
0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, |
|
0x0f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x68, |
|
0x12, 0x23, 0x0a, 0x0d, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x61, 0x64, 0x64, |
|
0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, |
|
0x6b, 0x41, 0x64, 0x64, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x65, 0x78, |
|
0x70, 0x69, 0x72, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x6c, 0x74, 0x76, |
|
0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x31, 0x0a, 0x0b, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x5f, |
|
0x68, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6c, 0x6e, |
|
0x72, 0x70, 0x63, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x48, 0x69, 0x6e, 0x74, 0x52, 0x0a, 0x72, |
|
0x6f, 0x75, 0x74, 0x65, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x79, |
|
0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x52, |
|
0x0b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x12, 0x19, 0x0a, 0x08, |
|
0x6e, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, |
|
0x6e, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x37, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, |
|
0x72, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6c, 0x6e, 0x72, 0x70, |
|
0x63, 0x2e, 0x50, 0x61, 0x79, 0x52, 0x65, 0x71, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, |
|
0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, |
|
0x1a, 0x4b, 0x0a, 0x0d, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, |
|
0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, |
|
0x6b, 0x65, 0x79, 0x12, 0x24, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, |
|
0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, |
|
0x72, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x59, 0x0a, |
|
0x07, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, |
|
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, |
|
0x69, 0x73, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, |
|
0x08, 0x52, 0x0a, 0x69, 0x73, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x12, 0x19, 0x0a, |
|
0x08, 0x69, 0x73, 0x5f, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, |
|
0x07, 0x69, 0x73, 0x4b, 0x6e, 0x6f, 0x77, 0x6e, 0x22, 0x12, 0x0a, 0x10, 0x46, 0x65, 0x65, 0x52, |
|
0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xb3, 0x01, 0x0a, |
|
0x10, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x46, 0x65, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, |
|
0x74, 0x12, 0x1b, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, |
|
0x28, 0x04, 0x42, 0x02, 0x30, 0x01, 0x52, 0x06, 0x63, 0x68, 0x61, 0x6e, 0x49, 0x64, 0x12, 0x23, |
|
0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, |
|
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x6f, |
|
0x69, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0d, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, |
|
0x6d, 0x73, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x62, 0x61, 0x73, 0x65, |
|
0x46, 0x65, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x1e, 0x0a, 0x0b, 0x66, 0x65, 0x65, 0x5f, 0x70, |
|
0x65, 0x72, 0x5f, 0x6d, 0x69, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x66, 0x65, |
|
0x65, 0x50, 0x65, 0x72, 0x4d, 0x69, 0x6c, 0x12, 0x19, 0x0a, 0x08, 0x66, 0x65, 0x65, 0x5f, 0x72, |
|
0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x07, 0x66, 0x65, 0x65, 0x52, 0x61, |
|
0x74, 0x65, 0x22, 0xb5, 0x01, 0x0a, 0x11, 0x46, 0x65, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, |
|
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, |
|
0x6e, 0x65, 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, |
|
0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x46, 0x65, |
|
0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, |
|
0x46, 0x65, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0b, 0x64, 0x61, 0x79, 0x5f, 0x66, 0x65, 0x65, 0x5f, |
|
0x73, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x64, 0x61, 0x79, 0x46, 0x65, |
|
0x65, 0x53, 0x75, 0x6d, 0x12, 0x20, 0x0a, 0x0c, 0x77, 0x65, 0x65, 0x6b, 0x5f, 0x66, 0x65, 0x65, |
|
0x5f, 0x73, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x77, 0x65, 0x65, 0x6b, |
|
0x46, 0x65, 0x65, 0x53, 0x75, 0x6d, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x5f, |
|
0x66, 0x65, 0x65, 0x5f, 0x73, 0x75, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6d, |
|
0x6f, 0x6e, 0x74, 0x68, 0x46, 0x65, 0x65, 0x53, 0x75, 0x6d, 0x22, 0xd4, 0x02, 0x0a, 0x13, 0x50, |
|
0x6f, 0x6c, 0x69, 0x63, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, |
|
0x73, 0x74, 0x12, 0x18, 0x0a, 0x06, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, |
|
0x28, 0x08, 0x48, 0x00, 0x52, 0x06, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x12, 0x34, 0x0a, 0x0a, |
|
0x63, 0x68, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, |
|
0x32, 0x13, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, |
|
0x50, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x50, 0x6f, 0x69, |
|
0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0d, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x66, 0x65, 0x65, 0x5f, 0x6d, |
|
0x73, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x62, 0x61, 0x73, 0x65, 0x46, |
|
0x65, 0x65, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, |
|
0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x07, 0x66, 0x65, 0x65, 0x52, 0x61, 0x74, |
|
0x65, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x64, |
|
0x65, 0x6c, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x69, 0x6d, 0x65, |
|
0x4c, 0x6f, 0x63, 0x6b, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x61, 0x78, |
|
0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, |
|
0x52, 0x0b, 0x6d, 0x61, 0x78, 0x48, 0x74, 0x6c, 0x63, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x22, 0x0a, |
|
0x0d, 0x6d, 0x69, 0x6e, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x73, 0x61, 0x74, 0x18, 0x07, |
|
0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x48, 0x74, 0x6c, 0x63, 0x4d, 0x73, 0x61, |
|
0x74, 0x12, 0x35, 0x0a, 0x17, 0x6d, 0x69, 0x6e, 0x5f, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x73, |
|
0x61, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, |
|
0x28, 0x08, 0x52, 0x14, 0x6d, 0x69, 0x6e, 0x48, 0x74, 0x6c, 0x63, 0x4d, 0x73, 0x61, 0x74, 0x53, |
|
0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x70, |
|
0x65, 0x22, 0x16, 0x0a, 0x14, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, |
|
0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x9d, 0x01, 0x0a, 0x18, 0x46, 0x6f, |
|
0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, |
|
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, |
|
0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, |
|
0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, |
|
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, |
|
0x12, 0x21, 0x0a, 0x0c, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, |
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x66, 0x66, |
|
0x73, 0x65, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x6e, 0x75, 0x6d, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x65, |
|
0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6e, 0x75, 0x6d, |
|
0x4d, 0x61, 0x78, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0xbb, 0x02, 0x0a, 0x0f, 0x46, 0x6f, |
|
0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, |
|
0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, |
|
0x42, 0x02, 0x18, 0x01, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, |
|
0x20, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x5f, 0x69, 0x6e, 0x18, 0x02, 0x20, |
|
0x01, 0x28, 0x04, 0x42, 0x02, 0x30, 0x01, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x49, 0x64, 0x49, |
|
0x6e, 0x12, 0x22, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x5f, 0x6f, 0x75, 0x74, |
|
0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x42, 0x02, 0x30, 0x01, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, |
|
0x49, 0x64, 0x4f, 0x75, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x61, 0x6d, 0x74, 0x5f, 0x69, 0x6e, 0x18, |
|
0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x61, 0x6d, 0x74, 0x49, 0x6e, 0x12, 0x17, 0x0a, 0x07, |
|
0x61, 0x6d, 0x74, 0x5f, 0x6f, 0x75, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x61, |
|
0x6d, 0x74, 0x4f, 0x75, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x66, 0x65, 0x65, 0x18, 0x07, 0x20, 0x01, |
|
0x28, 0x04, 0x52, 0x03, 0x66, 0x65, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x66, 0x65, 0x65, 0x5f, 0x6d, |
|
0x73, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x66, 0x65, 0x65, 0x4d, 0x73, |
|
0x61, 0x74, 0x12, 0x1e, 0x0a, 0x0b, 0x61, 0x6d, 0x74, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x61, |
|
0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x61, 0x6d, 0x74, 0x49, 0x6e, 0x4d, 0x73, |
|
0x61, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x61, 0x6d, 0x74, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x73, |
|
0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x61, 0x6d, 0x74, 0x4f, 0x75, 0x74, |
|
0x4d, 0x73, 0x61, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, |
|
0x70, 0x5f, 0x6e, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x74, 0x69, 0x6d, 0x65, |
|
0x73, 0x74, 0x61, 0x6d, 0x70, 0x4e, 0x73, 0x22, 0x8c, 0x01, 0x0a, 0x19, 0x46, 0x6f, 0x72, 0x77, |
|
0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, |
|
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x11, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, |
|
0x69, 0x6e, 0x67, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, |
|
0x32, 0x16, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, |
|
0x69, 0x6e, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x10, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, |
|
0x64, 0x69, 0x6e, 0x67, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x6c, 0x61, |
|
0x73, 0x74, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, |
|
0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6c, 0x61, 0x73, 0x74, 0x4f, 0x66, 0x66, 0x73, 0x65, |
|
0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x50, 0x0a, 0x1a, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, |
|
0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, |
|
0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x69, |
|
0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x09, 0x63, |
|
0x68, 0x61, 0x6e, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0x64, 0x0a, 0x0d, 0x43, 0x68, 0x61, 0x6e, |
|
0x6e, 0x65, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x32, 0x0a, 0x0a, 0x63, 0x68, 0x61, |
|
0x6e, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, |
|
0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x6f, 0x69, |
|
0x6e, 0x74, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1f, 0x0a, |
|
0x0b, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, |
|
0x28, 0x0c, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x22, 0x73, |
|
0x0a, 0x0f, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x43, 0x68, 0x61, 0x6e, 0x42, 0x61, 0x63, 0x6b, 0x75, |
|
0x70, 0x12, 0x34, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, |
|
0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, |
|
0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x0a, 0x63, 0x68, 0x61, |
|
0x6e, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x6d, 0x75, 0x6c, 0x74, 0x69, |
|
0x5f, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, |
|
0x28, 0x0c, 0x52, 0x0f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x43, 0x68, 0x61, 0x6e, 0x42, 0x61, 0x63, |
|
0x6b, 0x75, 0x70, 0x22, 0x19, 0x0a, 0x17, 0x43, 0x68, 0x61, 0x6e, 0x42, 0x61, 0x63, 0x6b, 0x75, |
|
0x70, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x9f, |
|
0x01, 0x0a, 0x12, 0x43, 0x68, 0x61, 0x6e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x6e, 0x61, |
|
0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, 0x45, 0x0a, 0x13, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, |
|
0x63, 0x68, 0x61, 0x6e, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x18, 0x01, 0x20, 0x01, |
|
0x28, 0x0b, 0x32, 0x15, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, |
|
0x65, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x11, 0x73, 0x69, 0x6e, 0x67, 0x6c, |
|
0x65, 0x43, 0x68, 0x61, 0x6e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x12, 0x42, 0x0a, 0x11, |
|
0x6d, 0x75, 0x6c, 0x74, 0x69, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, |
|
0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, |
|
0x4d, 0x75, 0x6c, 0x74, 0x69, 0x43, 0x68, 0x61, 0x6e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, |
|
0x0f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x43, 0x68, 0x61, 0x6e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, |
|
0x22, 0x49, 0x0a, 0x0e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, |
|
0x70, 0x73, 0x12, 0x37, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, |
|
0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x0b, |
|
0x63, 0x68, 0x61, 0x6e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x22, 0x8e, 0x01, 0x0a, 0x18, |
|
0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x42, 0x61, 0x63, 0x6b, 0x75, |
|
0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3a, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, |
|
0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, |
|
0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x61, |
|
0x63, 0x6b, 0x75, 0x70, 0x73, 0x48, 0x00, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x42, 0x61, 0x63, |
|
0x6b, 0x75, 0x70, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x5f, 0x63, 0x68, |
|
0x61, 0x6e, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, |
|
0x00, 0x52, 0x0f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x43, 0x68, 0x61, 0x6e, 0x42, 0x61, 0x63, 0x6b, |
|
0x75, 0x70, 0x42, 0x08, 0x0a, 0x06, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x22, 0x17, 0x0a, 0x15, |
|
0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, |
|
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1b, 0x0a, 0x19, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, |
|
0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, |
|
0x6f, 0x6e, 0x22, 0x1a, 0x0a, 0x18, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x43, 0x68, 0x61, 0x6e, |
|
0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x44, |
|
0x0a, 0x12, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, |
|
0x73, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, |
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x16, 0x0a, 0x06, |
|
0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, |
|
0x74, 0x69, 0x6f, 0x6e, 0x22, 0x72, 0x0a, 0x13, 0x42, 0x61, 0x6b, 0x65, 0x4d, 0x61, 0x63, 0x61, |
|
0x72, 0x6f, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x0b, 0x70, |
|
0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, |
|
0x32, 0x19, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, |
|
0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x70, 0x65, 0x72, |
|
0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1e, 0x0a, 0x0b, 0x72, 0x6f, 0x6f, 0x74, |
|
0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x72, |
|
0x6f, 0x6f, 0x74, 0x4b, 0x65, 0x79, 0x49, 0x64, 0x22, 0x32, 0x0a, 0x14, 0x42, 0x61, 0x6b, 0x65, |
|
0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, |
|
0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, |
|
0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x22, 0x18, 0x0a, 0x16, |
|
0x4c, 0x69, 0x73, 0x74, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x52, |
|
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x3b, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x61, |
|
0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, |
|
0x65, 0x12, 0x20, 0x0a, 0x0c, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, |
|
0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0a, 0x72, 0x6f, 0x6f, 0x74, 0x4b, 0x65, 0x79, |
|
0x49, 0x64, 0x73, 0x22, 0x39, 0x0a, 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x61, 0x63, |
|
0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x49, 0x44, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, |
|
0x0a, 0x0b, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, |
|
0x01, 0x28, 0x04, 0x52, 0x09, 0x72, 0x6f, 0x6f, 0x74, 0x4b, 0x65, 0x79, 0x49, 0x64, 0x22, 0x34, |
|
0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, |
|
0x49, 0x44, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, |
|
0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x65, 0x6c, |
|
0x65, 0x74, 0x65, 0x64, 0x22, 0x55, 0x0a, 0x16, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, |
|
0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x3b, |
|
0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, |
|
0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x63, 0x61, |
|
0x72, 0x6f, 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0b, |
|
0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x18, 0x0a, 0x16, 0x4c, |
|
0x69, 0x73, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, |
|
0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xe4, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, |
|
0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, |
|
0x65, 0x12, 0x64, 0x0a, 0x12, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x5f, 0x70, 0x65, 0x72, 0x6d, |
|
0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, |
|
0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, |
|
0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4d, 0x65, |
|
0x74, 0x68, 0x6f, 0x64, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x45, |
|
0x6e, 0x74, 0x72, 0x79, 0x52, 0x11, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x50, 0x65, 0x72, 0x6d, |
|
0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x63, 0x0a, 0x16, 0x4d, 0x65, 0x74, 0x68, 0x6f, |
|
0x64, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, |
|
0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, |
|
0x6b, 0x65, 0x79, 0x12, 0x33, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, |
|
0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4d, 0x61, 0x63, 0x61, 0x72, |
|
0x6f, 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, |
|
0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb0, 0x08, 0x0a, |
|
0x07, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x12, 0x2e, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, |
|
0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x46, |
|
0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x2e, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x43, 0x6f, |
|
0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x3b, 0x0a, 0x0e, 0x63, 0x68, 0x61, 0x6e, |
|
0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, |
|
0x32, 0x14, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, |
|
0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, |
|
0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x73, |
|
0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x73, |
|
0x61, 0x74, 0x12, 0x22, 0x0a, 0x0d, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x68, 0x61, 0x5f, |
|
0x32, 0x35, 0x36, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x6f, 0x6e, 0x69, 0x6f, 0x6e, |
|
0x53, 0x68, 0x61, 0x32, 0x35, 0x36, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x74, 0x76, 0x5f, 0x65, |
|
0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x6c, 0x74, |
|
0x76, 0x45, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, |
|
0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x30, 0x0a, |
|
0x14, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, |
|
0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x66, 0x61, 0x69, |
|
0x6c, 0x75, 0x72, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, |
|
0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, |
|
0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x22, 0xef, 0x05, 0x0a, 0x0b, 0x46, 0x61, 0x69, 0x6c, |
|
0x75, 0x72, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x45, 0x53, 0x45, 0x52, |
|
0x56, 0x45, 0x44, 0x10, 0x00, 0x12, 0x28, 0x0a, 0x24, 0x49, 0x4e, 0x43, 0x4f, 0x52, 0x52, 0x45, |
|
0x43, 0x54, 0x5f, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x50, 0x41, |
|
0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x45, 0x54, 0x41, 0x49, 0x4c, 0x53, 0x10, 0x01, 0x12, |
|
0x1c, 0x0a, 0x18, 0x49, 0x4e, 0x43, 0x4f, 0x52, 0x52, 0x45, 0x43, 0x54, 0x5f, 0x50, 0x41, 0x59, |
|
0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x41, 0x4d, 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x02, 0x12, 0x1f, 0x0a, |
|
0x1b, 0x46, 0x49, 0x4e, 0x41, 0x4c, 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x52, 0x52, 0x45, 0x43, 0x54, |
|
0x5f, 0x43, 0x4c, 0x54, 0x56, 0x5f, 0x45, 0x58, 0x50, 0x49, 0x52, 0x59, 0x10, 0x03, 0x12, 0x1f, |
|
0x0a, 0x1b, 0x46, 0x49, 0x4e, 0x41, 0x4c, 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x52, 0x52, 0x45, 0x43, |
|
0x54, 0x5f, 0x48, 0x54, 0x4c, 0x43, 0x5f, 0x41, 0x4d, 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x04, 0x12, |
|
0x19, 0x0a, 0x15, 0x46, 0x49, 0x4e, 0x41, 0x4c, 0x5f, 0x45, 0x58, 0x50, 0x49, 0x52, 0x59, 0x5f, |
|
0x54, 0x4f, 0x4f, 0x5f, 0x53, 0x4f, 0x4f, 0x4e, 0x10, 0x05, 0x12, 0x11, 0x0a, 0x0d, 0x49, 0x4e, |
|
0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x52, 0x45, 0x41, 0x4c, 0x4d, 0x10, 0x06, 0x12, 0x13, 0x0a, |
|
0x0f, 0x45, 0x58, 0x50, 0x49, 0x52, 0x59, 0x5f, 0x54, 0x4f, 0x4f, 0x5f, 0x53, 0x4f, 0x4f, 0x4e, |
|
0x10, 0x07, 0x12, 0x19, 0x0a, 0x15, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4f, 0x4e, |
|
0x49, 0x4f, 0x4e, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x08, 0x12, 0x16, 0x0a, |
|
0x12, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4f, 0x4e, 0x49, 0x4f, 0x4e, 0x5f, 0x48, |
|
0x4d, 0x41, 0x43, 0x10, 0x09, 0x12, 0x15, 0x0a, 0x11, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, |
|
0x5f, 0x4f, 0x4e, 0x49, 0x4f, 0x4e, 0x5f, 0x4b, 0x45, 0x59, 0x10, 0x0a, 0x12, 0x18, 0x0a, 0x14, |
|
0x41, 0x4d, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x42, 0x45, 0x4c, 0x4f, 0x57, 0x5f, 0x4d, 0x49, 0x4e, |
|
0x49, 0x4d, 0x55, 0x4d, 0x10, 0x0b, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x45, 0x45, 0x5f, 0x49, 0x4e, |
|
0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x10, 0x0c, 0x12, 0x19, 0x0a, 0x15, |
|
0x49, 0x4e, 0x43, 0x4f, 0x52, 0x52, 0x45, 0x43, 0x54, 0x5f, 0x43, 0x4c, 0x54, 0x56, 0x5f, 0x45, |
|
0x58, 0x50, 0x49, 0x52, 0x59, 0x10, 0x0d, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x48, 0x41, 0x4e, 0x4e, |
|
0x45, 0x4c, 0x5f, 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x0e, 0x12, 0x1d, 0x0a, |
|
0x19, 0x54, 0x45, 0x4d, 0x50, 0x4f, 0x52, 0x41, 0x52, 0x59, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x4e, |
|
0x45, 0x4c, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x10, 0x0f, 0x12, 0x21, 0x0a, 0x1d, |
|
0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x46, 0x45, |
|
0x41, 0x54, 0x55, 0x52, 0x45, 0x5f, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4e, 0x47, 0x10, 0x10, 0x12, |
|
0x24, 0x0a, 0x20, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x5f, 0x43, 0x48, 0x41, 0x4e, |
|
0x4e, 0x45, 0x4c, 0x5f, 0x46, 0x45, 0x41, 0x54, 0x55, 0x52, 0x45, 0x5f, 0x4d, 0x49, 0x53, 0x53, |
|
0x49, 0x4e, 0x47, 0x10, 0x11, 0x12, 0x15, 0x0a, 0x11, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, |
|
0x5f, 0x4e, 0x45, 0x58, 0x54, 0x5f, 0x50, 0x45, 0x45, 0x52, 0x10, 0x12, 0x12, 0x1a, 0x0a, 0x16, |
|
0x54, 0x45, 0x4d, 0x50, 0x4f, 0x52, 0x41, 0x52, 0x59, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x46, |
|
0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x10, 0x13, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x45, 0x52, 0x4d, |
|
0x41, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x55, |
|
0x52, 0x45, 0x10, 0x14, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x45, 0x52, 0x4d, 0x41, 0x4e, 0x45, 0x4e, |
|
0x54, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, |
|
0x45, 0x10, 0x15, 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x58, 0x50, 0x49, 0x52, 0x59, 0x5f, 0x54, 0x4f, |
|
0x4f, 0x5f, 0x46, 0x41, 0x52, 0x10, 0x16, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x50, 0x50, 0x5f, 0x54, |
|
0x49, 0x4d, 0x45, 0x4f, 0x55, 0x54, 0x10, 0x17, 0x12, 0x19, 0x0a, 0x15, 0x49, 0x4e, 0x56, 0x41, |
|
0x4c, 0x49, 0x44, 0x5f, 0x4f, 0x4e, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x41, 0x59, 0x4c, 0x4f, 0x41, |
|
0x44, 0x10, 0x18, 0x12, 0x15, 0x0a, 0x10, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, |
|
0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x10, 0xe5, 0x07, 0x12, 0x14, 0x0a, 0x0f, 0x55, 0x4e, |
|
0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x10, 0xe6, 0x07, |
|
0x12, 0x17, 0x0a, 0x12, 0x55, 0x4e, 0x52, 0x45, 0x41, 0x44, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x46, |
|
0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x10, 0xe7, 0x07, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x22, |
|
0xb3, 0x03, 0x0a, 0x0d, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x70, 0x64, 0x61, 0x74, |
|
0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x01, |
|
0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, |
|
0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, |
|
0x01, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1b, |
|
0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x42, |
|
0x02, 0x30, 0x01, 0x52, 0x06, 0x63, 0x68, 0x61, 0x6e, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x74, |
|
0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, |
|
0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x65, 0x73, |
|
0x73, 0x61, 0x67, 0x65, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, |
|
0x52, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x23, |
|
0x0a, 0x0d, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, |
|
0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x46, 0x6c, |
|
0x61, 0x67, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6c, 0x6f, 0x63, 0x6b, |
|
0x5f, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x69, |
|
0x6d, 0x65, 0x4c, 0x6f, 0x63, 0x6b, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x12, 0x2a, 0x0a, 0x11, 0x68, |
|
0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, 0x61, 0x74, |
|
0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x69, 0x6e, 0x69, |
|
0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65, 0x5f, |
|
0x66, 0x65, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65, 0x46, |
|
0x65, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x66, 0x65, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x09, |
|
0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x66, 0x65, 0x65, 0x52, 0x61, 0x74, 0x65, 0x12, 0x2a, 0x0a, |
|
0x11, 0x68, 0x74, 0x6c, 0x63, 0x5f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6d, 0x73, |
|
0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x68, 0x74, 0x6c, 0x63, 0x4d, 0x61, |
|
0x78, 0x69, 0x6d, 0x75, 0x6d, 0x4d, 0x73, 0x61, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x65, 0x78, 0x74, |
|
0x72, 0x61, 0x5f, 0x6f, 0x70, 0x61, 0x71, 0x75, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0c, |
|
0x20, 0x01, 0x28, 0x0c, 0x52, 0x0f, 0x65, 0x78, 0x74, 0x72, 0x61, 0x4f, 0x70, 0x61, 0x71, 0x75, |
|
0x65, 0x44, 0x61, 0x74, 0x61, 0x22, 0x5d, 0x0a, 0x0a, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, |
|
0x6e, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, |
|
0x28, 0x0c, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x6f, |
|
0x72, 0x61, 0x67, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x74, |
|
0x6f, 0x72, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x03, 0x6f, 0x70, 0x73, 0x18, 0x03, |
|
0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x70, 0x52, |
|
0x03, 0x6f, 0x70, 0x73, 0x22, 0x36, 0x0a, 0x02, 0x4f, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, |
|
0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, |
|
0x74, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, |
|
0x03, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2a, 0x7d, 0x0a, 0x0b, |
|
0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a, 0x13, 0x57, |
|
0x49, 0x54, 0x4e, 0x45, 0x53, 0x53, 0x5f, 0x50, 0x55, 0x42, 0x4b, 0x45, 0x59, 0x5f, 0x48, 0x41, |
|
0x53, 0x48, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x4e, 0x45, 0x53, 0x54, 0x45, 0x44, 0x5f, 0x50, |
|
0x55, 0x42, 0x4b, 0x45, 0x59, 0x5f, 0x48, 0x41, 0x53, 0x48, 0x10, 0x01, 0x12, 0x1e, 0x0a, 0x1a, |
|
0x55, 0x4e, 0x55, 0x53, 0x45, 0x44, 0x5f, 0x57, 0x49, 0x54, 0x4e, 0x45, 0x53, 0x53, 0x5f, 0x50, |
|
0x55, 0x42, 0x4b, 0x45, 0x59, 0x5f, 0x48, 0x41, 0x53, 0x48, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, |
|
0x55, 0x4e, 0x55, 0x53, 0x45, 0x44, 0x5f, 0x4e, 0x45, 0x53, 0x54, 0x45, 0x44, 0x5f, 0x50, 0x55, |
|
0x42, 0x4b, 0x45, 0x59, 0x5f, 0x48, 0x41, 0x53, 0x48, 0x10, 0x03, 0x2a, 0x5e, 0x0a, 0x0e, 0x43, |
|
0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0a, 0x0a, |
|
0x06, 0x4c, 0x45, 0x47, 0x41, 0x43, 0x59, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x41, |
|
0x54, 0x49, 0x43, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x54, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x10, 0x01, |
|
0x12, 0x0b, 0x0a, 0x07, 0x41, 0x4e, 0x43, 0x48, 0x4f, 0x52, 0x53, 0x10, 0x02, 0x12, 0x1c, 0x0a, |
|
0x17, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x4d, |
|
0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0xe7, 0x07, 0x2a, 0x61, 0x0a, 0x09, 0x49, |
|
0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x15, 0x0a, 0x11, 0x49, 0x4e, 0x49, 0x54, |
|
0x49, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, |
|
0x13, 0x0a, 0x0f, 0x49, 0x4e, 0x49, 0x54, 0x49, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x4c, 0x4f, 0x43, |
|
0x41, 0x4c, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x49, 0x4e, 0x49, 0x54, 0x49, 0x41, 0x54, 0x4f, |
|
0x52, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x54, 0x45, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x49, 0x4e, |
|
0x49, 0x54, 0x49, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x42, 0x4f, 0x54, 0x48, 0x10, 0x03, 0x2a, 0x60, |
|
0x0a, 0x0e, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, |
|
0x12, 0x10, 0x0a, 0x0c, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, |
|
0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x4e, 0x43, 0x48, 0x4f, 0x52, 0x10, 0x01, 0x12, 0x11, |
|
0x0a, 0x0d, 0x49, 0x4e, 0x43, 0x4f, 0x4d, 0x49, 0x4e, 0x47, 0x5f, 0x48, 0x54, 0x4c, 0x43, 0x10, |
|
0x02, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x55, 0x54, 0x47, 0x4f, 0x49, 0x4e, 0x47, 0x5f, 0x48, 0x54, |
|
0x4c, 0x43, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x4f, 0x4d, 0x4d, 0x49, 0x54, 0x10, 0x04, |
|
0x2a, 0x71, 0x0a, 0x11, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x75, |
|
0x74, 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x55, 0x54, 0x43, 0x4f, 0x4d, 0x45, |
|
0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x4c, |
|
0x41, 0x49, 0x4d, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x55, 0x4e, 0x43, 0x4c, 0x41, |
|
0x49, 0x4d, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x42, 0x41, 0x4e, 0x44, 0x4f, |
|
0x4e, 0x45, 0x44, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x46, 0x49, 0x52, 0x53, 0x54, 0x5f, 0x53, |
|
0x54, 0x41, 0x47, 0x45, 0x10, 0x04, 0x12, 0x0b, 0x0a, 0x07, 0x54, 0x49, 0x4d, 0x45, 0x4f, 0x55, |
|
0x54, 0x10, 0x05, 0x2a, 0x39, 0x0a, 0x0e, 0x4e, 0x6f, 0x64, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, |
|
0x63, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, |
|
0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x42, 0x45, 0x54, 0x57, 0x45, 0x45, 0x4e, 0x4e, 0x45, 0x53, |
|
0x53, 0x5f, 0x43, 0x45, 0x4e, 0x54, 0x52, 0x41, 0x4c, 0x49, 0x54, 0x59, 0x10, 0x01, 0x2a, 0x3b, |
|
0x0a, 0x10, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x48, 0x54, 0x4c, 0x43, 0x53, 0x74, 0x61, |
|
0x74, 0x65, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x43, 0x43, 0x45, 0x50, 0x54, 0x45, 0x44, 0x10, 0x00, |
|
0x12, 0x0b, 0x0a, 0x07, 0x53, 0x45, 0x54, 0x54, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0c, 0x0a, |
|
0x08, 0x43, 0x41, 0x4e, 0x43, 0x45, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x2a, 0xd9, 0x01, 0x0a, 0x14, |
|
0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x52, 0x65, |
|
0x61, 0x73, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x13, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, |
|
0x52, 0x45, 0x41, 0x53, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x1a, 0x0a, |
|
0x16, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x52, 0x45, 0x41, 0x53, 0x4f, 0x4e, 0x5f, |
|
0x54, 0x49, 0x4d, 0x45, 0x4f, 0x55, 0x54, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x46, 0x41, 0x49, |
|
0x4c, 0x55, 0x52, 0x45, 0x5f, 0x52, 0x45, 0x41, 0x53, 0x4f, 0x4e, 0x5f, 0x4e, 0x4f, 0x5f, 0x52, |
|
0x4f, 0x55, 0x54, 0x45, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, |
|
0x45, 0x5f, 0x52, 0x45, 0x41, 0x53, 0x4f, 0x4e, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, |
|
0x12, 0x2c, 0x0a, 0x28, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x52, 0x45, 0x41, 0x53, |
|
0x4f, 0x4e, 0x5f, 0x49, 0x4e, 0x43, 0x4f, 0x52, 0x52, 0x45, 0x43, 0x54, 0x5f, 0x50, 0x41, 0x59, |
|
0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x45, 0x54, 0x41, 0x49, 0x4c, 0x53, 0x10, 0x04, 0x12, 0x27, |
|
0x0a, 0x23, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x5f, 0x52, 0x45, 0x41, 0x53, 0x4f, 0x4e, |
|
0x5f, 0x49, 0x4e, 0x53, 0x55, 0x46, 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x42, 0x41, |
|
0x4c, 0x41, 0x4e, 0x43, 0x45, 0x10, 0x05, 0x2a, 0xcf, 0x04, 0x0a, 0x0a, 0x46, 0x65, 0x61, 0x74, |
|
0x75, 0x72, 0x65, 0x42, 0x69, 0x74, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x41, 0x54, 0x41, 0x4c, 0x4f, |
|
0x53, 0x53, 0x5f, 0x50, 0x52, 0x4f, 0x54, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x51, 0x10, 0x00, |
|
0x12, 0x18, 0x0a, 0x14, 0x44, 0x41, 0x54, 0x41, 0x4c, 0x4f, 0x53, 0x53, 0x5f, 0x50, 0x52, 0x4f, |
|
0x54, 0x45, 0x43, 0x54, 0x5f, 0x4f, 0x50, 0x54, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x49, 0x4e, |
|
0x49, 0x54, 0x49, 0x41, 0x4c, 0x5f, 0x52, 0x4f, 0x55, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x59, 0x4e, |
|
0x43, 0x10, 0x03, 0x12, 0x1f, 0x0a, 0x1b, 0x55, 0x50, 0x46, 0x52, 0x4f, 0x4e, 0x54, 0x5f, 0x53, |
|
0x48, 0x55, 0x54, 0x44, 0x4f, 0x57, 0x4e, 0x5f, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x5f, 0x52, |
|
0x45, 0x51, 0x10, 0x04, 0x12, 0x1f, 0x0a, 0x1b, 0x55, 0x50, 0x46, 0x52, 0x4f, 0x4e, 0x54, 0x5f, |
|
0x53, 0x48, 0x55, 0x54, 0x44, 0x4f, 0x57, 0x4e, 0x5f, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x5f, |
|
0x4f, 0x50, 0x54, 0x10, 0x05, 0x12, 0x16, 0x0a, 0x12, 0x47, 0x4f, 0x53, 0x53, 0x49, 0x50, 0x5f, |
|
0x51, 0x55, 0x45, 0x52, 0x49, 0x45, 0x53, 0x5f, 0x52, 0x45, 0x51, 0x10, 0x06, 0x12, 0x16, 0x0a, |
|
0x12, 0x47, 0x4f, 0x53, 0x53, 0x49, 0x50, 0x5f, 0x51, 0x55, 0x45, 0x52, 0x49, 0x45, 0x53, 0x5f, |
|
0x4f, 0x50, 0x54, 0x10, 0x07, 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x4c, 0x56, 0x5f, 0x4f, 0x4e, 0x49, |
|
0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x51, 0x10, 0x08, 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x4c, 0x56, 0x5f, |
|
0x4f, 0x4e, 0x49, 0x4f, 0x4e, 0x5f, 0x4f, 0x50, 0x54, 0x10, 0x09, 0x12, 0x1a, 0x0a, 0x16, 0x45, |
|
0x58, 0x54, 0x5f, 0x47, 0x4f, 0x53, 0x53, 0x49, 0x50, 0x5f, 0x51, 0x55, 0x45, 0x52, 0x49, 0x45, |
|
0x53, 0x5f, 0x52, 0x45, 0x51, 0x10, 0x0a, 0x12, 0x1a, 0x0a, 0x16, 0x45, 0x58, 0x54, 0x5f, 0x47, |
|
0x4f, 0x53, 0x53, 0x49, 0x50, 0x5f, 0x51, 0x55, 0x45, 0x52, 0x49, 0x45, 0x53, 0x5f, 0x4f, 0x50, |
|
0x54, 0x10, 0x0b, 0x12, 0x19, 0x0a, 0x15, 0x53, 0x54, 0x41, 0x54, 0x49, 0x43, 0x5f, 0x52, 0x45, |
|
0x4d, 0x4f, 0x54, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x5f, 0x52, 0x45, 0x51, 0x10, 0x0c, 0x12, 0x19, |
|
0x0a, 0x15, 0x53, 0x54, 0x41, 0x54, 0x49, 0x43, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x54, 0x45, 0x5f, |
|
0x4b, 0x45, 0x59, 0x5f, 0x4f, 0x50, 0x54, 0x10, 0x0d, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x41, 0x59, |
|
0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x41, 0x44, 0x44, 0x52, 0x5f, 0x52, 0x45, 0x51, 0x10, 0x0e, 0x12, |
|
0x14, 0x0a, 0x10, 0x50, 0x41, 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x41, 0x44, 0x44, 0x52, 0x5f, |
|
0x4f, 0x50, 0x54, 0x10, 0x0f, 0x12, 0x0b, 0x0a, 0x07, 0x4d, 0x50, 0x50, 0x5f, 0x52, 0x45, 0x51, |
|
0x10, 0x10, 0x12, 0x0b, 0x0a, 0x07, 0x4d, 0x50, 0x50, 0x5f, 0x4f, 0x50, 0x54, 0x10, 0x11, 0x12, |
|
0x16, 0x0a, 0x12, 0x57, 0x55, 0x4d, 0x42, 0x4f, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, |
|
0x53, 0x5f, 0x52, 0x45, 0x51, 0x10, 0x12, 0x12, 0x16, 0x0a, 0x12, 0x57, 0x55, 0x4d, 0x42, 0x4f, |
|
0x5f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x53, 0x5f, 0x4f, 0x50, 0x54, 0x10, 0x13, 0x12, |
|
0x0f, 0x0a, 0x0b, 0x41, 0x4e, 0x43, 0x48, 0x4f, 0x52, 0x53, 0x5f, 0x52, 0x45, 0x51, 0x10, 0x14, |
|
0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x4e, 0x43, 0x48, 0x4f, 0x52, 0x53, 0x5f, 0x4f, 0x50, 0x54, 0x10, |
|
0x15, 0x12, 0x1d, 0x0a, 0x19, 0x41, 0x4e, 0x43, 0x48, 0x4f, 0x52, 0x53, 0x5f, 0x5a, 0x45, 0x52, |
|
0x4f, 0x5f, 0x46, 0x45, 0x45, 0x5f, 0x48, 0x54, 0x4c, 0x43, 0x5f, 0x52, 0x45, 0x51, 0x10, 0x16, |
|
0x12, 0x1d, 0x0a, 0x19, 0x41, 0x4e, 0x43, 0x48, 0x4f, 0x52, 0x53, 0x5f, 0x5a, 0x45, 0x52, 0x4f, |
|
0x5f, 0x46, 0x45, 0x45, 0x5f, 0x48, 0x54, 0x4c, 0x43, 0x5f, 0x4f, 0x50, 0x54, 0x10, 0x17, 0x12, |
|
0x0b, 0x0a, 0x07, 0x41, 0x4d, 0x50, 0x5f, 0x52, 0x45, 0x51, 0x10, 0x1e, 0x12, 0x0b, 0x0a, 0x07, |
|
0x41, 0x4d, 0x50, 0x5f, 0x4f, 0x50, 0x54, 0x10, 0x1f, 0x32, 0xc9, 0x21, 0x0a, 0x09, 0x4c, 0x69, |
|
0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x4a, 0x0a, 0x0d, 0x57, 0x61, 0x6c, 0x6c, 0x65, |
|
0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1b, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, |
|
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x57, 0x61, |
|
0x6c, 0x6c, 0x65, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, |
|
0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x0e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x61, |
|
0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1c, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, |
|
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, |
|
0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, |
|
0x6e, 0x65, 0x6c, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, |
|
0x73, 0x65, 0x12, 0x4b, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, |
|
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1d, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, |
|
0x74, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, |
|
0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x72, 0x61, |
|
0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, |
|
0x44, 0x0a, 0x0b, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x46, 0x65, 0x65, 0x12, 0x19, |
|
0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x46, |
|
0x65, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, |
|
0x63, 0x2e, 0x45, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x46, 0x65, 0x65, 0x52, 0x65, 0x73, |
|
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x09, 0x53, 0x65, 0x6e, 0x64, 0x43, 0x6f, 0x69, |
|
0x6e, 0x73, 0x12, 0x17, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x43, |
|
0x6f, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x6c, 0x6e, |
|
0x72, 0x70, 0x63, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73, |
|
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x6e, 0x73, |
|
0x70, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, |
|
0x74, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, |
|
0x1a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x55, 0x6e, 0x73, 0x70, |
|
0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x15, 0x53, |
|
0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, |
|
0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1d, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, |
|
0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, |
|
0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x54, 0x72, 0x61, 0x6e, |
|
0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x30, 0x01, 0x12, 0x3b, 0x0a, 0x08, 0x53, 0x65, 0x6e, |
|
0x64, 0x4d, 0x61, 0x6e, 0x79, 0x12, 0x16, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x65, |
|
0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, |
|
0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x79, 0x52, 0x65, |
|
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x0a, 0x4e, 0x65, 0x77, 0x41, 0x64, 0x64, |
|
0x72, 0x65, 0x73, 0x73, 0x12, 0x18, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x65, 0x77, |
|
0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, |
|
0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x65, 0x77, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, |
|
0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x0b, 0x53, 0x69, 0x67, |
|
0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x19, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x53, 0x69, 0x67, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, |
|
0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x69, 0x67, 0x6e, |
|
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, |
|
0x4a, 0x0a, 0x0d, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, |
|
0x12, 0x1b, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x4d, |
|
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, |
|
0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x4d, 0x65, 0x73, 0x73, |
|
0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x0b, 0x43, |
|
0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x50, 0x65, 0x65, 0x72, 0x12, 0x19, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, |
|
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6f, |
|
0x6e, 0x6e, 0x65, 0x63, 0x74, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, |
|
0x65, 0x12, 0x4d, 0x0a, 0x0e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x50, |
|
0x65, 0x65, 0x72, 0x12, 0x1c, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x69, 0x73, 0x63, |
|
0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, |
|
0x74, 0x1a, 0x1d, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, |
|
0x6e, 0x65, 0x63, 0x74, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, |
|
0x12, 0x3e, 0x0a, 0x09, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x65, 0x72, 0x73, 0x12, 0x17, 0x2e, |
|
0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x65, 0x72, 0x73, 0x52, |
|
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4c, |
|
0x69, 0x73, 0x74, 0x50, 0x65, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, |
|
0x12, 0x47, 0x0a, 0x13, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x50, 0x65, 0x65, |
|
0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1c, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, |
|
0x50, 0x65, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, |
|
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x10, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x65, |
|
0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x30, 0x01, 0x12, 0x38, 0x0a, 0x07, 0x47, 0x65, 0x74, |
|
0x49, 0x6e, 0x66, 0x6f, 0x12, 0x15, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, |
|
0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x6c, 0x6e, |
|
0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, |
|
0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, |
|
0x72, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x47, |
|
0x65, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, |
|
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, |
|
0x74, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, |
|
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x0f, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, |
|
0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x1d, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, |
|
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, |
|
0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, |
|
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x43, |
|
0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x1a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, |
|
0x4c, 0x69, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, |
|
0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, |
|
0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, |
|
0x12, 0x56, 0x0a, 0x16, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x43, 0x68, 0x61, |
|
0x6e, 0x6e, 0x65, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1f, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x53, |
|
0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x19, 0x2e, 0x6c, 0x6e, |
|
0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, |
|
0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x30, 0x01, 0x12, 0x4d, 0x0a, 0x0e, 0x43, 0x6c, 0x6f, 0x73, |
|
0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x1c, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, |
|
0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, |
|
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x0f, 0x4f, 0x70, 0x65, 0x6e, 0x43, |
|
0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x79, 0x6e, 0x63, 0x12, 0x19, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, |
|
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, |
|
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x43, 0x0a, 0x0b, 0x4f, 0x70, |
|
0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x19, 0x2e, 0x6c, 0x6e, 0x72, 0x70, |
|
0x63, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, |
|
0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4f, 0x70, 0x65, |
|
0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x30, 0x01, 0x12, |
|
0x4c, 0x0a, 0x10, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x53, |
|
0x74, 0x65, 0x70, 0x12, 0x1b, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x75, 0x6e, 0x64, |
|
0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x67, |
|
0x1a, 0x1b, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, |
|
0x53, 0x74, 0x61, 0x74, 0x65, 0x53, 0x74, 0x65, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x50, 0x0a, |
|
0x0f, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, |
|
0x12, 0x1c, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, |
|
0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x1a, 0x1b, |
|
0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x41, 0x63, |
|
0x63, 0x65, 0x70, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x28, 0x01, 0x30, 0x01, 0x12, |
|
0x46, 0x0a, 0x0c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, |
|
0x1a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x43, 0x68, 0x61, |
|
0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x6c, 0x6e, |
|
0x72, 0x70, 0x63, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, |
|
0x70, 0x64, 0x61, 0x74, 0x65, 0x30, 0x01, 0x12, 0x4d, 0x0a, 0x0e, 0x41, 0x62, 0x61, 0x6e, 0x64, |
|
0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x1c, 0x2e, 0x6c, 0x6e, 0x72, 0x70, |
|
0x63, 0x2e, 0x41, 0x62, 0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, |
|
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, |
|
0x41, 0x62, 0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, |
|
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x0b, 0x53, 0x65, 0x6e, 0x64, 0x50, 0x61, |
|
0x79, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x12, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x65, |
|
0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x6c, 0x6e, 0x72, 0x70, |
|
0x63, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x03, |
|
0x88, 0x02, 0x01, 0x28, 0x01, 0x30, 0x01, 0x12, 0x3a, 0x0a, 0x0f, 0x53, 0x65, 0x6e, 0x64, 0x50, |
|
0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x79, 0x6e, 0x63, 0x12, 0x12, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, |
|
0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, |
|
0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x0b, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x52, 0x6f, 0x75, |
|
0x74, 0x65, 0x12, 0x19, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x54, |
|
0x6f, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, |
|
0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, |
|
0x73, 0x65, 0x22, 0x03, 0x88, 0x02, 0x01, 0x28, 0x01, 0x30, 0x01, 0x12, 0x41, 0x0a, 0x0f, 0x53, |
|
0x65, 0x6e, 0x64, 0x54, 0x6f, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x53, 0x79, 0x6e, 0x63, 0x12, 0x19, |
|
0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x52, 0x6f, 0x75, |
|
0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x6c, 0x6e, 0x72, 0x70, |
|
0x63, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, |
|
0x0a, 0x0a, 0x41, 0x64, 0x64, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x0e, 0x2e, 0x6c, |
|
0x6e, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x1a, 0x19, 0x2e, 0x6c, |
|
0x6e, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x64, 0x64, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, |
|
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x49, |
|
0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x12, 0x19, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, |
|
0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, |
|
0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, |
|
0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, |
|
0x0a, 0x0d, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x12, |
|
0x12, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, |
|
0x61, 0x73, 0x68, 0x1a, 0x0e, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x76, 0x6f, |
|
0x69, 0x63, 0x65, 0x12, 0x41, 0x0a, 0x11, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, |
|
0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x12, 0x1a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, |
|
0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x0e, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x76, |
|
0x6f, 0x69, 0x63, 0x65, 0x30, 0x01, 0x12, 0x32, 0x0a, 0x0c, 0x44, 0x65, 0x63, 0x6f, 0x64, 0x65, |
|
0x50, 0x61, 0x79, 0x52, 0x65, 0x71, 0x12, 0x13, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, |
|
0x61, 0x79, 0x52, 0x65, 0x71, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x1a, 0x0d, 0x2e, 0x6c, 0x6e, |
|
0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x79, 0x52, 0x65, 0x71, 0x12, 0x47, 0x0a, 0x0c, 0x4c, 0x69, |
|
0x73, 0x74, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1a, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, |
|
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4c, |
|
0x69, 0x73, 0x74, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, |
|
0x6e, 0x73, 0x65, 0x12, 0x56, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6c, 0x6c, |
|
0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1f, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, |
|
0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x6c, 0x6e, 0x72, 0x70, |
|
0x63, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x50, 0x61, 0x79, 0x6d, 0x65, |
|
0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x0d, 0x44, |
|
0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x12, 0x1a, 0x2e, 0x6c, |
|
0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x47, 0x72, 0x61, 0x70, |
|
0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x47, 0x72, 0x61, 0x70, 0x68, 0x12, 0x47, 0x0a, |
|
0x0e, 0x47, 0x65, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, |
|
0x19, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x4d, 0x65, 0x74, 0x72, |
|
0x69, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x65, |
|
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, |
|
0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, |
|
0x61, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, |
|
0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x45, 0x64, 0x67, |
|
0x65, 0x12, 0x36, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, |
|
0x12, 0x16, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, |
|
0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0f, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x44, 0x0a, 0x0b, 0x51, 0x75, 0x65, |
|
0x72, 0x79, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x19, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, |
|
0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x51, 0x75, 0x65, 0x72, |
|
0x79, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, |
|
0x3f, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, |
|
0x6f, 0x12, 0x19, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, |
|
0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, 0x6c, |
|
0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, |
|
0x12, 0x35, 0x0a, 0x0a, 0x53, 0x74, 0x6f, 0x70, 0x44, 0x61, 0x65, 0x6d, 0x6f, 0x6e, 0x12, 0x12, |
|
0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, |
|
0x73, 0x74, 0x1a, 0x13, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x52, |
|
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x15, 0x53, 0x75, 0x62, 0x73, 0x63, |
|
0x72, 0x69, 0x62, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x47, 0x72, 0x61, 0x70, 0x68, |
|
0x12, 0x20, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x54, 0x6f, |
|
0x70, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, |
|
0x6f, 0x6e, 0x1a, 0x1a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, |
|
0x54, 0x6f, 0x70, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x30, 0x01, |
|
0x12, 0x41, 0x0a, 0x0a, 0x44, 0x65, 0x62, 0x75, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x18, |
|
0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x62, 0x75, 0x67, 0x4c, 0x65, 0x76, 0x65, |
|
0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x44, 0x65, 0x62, 0x75, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, |
|
0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x09, 0x46, 0x65, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, |
|
0x12, 0x17, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x46, 0x65, 0x65, 0x52, 0x65, 0x70, 0x6f, |
|
0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x6c, 0x6e, 0x72, 0x70, |
|
0x63, 0x2e, 0x46, 0x65, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, |
|
0x6e, 0x73, 0x65, 0x12, 0x4e, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, |
|
0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x1a, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, |
|
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x50, |
|
0x6f, 0x6c, 0x69, 0x63, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, |
|
0x6e, 0x73, 0x65, 0x12, 0x56, 0x0a, 0x11, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, |
|
0x67, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1f, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, |
|
0x2e, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x48, 0x69, 0x73, 0x74, 0x6f, |
|
0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x6c, 0x6e, 0x72, 0x70, |
|
0x63, 0x2e, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x48, 0x69, 0x73, 0x74, |
|
0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e, 0x0a, 0x13, 0x45, |
|
0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x61, 0x63, 0x6b, |
|
0x75, 0x70, 0x12, 0x21, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, |
|
0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, |
|
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, |
|
0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x54, 0x0a, 0x17, 0x45, |
|
0x78, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x42, |
|
0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x12, 0x1e, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, |
|
0x68, 0x61, 0x6e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x52, |
|
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, |
|
0x68, 0x61, 0x6e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, |
|
0x74, 0x12, 0x4e, 0x0a, 0x10, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x43, 0x68, 0x61, 0x6e, 0x42, |
|
0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x19, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, |
|
0x61, 0x6e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, |
|
0x1a, 0x1f, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x43, |
|
0x68, 0x61, 0x6e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, |
|
0x65, 0x12, 0x56, 0x0a, 0x15, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x68, 0x61, 0x6e, |
|
0x6e, 0x65, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x12, 0x1f, 0x2e, 0x6c, 0x6e, 0x72, |
|
0x70, 0x63, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x42, 0x61, |
|
0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6c, 0x6e, |
|
0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, |
|
0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x58, 0x0a, 0x17, 0x53, 0x75, 0x62, |
|
0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x61, 0x63, |
|
0x6b, 0x75, 0x70, 0x73, 0x12, 0x20, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x61, |
|
0x6e, 0x6e, 0x65, 0x6c, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, |
|
0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x19, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x43, |
|
0x68, 0x61, 0x6e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, |
|
0x74, 0x30, 0x01, 0x12, 0x47, 0x0a, 0x0c, 0x42, 0x61, 0x6b, 0x65, 0x4d, 0x61, 0x63, 0x61, 0x72, |
|
0x6f, 0x6f, 0x6e, 0x12, 0x1a, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x61, 0x6b, 0x65, |
|
0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, |
|
0x1b, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x61, 0x6b, 0x65, 0x4d, 0x61, 0x63, 0x61, |
|
0x72, 0x6f, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x0f, |
|
0x4c, 0x69, 0x73, 0x74, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x12, |
|
0x1d, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x61, 0x63, 0x61, |
|
0x72, 0x6f, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, |
|
0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x61, 0x63, 0x61, 0x72, |
|
0x6f, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x53, |
|
0x0a, 0x10, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, |
|
0x49, 0x44, 0x12, 0x1e, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, |
|
0x65, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x49, 0x44, 0x52, 0x65, 0x71, 0x75, 0x65, |
|
0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, |
|
0x65, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x49, 0x44, 0x52, 0x65, 0x73, 0x70, 0x6f, |
|
0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, |
|
0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1d, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4c, |
|
0x69, 0x73, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, |
|
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x69, |
|
0x73, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, |
|
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x27, 0x5a, 0x25, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, |
|
0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x69, 0x6e, 0x67, 0x6e, 0x65, 0x74, |
|
0x77, 0x6f, 0x72, 0x6b, 0x2f, 0x6c, 0x6e, 0x64, 0x2f, 0x6c, 0x6e, 0x72, 0x70, 0x63, 0x62, 0x06, |
|
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, |
|
} |
|
|
|
var ( |
|
file_rpc_proto_rawDescOnce sync.Once |
|
file_rpc_proto_rawDescData = file_rpc_proto_rawDesc |
|
) |
|
|
|
func file_rpc_proto_rawDescGZIP() []byte { |
|
file_rpc_proto_rawDescOnce.Do(func() { |
|
file_rpc_proto_rawDescData = protoimpl.X.CompressGZIP(file_rpc_proto_rawDescData) |
|
}) |
|
return file_rpc_proto_rawDescData |
|
} |
|
|
|
var file_rpc_proto_enumTypes = make([]protoimpl.EnumInfo, 18) |
|
var file_rpc_proto_msgTypes = make([]protoimpl.MessageInfo, 186) |
|
var file_rpc_proto_goTypes = []interface{}{ |
|
(AddressType)(0), // 0: lnrpc.AddressType |
|
(CommitmentType)(0), // 1: lnrpc.CommitmentType |
|
(Initiator)(0), // 2: lnrpc.Initiator |
|
(ResolutionType)(0), // 3: lnrpc.ResolutionType |
|
(ResolutionOutcome)(0), // 4: lnrpc.ResolutionOutcome |
|
(NodeMetricType)(0), // 5: lnrpc.NodeMetricType |
|
(InvoiceHTLCState)(0), // 6: lnrpc.InvoiceHTLCState |
|
(PaymentFailureReason)(0), // 7: lnrpc.PaymentFailureReason |
|
(FeatureBit)(0), // 8: lnrpc.FeatureBit |
|
(ChannelCloseSummary_ClosureType)(0), // 9: lnrpc.ChannelCloseSummary.ClosureType |
|
(Peer_SyncType)(0), // 10: lnrpc.Peer.SyncType |
|
(PeerEvent_EventType)(0), // 11: lnrpc.PeerEvent.EventType |
|
(PendingChannelsResponse_ForceClosedChannel_AnchorState)(0), // 12: lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState |
|
(ChannelEventUpdate_UpdateType)(0), // 13: lnrpc.ChannelEventUpdate.UpdateType |
|
(Invoice_InvoiceState)(0), // 14: lnrpc.Invoice.InvoiceState |
|
(Payment_PaymentStatus)(0), // 15: lnrpc.Payment.PaymentStatus |
|
(HTLCAttempt_HTLCStatus)(0), // 16: lnrpc.HTLCAttempt.HTLCStatus |
|
(Failure_FailureCode)(0), // 17: lnrpc.Failure.FailureCode |
|
(*Utxo)(nil), // 18: lnrpc.Utxo |
|
(*Transaction)(nil), // 19: lnrpc.Transaction |
|
(*GetTransactionsRequest)(nil), // 20: lnrpc.GetTransactionsRequest |
|
(*TransactionDetails)(nil), // 21: lnrpc.TransactionDetails |
|
(*FeeLimit)(nil), // 22: lnrpc.FeeLimit |
|
(*SendRequest)(nil), // 23: lnrpc.SendRequest |
|
(*SendResponse)(nil), // 24: lnrpc.SendResponse |
|
(*SendToRouteRequest)(nil), // 25: lnrpc.SendToRouteRequest |
|
(*ChannelAcceptRequest)(nil), // 26: lnrpc.ChannelAcceptRequest |
|
(*ChannelAcceptResponse)(nil), // 27: lnrpc.ChannelAcceptResponse |
|
(*ChannelPoint)(nil), // 28: lnrpc.ChannelPoint |
|
(*OutPoint)(nil), // 29: lnrpc.OutPoint |
|
(*LightningAddress)(nil), // 30: lnrpc.LightningAddress |
|
(*EstimateFeeRequest)(nil), // 31: lnrpc.EstimateFeeRequest |
|
(*EstimateFeeResponse)(nil), // 32: lnrpc.EstimateFeeResponse |
|
(*SendManyRequest)(nil), // 33: lnrpc.SendManyRequest |
|
(*SendManyResponse)(nil), // 34: lnrpc.SendManyResponse |
|
(*SendCoinsRequest)(nil), // 35: lnrpc.SendCoinsRequest |
|
(*SendCoinsResponse)(nil), // 36: lnrpc.SendCoinsResponse |
|
(*ListUnspentRequest)(nil), // 37: lnrpc.ListUnspentRequest |
|
(*ListUnspentResponse)(nil), // 38: lnrpc.ListUnspentResponse |
|
(*NewAddressRequest)(nil), // 39: lnrpc.NewAddressRequest |
|
(*NewAddressResponse)(nil), // 40: lnrpc.NewAddressResponse |
|
(*SignMessageRequest)(nil), // 41: lnrpc.SignMessageRequest |
|
(*SignMessageResponse)(nil), // 42: lnrpc.SignMessageResponse |
|
(*VerifyMessageRequest)(nil), // 43: lnrpc.VerifyMessageRequest |
|
(*VerifyMessageResponse)(nil), // 44: lnrpc.VerifyMessageResponse |
|
(*ConnectPeerRequest)(nil), // 45: lnrpc.ConnectPeerRequest |
|
(*ConnectPeerResponse)(nil), // 46: lnrpc.ConnectPeerResponse |
|
(*DisconnectPeerRequest)(nil), // 47: lnrpc.DisconnectPeerRequest |
|
(*DisconnectPeerResponse)(nil), // 48: lnrpc.DisconnectPeerResponse |
|
(*HTLC)(nil), // 49: lnrpc.HTLC |
|
(*ChannelConstraints)(nil), // 50: lnrpc.ChannelConstraints |
|
(*Channel)(nil), // 51: lnrpc.Channel |
|
(*ListChannelsRequest)(nil), // 52: lnrpc.ListChannelsRequest |
|
(*ListChannelsResponse)(nil), // 53: lnrpc.ListChannelsResponse |
|
(*ChannelCloseSummary)(nil), // 54: lnrpc.ChannelCloseSummary |
|
(*Resolution)(nil), // 55: lnrpc.Resolution |
|
(*ClosedChannelsRequest)(nil), // 56: lnrpc.ClosedChannelsRequest |
|
(*ClosedChannelsResponse)(nil), // 57: lnrpc.ClosedChannelsResponse |
|
(*Peer)(nil), // 58: lnrpc.Peer |
|
(*TimestampedError)(nil), // 59: lnrpc.TimestampedError |
|
(*ListPeersRequest)(nil), // 60: lnrpc.ListPeersRequest |
|
(*ListPeersResponse)(nil), // 61: lnrpc.ListPeersResponse |
|
(*PeerEventSubscription)(nil), // 62: lnrpc.PeerEventSubscription |
|
(*PeerEvent)(nil), // 63: lnrpc.PeerEvent |
|
(*GetInfoRequest)(nil), // 64: lnrpc.GetInfoRequest |
|
(*GetInfoResponse)(nil), // 65: lnrpc.GetInfoResponse |
|
(*GetRecoveryInfoRequest)(nil), // 66: lnrpc.GetRecoveryInfoRequest |
|
(*GetRecoveryInfoResponse)(nil), // 67: lnrpc.GetRecoveryInfoResponse |
|
(*Chain)(nil), // 68: lnrpc.Chain |
|
(*ConfirmationUpdate)(nil), // 69: lnrpc.ConfirmationUpdate |
|
(*ChannelOpenUpdate)(nil), // 70: lnrpc.ChannelOpenUpdate |
|
(*ChannelCloseUpdate)(nil), // 71: lnrpc.ChannelCloseUpdate |
|
(*CloseChannelRequest)(nil), // 72: lnrpc.CloseChannelRequest |
|
(*CloseStatusUpdate)(nil), // 73: lnrpc.CloseStatusUpdate |
|
(*PendingUpdate)(nil), // 74: lnrpc.PendingUpdate |
|
(*ReadyForPsbtFunding)(nil), // 75: lnrpc.ReadyForPsbtFunding |
|
(*OpenChannelRequest)(nil), // 76: lnrpc.OpenChannelRequest |
|
(*OpenStatusUpdate)(nil), // 77: lnrpc.OpenStatusUpdate |
|
(*KeyLocator)(nil), // 78: lnrpc.KeyLocator |
|
(*KeyDescriptor)(nil), // 79: lnrpc.KeyDescriptor |
|
(*ChanPointShim)(nil), // 80: lnrpc.ChanPointShim |
|
(*PsbtShim)(nil), // 81: lnrpc.PsbtShim |
|
(*FundingShim)(nil), // 82: lnrpc.FundingShim |
|
(*FundingShimCancel)(nil), // 83: lnrpc.FundingShimCancel |
|
(*FundingPsbtVerify)(nil), // 84: lnrpc.FundingPsbtVerify |
|
(*FundingPsbtFinalize)(nil), // 85: lnrpc.FundingPsbtFinalize |
|
(*FundingTransitionMsg)(nil), // 86: lnrpc.FundingTransitionMsg |
|
(*FundingStateStepResp)(nil), // 87: lnrpc.FundingStateStepResp |
|
(*PendingHTLC)(nil), // 88: lnrpc.PendingHTLC |
|
(*PendingChannelsRequest)(nil), // 89: lnrpc.PendingChannelsRequest |
|
(*PendingChannelsResponse)(nil), // 90: lnrpc.PendingChannelsResponse |
|
(*ChannelEventSubscription)(nil), // 91: lnrpc.ChannelEventSubscription |
|
(*ChannelEventUpdate)(nil), // 92: lnrpc.ChannelEventUpdate |
|
(*WalletAccountBalance)(nil), // 93: lnrpc.WalletAccountBalance |
|
(*WalletBalanceRequest)(nil), // 94: lnrpc.WalletBalanceRequest |
|
(*WalletBalanceResponse)(nil), // 95: lnrpc.WalletBalanceResponse |
|
(*Amount)(nil), // 96: lnrpc.Amount |
|
(*ChannelBalanceRequest)(nil), // 97: lnrpc.ChannelBalanceRequest |
|
(*ChannelBalanceResponse)(nil), // 98: lnrpc.ChannelBalanceResponse |
|
(*QueryRoutesRequest)(nil), // 99: lnrpc.QueryRoutesRequest |
|
(*NodePair)(nil), // 100: lnrpc.NodePair |
|
(*EdgeLocator)(nil), // 101: lnrpc.EdgeLocator |
|
(*QueryRoutesResponse)(nil), // 102: lnrpc.QueryRoutesResponse |
|
(*Hop)(nil), // 103: lnrpc.Hop |
|
(*MPPRecord)(nil), // 104: lnrpc.MPPRecord |
|
(*AMPRecord)(nil), // 105: lnrpc.AMPRecord |
|
(*Route)(nil), // 106: lnrpc.Route |
|
(*NodeInfoRequest)(nil), // 107: lnrpc.NodeInfoRequest |
|
(*NodeInfo)(nil), // 108: lnrpc.NodeInfo |
|
(*LightningNode)(nil), // 109: lnrpc.LightningNode |
|
(*NodeAddress)(nil), // 110: lnrpc.NodeAddress |
|
(*RoutingPolicy)(nil), // 111: lnrpc.RoutingPolicy |
|
(*ChannelEdge)(nil), // 112: lnrpc.ChannelEdge |
|
(*ChannelGraphRequest)(nil), // 113: lnrpc.ChannelGraphRequest |
|
(*ChannelGraph)(nil), // 114: lnrpc.ChannelGraph |
|
(*NodeMetricsRequest)(nil), // 115: lnrpc.NodeMetricsRequest |
|
(*NodeMetricsResponse)(nil), // 116: lnrpc.NodeMetricsResponse |
|
(*FloatMetric)(nil), // 117: lnrpc.FloatMetric |
|
(*ChanInfoRequest)(nil), // 118: lnrpc.ChanInfoRequest |
|
(*NetworkInfoRequest)(nil), // 119: lnrpc.NetworkInfoRequest |
|
(*NetworkInfo)(nil), // 120: lnrpc.NetworkInfo |
|
(*StopRequest)(nil), // 121: lnrpc.StopRequest |
|
(*StopResponse)(nil), // 122: lnrpc.StopResponse |
|
(*GraphTopologySubscription)(nil), // 123: lnrpc.GraphTopologySubscription |
|
(*GraphTopologyUpdate)(nil), // 124: lnrpc.GraphTopologyUpdate |
|
(*NodeUpdate)(nil), // 125: lnrpc.NodeUpdate |
|
(*ChannelEdgeUpdate)(nil), // 126: lnrpc.ChannelEdgeUpdate |
|
(*ClosedChannelUpdate)(nil), // 127: lnrpc.ClosedChannelUpdate |
|
(*HopHint)(nil), // 128: lnrpc.HopHint |
|
(*RouteHint)(nil), // 129: lnrpc.RouteHint |
|
(*Invoice)(nil), // 130: lnrpc.Invoice |
|
(*InvoiceHTLC)(nil), // 131: lnrpc.InvoiceHTLC |
|
(*AMP)(nil), // 132: lnrpc.AMP |
|
(*AddInvoiceResponse)(nil), // 133: lnrpc.AddInvoiceResponse |
|
(*PaymentHash)(nil), // 134: lnrpc.PaymentHash |
|
(*ListInvoiceRequest)(nil), // 135: lnrpc.ListInvoiceRequest |
|
(*ListInvoiceResponse)(nil), // 136: lnrpc.ListInvoiceResponse |
|
(*InvoiceSubscription)(nil), // 137: lnrpc.InvoiceSubscription |
|
(*Payment)(nil), // 138: lnrpc.Payment |
|
(*HTLCAttempt)(nil), // 139: lnrpc.HTLCAttempt |
|
(*ListPaymentsRequest)(nil), // 140: lnrpc.ListPaymentsRequest |
|
(*ListPaymentsResponse)(nil), // 141: lnrpc.ListPaymentsResponse |
|
(*DeleteAllPaymentsRequest)(nil), // 142: lnrpc.DeleteAllPaymentsRequest |
|
(*DeleteAllPaymentsResponse)(nil), // 143: lnrpc.DeleteAllPaymentsResponse |
|
(*AbandonChannelRequest)(nil), // 144: lnrpc.AbandonChannelRequest |
|
(*AbandonChannelResponse)(nil), // 145: lnrpc.AbandonChannelResponse |
|
(*DebugLevelRequest)(nil), // 146: lnrpc.DebugLevelRequest |
|
(*DebugLevelResponse)(nil), // 147: lnrpc.DebugLevelResponse |
|
(*PayReqString)(nil), // 148: lnrpc.PayReqString |
|
(*PayReq)(nil), // 149: lnrpc.PayReq |
|
(*Feature)(nil), // 150: lnrpc.Feature |
|
(*FeeReportRequest)(nil), // 151: lnrpc.FeeReportRequest |
|
(*ChannelFeeReport)(nil), // 152: lnrpc.ChannelFeeReport |
|
(*FeeReportResponse)(nil), // 153: lnrpc.FeeReportResponse |
|
(*PolicyUpdateRequest)(nil), // 154: lnrpc.PolicyUpdateRequest |
|
(*PolicyUpdateResponse)(nil), // 155: lnrpc.PolicyUpdateResponse |
|
(*ForwardingHistoryRequest)(nil), // 156: lnrpc.ForwardingHistoryRequest |
|
(*ForwardingEvent)(nil), // 157: lnrpc.ForwardingEvent |
|
(*ForwardingHistoryResponse)(nil), // 158: lnrpc.ForwardingHistoryResponse |
|
(*ExportChannelBackupRequest)(nil), // 159: lnrpc.ExportChannelBackupRequest |
|
(*ChannelBackup)(nil), // 160: lnrpc.ChannelBackup |
|
(*MultiChanBackup)(nil), // 161: lnrpc.MultiChanBackup |
|
(*ChanBackupExportRequest)(nil), // 162: lnrpc.ChanBackupExportRequest |
|
(*ChanBackupSnapshot)(nil), // 163: lnrpc.ChanBackupSnapshot |
|
(*ChannelBackups)(nil), // 164: lnrpc.ChannelBackups |
|
(*RestoreChanBackupRequest)(nil), // 165: lnrpc.RestoreChanBackupRequest |
|
(*RestoreBackupResponse)(nil), // 166: lnrpc.RestoreBackupResponse |
|
(*ChannelBackupSubscription)(nil), // 167: lnrpc.ChannelBackupSubscription |
|
(*VerifyChanBackupResponse)(nil), // 168: lnrpc.VerifyChanBackupResponse |
|
(*MacaroonPermission)(nil), // 169: lnrpc.MacaroonPermission |
|
(*BakeMacaroonRequest)(nil), // 170: lnrpc.BakeMacaroonRequest |
|
(*BakeMacaroonResponse)(nil), // 171: lnrpc.BakeMacaroonResponse |
|
(*ListMacaroonIDsRequest)(nil), // 172: lnrpc.ListMacaroonIDsRequest |
|
(*ListMacaroonIDsResponse)(nil), // 173: lnrpc.ListMacaroonIDsResponse |
|
(*DeleteMacaroonIDRequest)(nil), // 174: lnrpc.DeleteMacaroonIDRequest |
|
(*DeleteMacaroonIDResponse)(nil), // 175: lnrpc.DeleteMacaroonIDResponse |
|
(*MacaroonPermissionList)(nil), // 176: lnrpc.MacaroonPermissionList |
|
(*ListPermissionsRequest)(nil), // 177: lnrpc.ListPermissionsRequest |
|
(*ListPermissionsResponse)(nil), // 178: lnrpc.ListPermissionsResponse |
|
(*Failure)(nil), // 179: lnrpc.Failure |
|
(*ChannelUpdate)(nil), // 180: lnrpc.ChannelUpdate |
|
(*MacaroonId)(nil), // 181: lnrpc.MacaroonId |
|
(*Op)(nil), // 182: lnrpc.Op |
|
nil, // 183: lnrpc.SendRequest.DestCustomRecordsEntry |
|
nil, // 184: lnrpc.EstimateFeeRequest.AddrToAmountEntry |
|
nil, // 185: lnrpc.SendManyRequest.AddrToAmountEntry |
|
nil, // 186: lnrpc.Peer.FeaturesEntry |
|
nil, // 187: lnrpc.GetInfoResponse.FeaturesEntry |
|
(*PendingChannelsResponse_PendingChannel)(nil), // 188: lnrpc.PendingChannelsResponse.PendingChannel |
|
(*PendingChannelsResponse_PendingOpenChannel)(nil), // 189: lnrpc.PendingChannelsResponse.PendingOpenChannel |
|
(*PendingChannelsResponse_WaitingCloseChannel)(nil), // 190: lnrpc.PendingChannelsResponse.WaitingCloseChannel |
|
(*PendingChannelsResponse_Commitments)(nil), // 191: lnrpc.PendingChannelsResponse.Commitments |
|
(*PendingChannelsResponse_ClosedChannel)(nil), // 192: lnrpc.PendingChannelsResponse.ClosedChannel |
|
(*PendingChannelsResponse_ForceClosedChannel)(nil), // 193: lnrpc.PendingChannelsResponse.ForceClosedChannel |
|
nil, // 194: lnrpc.WalletBalanceResponse.AccountBalanceEntry |
|
nil, // 195: lnrpc.QueryRoutesRequest.DestCustomRecordsEntry |
|
nil, // 196: lnrpc.Hop.CustomRecordsEntry |
|
nil, // 197: lnrpc.LightningNode.FeaturesEntry |
|
nil, // 198: lnrpc.NodeMetricsResponse.BetweennessCentralityEntry |
|
nil, // 199: lnrpc.NodeUpdate.FeaturesEntry |
|
nil, // 200: lnrpc.Invoice.FeaturesEntry |
|
nil, // 201: lnrpc.InvoiceHTLC.CustomRecordsEntry |
|
nil, // 202: lnrpc.PayReq.FeaturesEntry |
|
nil, // 203: lnrpc.ListPermissionsResponse.MethodPermissionsEntry |
|
} |
|
var file_rpc_proto_depIdxs = []int32{ |
|
0, // 0: lnrpc.Utxo.address_type:type_name -> lnrpc.AddressType |
|
29, // 1: lnrpc.Utxo.outpoint:type_name -> lnrpc.OutPoint |
|
19, // 2: lnrpc.TransactionDetails.transactions:type_name -> lnrpc.Transaction |
|
22, // 3: lnrpc.SendRequest.fee_limit:type_name -> lnrpc.FeeLimit |
|
183, // 4: lnrpc.SendRequest.dest_custom_records:type_name -> lnrpc.SendRequest.DestCustomRecordsEntry |
|
8, // 5: lnrpc.SendRequest.dest_features:type_name -> lnrpc.FeatureBit |
|
106, // 6: lnrpc.SendResponse.payment_route:type_name -> lnrpc.Route |
|
106, // 7: lnrpc.SendToRouteRequest.route:type_name -> lnrpc.Route |
|
184, // 8: lnrpc.EstimateFeeRequest.AddrToAmount:type_name -> lnrpc.EstimateFeeRequest.AddrToAmountEntry |
|
185, // 9: lnrpc.SendManyRequest.AddrToAmount:type_name -> lnrpc.SendManyRequest.AddrToAmountEntry |
|
18, // 10: lnrpc.ListUnspentResponse.utxos:type_name -> lnrpc.Utxo |
|
0, // 11: lnrpc.NewAddressRequest.type:type_name -> lnrpc.AddressType |
|
30, // 12: lnrpc.ConnectPeerRequest.addr:type_name -> lnrpc.LightningAddress |
|
49, // 13: lnrpc.Channel.pending_htlcs:type_name -> lnrpc.HTLC |
|
1, // 14: lnrpc.Channel.commitment_type:type_name -> lnrpc.CommitmentType |
|
50, // 15: lnrpc.Channel.local_constraints:type_name -> lnrpc.ChannelConstraints |
|
50, // 16: lnrpc.Channel.remote_constraints:type_name -> lnrpc.ChannelConstraints |
|
51, // 17: lnrpc.ListChannelsResponse.channels:type_name -> lnrpc.Channel |
|
9, // 18: lnrpc.ChannelCloseSummary.close_type:type_name -> lnrpc.ChannelCloseSummary.ClosureType |
|
2, // 19: lnrpc.ChannelCloseSummary.open_initiator:type_name -> lnrpc.Initiator |
|
2, // 20: lnrpc.ChannelCloseSummary.close_initiator:type_name -> lnrpc.Initiator |
|
55, // 21: lnrpc.ChannelCloseSummary.resolutions:type_name -> lnrpc.Resolution |
|
3, // 22: lnrpc.Resolution.resolution_type:type_name -> lnrpc.ResolutionType |
|
4, // 23: lnrpc.Resolution.outcome:type_name -> lnrpc.ResolutionOutcome |
|
29, // 24: lnrpc.Resolution.outpoint:type_name -> lnrpc.OutPoint |
|
54, // 25: lnrpc.ClosedChannelsResponse.channels:type_name -> lnrpc.ChannelCloseSummary |
|
10, // 26: lnrpc.Peer.sync_type:type_name -> lnrpc.Peer.SyncType |
|
186, // 27: lnrpc.Peer.features:type_name -> lnrpc.Peer.FeaturesEntry |
|
59, // 28: lnrpc.Peer.errors:type_name -> lnrpc.TimestampedError |
|
58, // 29: lnrpc.ListPeersResponse.peers:type_name -> lnrpc.Peer |
|
11, // 30: lnrpc.PeerEvent.type:type_name -> lnrpc.PeerEvent.EventType |
|
68, // 31: lnrpc.GetInfoResponse.chains:type_name -> lnrpc.Chain |
|
187, // 32: lnrpc.GetInfoResponse.features:type_name -> lnrpc.GetInfoResponse.FeaturesEntry |
|
28, // 33: lnrpc.ChannelOpenUpdate.channel_point:type_name -> lnrpc.ChannelPoint |
|
28, // 34: lnrpc.CloseChannelRequest.channel_point:type_name -> lnrpc.ChannelPoint |
|
74, // 35: lnrpc.CloseStatusUpdate.close_pending:type_name -> lnrpc.PendingUpdate |
|
71, // 36: lnrpc.CloseStatusUpdate.chan_close:type_name -> lnrpc.ChannelCloseUpdate |
|
82, // 37: lnrpc.OpenChannelRequest.funding_shim:type_name -> lnrpc.FundingShim |
|
74, // 38: lnrpc.OpenStatusUpdate.chan_pending:type_name -> lnrpc.PendingUpdate |
|
70, // 39: lnrpc.OpenStatusUpdate.chan_open:type_name -> lnrpc.ChannelOpenUpdate |
|
75, // 40: lnrpc.OpenStatusUpdate.psbt_fund:type_name -> lnrpc.ReadyForPsbtFunding |
|
78, // 41: lnrpc.KeyDescriptor.key_loc:type_name -> lnrpc.KeyLocator |
|
28, // 42: lnrpc.ChanPointShim.chan_point:type_name -> lnrpc.ChannelPoint |
|
79, // 43: lnrpc.ChanPointShim.local_key:type_name -> lnrpc.KeyDescriptor |
|
80, // 44: lnrpc.FundingShim.chan_point_shim:type_name -> lnrpc.ChanPointShim |
|
81, // 45: lnrpc.FundingShim.psbt_shim:type_name -> lnrpc.PsbtShim |
|
82, // 46: lnrpc.FundingTransitionMsg.shim_register:type_name -> lnrpc.FundingShim |
|
83, // 47: lnrpc.FundingTransitionMsg.shim_cancel:type_name -> lnrpc.FundingShimCancel |
|
84, // 48: lnrpc.FundingTransitionMsg.psbt_verify:type_name -> lnrpc.FundingPsbtVerify |
|
85, // 49: lnrpc.FundingTransitionMsg.psbt_finalize:type_name -> lnrpc.FundingPsbtFinalize |
|
189, // 50: lnrpc.PendingChannelsResponse.pending_open_channels:type_name -> lnrpc.PendingChannelsResponse.PendingOpenChannel |
|
192, // 51: lnrpc.PendingChannelsResponse.pending_closing_channels:type_name -> lnrpc.PendingChannelsResponse.ClosedChannel |
|
193, // 52: lnrpc.PendingChannelsResponse.pending_force_closing_channels:type_name -> lnrpc.PendingChannelsResponse.ForceClosedChannel |
|
190, // 53: lnrpc.PendingChannelsResponse.waiting_close_channels:type_name -> lnrpc.PendingChannelsResponse.WaitingCloseChannel |
|
51, // 54: lnrpc.ChannelEventUpdate.open_channel:type_name -> lnrpc.Channel |
|
54, // 55: lnrpc.ChannelEventUpdate.closed_channel:type_name -> lnrpc.ChannelCloseSummary |
|
28, // 56: lnrpc.ChannelEventUpdate.active_channel:type_name -> lnrpc.ChannelPoint |
|
28, // 57: lnrpc.ChannelEventUpdate.inactive_channel:type_name -> lnrpc.ChannelPoint |
|
74, // 58: lnrpc.ChannelEventUpdate.pending_open_channel:type_name -> lnrpc.PendingUpdate |
|
13, // 59: lnrpc.ChannelEventUpdate.type:type_name -> lnrpc.ChannelEventUpdate.UpdateType |
|
194, // 60: lnrpc.WalletBalanceResponse.account_balance:type_name -> lnrpc.WalletBalanceResponse.AccountBalanceEntry |
|
96, // 61: lnrpc.ChannelBalanceResponse.local_balance:type_name -> lnrpc.Amount |
|
96, // 62: lnrpc.ChannelBalanceResponse.remote_balance:type_name -> lnrpc.Amount |
|
96, // 63: lnrpc.ChannelBalanceResponse.unsettled_local_balance:type_name -> lnrpc.Amount |
|
96, // 64: lnrpc.ChannelBalanceResponse.unsettled_remote_balance:type_name -> lnrpc.Amount |
|
96, // 65: lnrpc.ChannelBalanceResponse.pending_open_local_balance:type_name -> lnrpc.Amount |
|
96, // 66: lnrpc.ChannelBalanceResponse.pending_open_remote_balance:type_name -> lnrpc.Amount |
|
22, // 67: lnrpc.QueryRoutesRequest.fee_limit:type_name -> lnrpc.FeeLimit |
|
101, // 68: lnrpc.QueryRoutesRequest.ignored_edges:type_name -> lnrpc.EdgeLocator |
|
100, // 69: lnrpc.QueryRoutesRequest.ignored_pairs:type_name -> lnrpc.NodePair |
|
195, // 70: lnrpc.QueryRoutesRequest.dest_custom_records:type_name -> lnrpc.QueryRoutesRequest.DestCustomRecordsEntry |
|
129, // 71: lnrpc.QueryRoutesRequest.route_hints:type_name -> lnrpc.RouteHint |
|
8, // 72: lnrpc.QueryRoutesRequest.dest_features:type_name -> lnrpc.FeatureBit |
|
106, // 73: lnrpc.QueryRoutesResponse.routes:type_name -> lnrpc.Route |
|
104, // 74: lnrpc.Hop.mpp_record:type_name -> lnrpc.MPPRecord |
|
105, // 75: lnrpc.Hop.amp_record:type_name -> lnrpc.AMPRecord |
|
196, // 76: lnrpc.Hop.custom_records:type_name -> lnrpc.Hop.CustomRecordsEntry |
|
103, // 77: lnrpc.Route.hops:type_name -> lnrpc.Hop |
|
109, // 78: lnrpc.NodeInfo.node:type_name -> lnrpc.LightningNode |
|
112, // 79: lnrpc.NodeInfo.channels:type_name -> lnrpc.ChannelEdge |
|
110, // 80: lnrpc.LightningNode.addresses:type_name -> lnrpc.NodeAddress |
|
197, // 81: lnrpc.LightningNode.features:type_name -> lnrpc.LightningNode.FeaturesEntry |
|
111, // 82: lnrpc.ChannelEdge.node1_policy:type_name -> lnrpc.RoutingPolicy |
|
111, // 83: lnrpc.ChannelEdge.node2_policy:type_name -> lnrpc.RoutingPolicy |
|
109, // 84: lnrpc.ChannelGraph.nodes:type_name -> lnrpc.LightningNode |
|
112, // 85: lnrpc.ChannelGraph.edges:type_name -> lnrpc.ChannelEdge |
|
5, // 86: lnrpc.NodeMetricsRequest.types:type_name -> lnrpc.NodeMetricType |
|
198, // 87: lnrpc.NodeMetricsResponse.betweenness_centrality:type_name -> lnrpc.NodeMetricsResponse.BetweennessCentralityEntry |
|
125, // 88: lnrpc.GraphTopologyUpdate.node_updates:type_name -> lnrpc.NodeUpdate |
|
126, // 89: lnrpc.GraphTopologyUpdate.channel_updates:type_name -> lnrpc.ChannelEdgeUpdate |
|
127, // 90: lnrpc.GraphTopologyUpdate.closed_chans:type_name -> lnrpc.ClosedChannelUpdate |
|
110, // 91: lnrpc.NodeUpdate.node_addresses:type_name -> lnrpc.NodeAddress |
|
199, // 92: lnrpc.NodeUpdate.features:type_name -> lnrpc.NodeUpdate.FeaturesEntry |
|
28, // 93: lnrpc.ChannelEdgeUpdate.chan_point:type_name -> lnrpc.ChannelPoint |
|
111, // 94: lnrpc.ChannelEdgeUpdate.routing_policy:type_name -> lnrpc.RoutingPolicy |
|
28, // 95: lnrpc.ClosedChannelUpdate.chan_point:type_name -> lnrpc.ChannelPoint |
|
128, // 96: lnrpc.RouteHint.hop_hints:type_name -> lnrpc.HopHint |
|
129, // 97: lnrpc.Invoice.route_hints:type_name -> lnrpc.RouteHint |
|
14, // 98: lnrpc.Invoice.state:type_name -> lnrpc.Invoice.InvoiceState |
|
131, // 99: lnrpc.Invoice.htlcs:type_name -> lnrpc.InvoiceHTLC |
|
200, // 100: lnrpc.Invoice.features:type_name -> lnrpc.Invoice.FeaturesEntry |
|
6, // 101: lnrpc.InvoiceHTLC.state:type_name -> lnrpc.InvoiceHTLCState |
|
201, // 102: lnrpc.InvoiceHTLC.custom_records:type_name -> lnrpc.InvoiceHTLC.CustomRecordsEntry |
|
132, // 103: lnrpc.InvoiceHTLC.amp:type_name -> lnrpc.AMP |
|
130, // 104: lnrpc.ListInvoiceResponse.invoices:type_name -> lnrpc.Invoice |
|
15, // 105: lnrpc.Payment.status:type_name -> lnrpc.Payment.PaymentStatus |
|
139, // 106: lnrpc.Payment.htlcs:type_name -> lnrpc.HTLCAttempt |
|
7, // 107: lnrpc.Payment.failure_reason:type_name -> lnrpc.PaymentFailureReason |
|
16, // 108: lnrpc.HTLCAttempt.status:type_name -> lnrpc.HTLCAttempt.HTLCStatus |
|
106, // 109: lnrpc.HTLCAttempt.route:type_name -> lnrpc.Route |
|
179, // 110: lnrpc.HTLCAttempt.failure:type_name -> lnrpc.Failure |
|
138, // 111: lnrpc.ListPaymentsResponse.payments:type_name -> lnrpc.Payment |
|
28, // 112: lnrpc.AbandonChannelRequest.channel_point:type_name -> lnrpc.ChannelPoint |
|
129, // 113: lnrpc.PayReq.route_hints:type_name -> lnrpc.RouteHint |
|
202, // 114: lnrpc.PayReq.features:type_name -> lnrpc.PayReq.FeaturesEntry |
|
152, // 115: lnrpc.FeeReportResponse.channel_fees:type_name -> lnrpc.ChannelFeeReport |
|
28, // 116: lnrpc.PolicyUpdateRequest.chan_point:type_name -> lnrpc.ChannelPoint |
|
157, // 117: lnrpc.ForwardingHistoryResponse.forwarding_events:type_name -> lnrpc.ForwardingEvent |
|
28, // 118: lnrpc.ExportChannelBackupRequest.chan_point:type_name -> lnrpc.ChannelPoint |
|
28, // 119: lnrpc.ChannelBackup.chan_point:type_name -> lnrpc.ChannelPoint |
|
28, // 120: lnrpc.MultiChanBackup.chan_points:type_name -> lnrpc.ChannelPoint |
|
164, // 121: lnrpc.ChanBackupSnapshot.single_chan_backups:type_name -> lnrpc.ChannelBackups |
|
161, // 122: lnrpc.ChanBackupSnapshot.multi_chan_backup:type_name -> lnrpc.MultiChanBackup |
|
160, // 123: lnrpc.ChannelBackups.chan_backups:type_name -> lnrpc.ChannelBackup |
|
164, // 124: lnrpc.RestoreChanBackupRequest.chan_backups:type_name -> lnrpc.ChannelBackups |
|
169, // 125: lnrpc.BakeMacaroonRequest.permissions:type_name -> lnrpc.MacaroonPermission |
|
169, // 126: lnrpc.MacaroonPermissionList.permissions:type_name -> lnrpc.MacaroonPermission |
|
203, // 127: lnrpc.ListPermissionsResponse.method_permissions:type_name -> lnrpc.ListPermissionsResponse.MethodPermissionsEntry |
|
17, // 128: lnrpc.Failure.code:type_name -> lnrpc.Failure.FailureCode |
|
180, // 129: lnrpc.Failure.channel_update:type_name -> lnrpc.ChannelUpdate |
|
182, // 130: lnrpc.MacaroonId.ops:type_name -> lnrpc.Op |
|
150, // 131: lnrpc.Peer.FeaturesEntry.value:type_name -> lnrpc.Feature |
|
150, // 132: lnrpc.GetInfoResponse.FeaturesEntry.value:type_name -> lnrpc.Feature |
|
2, // 133: lnrpc.PendingChannelsResponse.PendingChannel.initiator:type_name -> lnrpc.Initiator |
|
1, // 134: lnrpc.PendingChannelsResponse.PendingChannel.commitment_type:type_name -> lnrpc.CommitmentType |
|
188, // 135: lnrpc.PendingChannelsResponse.PendingOpenChannel.channel:type_name -> lnrpc.PendingChannelsResponse.PendingChannel |
|
188, // 136: lnrpc.PendingChannelsResponse.WaitingCloseChannel.channel:type_name -> lnrpc.PendingChannelsResponse.PendingChannel |
|
191, // 137: lnrpc.PendingChannelsResponse.WaitingCloseChannel.commitments:type_name -> lnrpc.PendingChannelsResponse.Commitments |
|
188, // 138: lnrpc.PendingChannelsResponse.ClosedChannel.channel:type_name -> lnrpc.PendingChannelsResponse.PendingChannel |
|
188, // 139: lnrpc.PendingChannelsResponse.ForceClosedChannel.channel:type_name -> lnrpc.PendingChannelsResponse.PendingChannel |
|
88, // 140: lnrpc.PendingChannelsResponse.ForceClosedChannel.pending_htlcs:type_name -> lnrpc.PendingHTLC |
|
12, // 141: lnrpc.PendingChannelsResponse.ForceClosedChannel.anchor:type_name -> lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState |
|
93, // 142: lnrpc.WalletBalanceResponse.AccountBalanceEntry.value:type_name -> lnrpc.WalletAccountBalance |
|
150, // 143: lnrpc.LightningNode.FeaturesEntry.value:type_name -> lnrpc.Feature |
|
117, // 144: lnrpc.NodeMetricsResponse.BetweennessCentralityEntry.value:type_name -> lnrpc.FloatMetric |
|
150, // 145: lnrpc.NodeUpdate.FeaturesEntry.value:type_name -> lnrpc.Feature |
|
150, // 146: lnrpc.Invoice.FeaturesEntry.value:type_name -> lnrpc.Feature |
|
150, // 147: lnrpc.PayReq.FeaturesEntry.value:type_name -> lnrpc.Feature |
|
176, // 148: lnrpc.ListPermissionsResponse.MethodPermissionsEntry.value:type_name -> lnrpc.MacaroonPermissionList |
|
94, // 149: lnrpc.Lightning.WalletBalance:input_type -> lnrpc.WalletBalanceRequest |
|
97, // 150: lnrpc.Lightning.ChannelBalance:input_type -> lnrpc.ChannelBalanceRequest |
|
20, // 151: lnrpc.Lightning.GetTransactions:input_type -> lnrpc.GetTransactionsRequest |
|
31, // 152: lnrpc.Lightning.EstimateFee:input_type -> lnrpc.EstimateFeeRequest |
|
35, // 153: lnrpc.Lightning.SendCoins:input_type -> lnrpc.SendCoinsRequest |
|
37, // 154: lnrpc.Lightning.ListUnspent:input_type -> lnrpc.ListUnspentRequest |
|
20, // 155: lnrpc.Lightning.SubscribeTransactions:input_type -> lnrpc.GetTransactionsRequest |
|
33, // 156: lnrpc.Lightning.SendMany:input_type -> lnrpc.SendManyRequest |
|
39, // 157: lnrpc.Lightning.NewAddress:input_type -> lnrpc.NewAddressRequest |
|
41, // 158: lnrpc.Lightning.SignMessage:input_type -> lnrpc.SignMessageRequest |
|
43, // 159: lnrpc.Lightning.VerifyMessage:input_type -> lnrpc.VerifyMessageRequest |
|
45, // 160: lnrpc.Lightning.ConnectPeer:input_type -> lnrpc.ConnectPeerRequest |
|
47, // 161: lnrpc.Lightning.DisconnectPeer:input_type -> lnrpc.DisconnectPeerRequest |
|
60, // 162: lnrpc.Lightning.ListPeers:input_type -> lnrpc.ListPeersRequest |
|
62, // 163: lnrpc.Lightning.SubscribePeerEvents:input_type -> lnrpc.PeerEventSubscription |
|
64, // 164: lnrpc.Lightning.GetInfo:input_type -> lnrpc.GetInfoRequest |
|
66, // 165: lnrpc.Lightning.GetRecoveryInfo:input_type -> lnrpc.GetRecoveryInfoRequest |
|
89, // 166: lnrpc.Lightning.PendingChannels:input_type -> lnrpc.PendingChannelsRequest |
|
52, // 167: lnrpc.Lightning.ListChannels:input_type -> lnrpc.ListChannelsRequest |
|
91, // 168: lnrpc.Lightning.SubscribeChannelEvents:input_type -> lnrpc.ChannelEventSubscription |
|
56, // 169: lnrpc.Lightning.ClosedChannels:input_type -> lnrpc.ClosedChannelsRequest |
|
76, // 170: lnrpc.Lightning.OpenChannelSync:input_type -> lnrpc.OpenChannelRequest |
|
76, // 171: lnrpc.Lightning.OpenChannel:input_type -> lnrpc.OpenChannelRequest |
|
86, // 172: lnrpc.Lightning.FundingStateStep:input_type -> lnrpc.FundingTransitionMsg |
|
27, // 173: lnrpc.Lightning.ChannelAcceptor:input_type -> lnrpc.ChannelAcceptResponse |
|
72, // 174: lnrpc.Lightning.CloseChannel:input_type -> lnrpc.CloseChannelRequest |
|
144, // 175: lnrpc.Lightning.AbandonChannel:input_type -> lnrpc.AbandonChannelRequest |
|
23, // 176: lnrpc.Lightning.SendPayment:input_type -> lnrpc.SendRequest |
|
23, // 177: lnrpc.Lightning.SendPaymentSync:input_type -> lnrpc.SendRequest |
|
25, // 178: lnrpc.Lightning.SendToRoute:input_type -> lnrpc.SendToRouteRequest |
|
25, // 179: lnrpc.Lightning.SendToRouteSync:input_type -> lnrpc.SendToRouteRequest |
|
130, // 180: lnrpc.Lightning.AddInvoice:input_type -> lnrpc.Invoice |
|
135, // 181: lnrpc.Lightning.ListInvoices:input_type -> lnrpc.ListInvoiceRequest |
|
134, // 182: lnrpc.Lightning.LookupInvoice:input_type -> lnrpc.PaymentHash |
|
137, // 183: lnrpc.Lightning.SubscribeInvoices:input_type -> lnrpc.InvoiceSubscription |
|
148, // 184: lnrpc.Lightning.DecodePayReq:input_type -> lnrpc.PayReqString |
|
140, // 185: lnrpc.Lightning.ListPayments:input_type -> lnrpc.ListPaymentsRequest |
|
142, // 186: lnrpc.Lightning.DeleteAllPayments:input_type -> lnrpc.DeleteAllPaymentsRequest |
|
113, // 187: lnrpc.Lightning.DescribeGraph:input_type -> lnrpc.ChannelGraphRequest |
|
115, // 188: lnrpc.Lightning.GetNodeMetrics:input_type -> lnrpc.NodeMetricsRequest |
|
118, // 189: lnrpc.Lightning.GetChanInfo:input_type -> lnrpc.ChanInfoRequest |
|
107, // 190: lnrpc.Lightning.GetNodeInfo:input_type -> lnrpc.NodeInfoRequest |
|
99, // 191: lnrpc.Lightning.QueryRoutes:input_type -> lnrpc.QueryRoutesRequest |
|
119, // 192: lnrpc.Lightning.GetNetworkInfo:input_type -> lnrpc.NetworkInfoRequest |
|
121, // 193: lnrpc.Lightning.StopDaemon:input_type -> lnrpc.StopRequest |
|
123, // 194: lnrpc.Lightning.SubscribeChannelGraph:input_type -> lnrpc.GraphTopologySubscription |
|
146, // 195: lnrpc.Lightning.DebugLevel:input_type -> lnrpc.DebugLevelRequest |
|
151, // 196: lnrpc.Lightning.FeeReport:input_type -> lnrpc.FeeReportRequest |
|
154, // 197: lnrpc.Lightning.UpdateChannelPolicy:input_type -> lnrpc.PolicyUpdateRequest |
|
156, // 198: lnrpc.Lightning.ForwardingHistory:input_type -> lnrpc.ForwardingHistoryRequest |
|
159, // 199: lnrpc.Lightning.ExportChannelBackup:input_type -> lnrpc.ExportChannelBackupRequest |
|
162, // 200: lnrpc.Lightning.ExportAllChannelBackups:input_type -> lnrpc.ChanBackupExportRequest |
|
163, // 201: lnrpc.Lightning.VerifyChanBackup:input_type -> lnrpc.ChanBackupSnapshot |
|
165, // 202: lnrpc.Lightning.RestoreChannelBackups:input_type -> lnrpc.RestoreChanBackupRequest |
|
167, // 203: lnrpc.Lightning.SubscribeChannelBackups:input_type -> lnrpc.ChannelBackupSubscription |
|
170, // 204: lnrpc.Lightning.BakeMacaroon:input_type -> lnrpc.BakeMacaroonRequest |
|
172, // 205: lnrpc.Lightning.ListMacaroonIDs:input_type -> lnrpc.ListMacaroonIDsRequest |
|
174, // 206: lnrpc.Lightning.DeleteMacaroonID:input_type -> lnrpc.DeleteMacaroonIDRequest |
|
177, // 207: lnrpc.Lightning.ListPermissions:input_type -> lnrpc.ListPermissionsRequest |
|
95, // 208: lnrpc.Lightning.WalletBalance:output_type -> lnrpc.WalletBalanceResponse |
|
98, // 209: lnrpc.Lightning.ChannelBalance:output_type -> lnrpc.ChannelBalanceResponse |
|
21, // 210: lnrpc.Lightning.GetTransactions:output_type -> lnrpc.TransactionDetails |
|
32, // 211: lnrpc.Lightning.EstimateFee:output_type -> lnrpc.EstimateFeeResponse |
|
36, // 212: lnrpc.Lightning.SendCoins:output_type -> lnrpc.SendCoinsResponse |
|
38, // 213: lnrpc.Lightning.ListUnspent:output_type -> lnrpc.ListUnspentResponse |
|
19, // 214: lnrpc.Lightning.SubscribeTransactions:output_type -> lnrpc.Transaction |
|
34, // 215: lnrpc.Lightning.SendMany:output_type -> lnrpc.SendManyResponse |
|
40, // 216: lnrpc.Lightning.NewAddress:output_type -> lnrpc.NewAddressResponse |
|
42, // 217: lnrpc.Lightning.SignMessage:output_type -> lnrpc.SignMessageResponse |
|
44, // 218: lnrpc.Lightning.VerifyMessage:output_type -> lnrpc.VerifyMessageResponse |
|
46, // 219: lnrpc.Lightning.ConnectPeer:output_type -> lnrpc.ConnectPeerResponse |
|
48, // 220: lnrpc.Lightning.DisconnectPeer:output_type -> lnrpc.DisconnectPeerResponse |
|
61, // 221: lnrpc.Lightning.ListPeers:output_type -> lnrpc.ListPeersResponse |
|
63, // 222: lnrpc.Lightning.SubscribePeerEvents:output_type -> lnrpc.PeerEvent |
|
65, // 223: lnrpc.Lightning.GetInfo:output_type -> lnrpc.GetInfoResponse |
|
67, // 224: lnrpc.Lightning.GetRecoveryInfo:output_type -> lnrpc.GetRecoveryInfoResponse |
|
90, // 225: lnrpc.Lightning.PendingChannels:output_type -> lnrpc.PendingChannelsResponse |
|
53, // 226: lnrpc.Lightning.ListChannels:output_type -> lnrpc.ListChannelsResponse |
|
92, // 227: lnrpc.Lightning.SubscribeChannelEvents:output_type -> lnrpc.ChannelEventUpdate |
|
57, // 228: lnrpc.Lightning.ClosedChannels:output_type -> lnrpc.ClosedChannelsResponse |
|
28, // 229: lnrpc.Lightning.OpenChannelSync:output_type -> lnrpc.ChannelPoint |
|
77, // 230: lnrpc.Lightning.OpenChannel:output_type -> lnrpc.OpenStatusUpdate |
|
87, // 231: lnrpc.Lightning.FundingStateStep:output_type -> lnrpc.FundingStateStepResp |
|
26, // 232: lnrpc.Lightning.ChannelAcceptor:output_type -> lnrpc.ChannelAcceptRequest |
|
73, // 233: lnrpc.Lightning.CloseChannel:output_type -> lnrpc.CloseStatusUpdate |
|
145, // 234: lnrpc.Lightning.AbandonChannel:output_type -> lnrpc.AbandonChannelResponse |
|
24, // 235: lnrpc.Lightning.SendPayment:output_type -> lnrpc.SendResponse |
|
24, // 236: lnrpc.Lightning.SendPaymentSync:output_type -> lnrpc.SendResponse |
|
24, // 237: lnrpc.Lightning.SendToRoute:output_type -> lnrpc.SendResponse |
|
24, // 238: lnrpc.Lightning.SendToRouteSync:output_type -> lnrpc.SendResponse |
|
133, // 239: lnrpc.Lightning.AddInvoice:output_type -> lnrpc.AddInvoiceResponse |
|
136, // 240: lnrpc.Lightning.ListInvoices:output_type -> lnrpc.ListInvoiceResponse |
|
130, // 241: lnrpc.Lightning.LookupInvoice:output_type -> lnrpc.Invoice |
|
130, // 242: lnrpc.Lightning.SubscribeInvoices:output_type -> lnrpc.Invoice |
|
149, // 243: lnrpc.Lightning.DecodePayReq:output_type -> lnrpc.PayReq |
|
141, // 244: lnrpc.Lightning.ListPayments:output_type -> lnrpc.ListPaymentsResponse |
|
143, // 245: lnrpc.Lightning.DeleteAllPayments:output_type -> lnrpc.DeleteAllPaymentsResponse |
|
114, // 246: lnrpc.Lightning.DescribeGraph:output_type -> lnrpc.ChannelGraph |
|
116, // 247: lnrpc.Lightning.GetNodeMetrics:output_type -> lnrpc.NodeMetricsResponse |
|
112, // 248: lnrpc.Lightning.GetChanInfo:output_type -> lnrpc.ChannelEdge |
|
108, // 249: lnrpc.Lightning.GetNodeInfo:output_type -> lnrpc.NodeInfo |
|
102, // 250: lnrpc.Lightning.QueryRoutes:output_type -> lnrpc.QueryRoutesResponse |
|
120, // 251: lnrpc.Lightning.GetNetworkInfo:output_type -> lnrpc.NetworkInfo |
|
122, // 252: lnrpc.Lightning.StopDaemon:output_type -> lnrpc.StopResponse |
|
124, // 253: lnrpc.Lightning.SubscribeChannelGraph:output_type -> lnrpc.GraphTopologyUpdate |
|
147, // 254: lnrpc.Lightning.DebugLevel:output_type -> lnrpc.DebugLevelResponse |
|
153, // 255: lnrpc.Lightning.FeeReport:output_type -> lnrpc.FeeReportResponse |
|
155, // 256: lnrpc.Lightning.UpdateChannelPolicy:output_type -> lnrpc.PolicyUpdateResponse |
|
158, // 257: lnrpc.Lightning.ForwardingHistory:output_type -> lnrpc.ForwardingHistoryResponse |
|
160, // 258: lnrpc.Lightning.ExportChannelBackup:output_type -> lnrpc.ChannelBackup |
|
163, // 259: lnrpc.Lightning.ExportAllChannelBackups:output_type -> lnrpc.ChanBackupSnapshot |
|
168, // 260: lnrpc.Lightning.VerifyChanBackup:output_type -> lnrpc.VerifyChanBackupResponse |
|
166, // 261: lnrpc.Lightning.RestoreChannelBackups:output_type -> lnrpc.RestoreBackupResponse |
|
163, // 262: lnrpc.Lightning.SubscribeChannelBackups:output_type -> lnrpc.ChanBackupSnapshot |
|
171, // 263: lnrpc.Lightning.BakeMacaroon:output_type -> lnrpc.BakeMacaroonResponse |
|
173, // 264: lnrpc.Lightning.ListMacaroonIDs:output_type -> lnrpc.ListMacaroonIDsResponse |
|
175, // 265: lnrpc.Lightning.DeleteMacaroonID:output_type -> lnrpc.DeleteMacaroonIDResponse |
|
178, // 266: lnrpc.Lightning.ListPermissions:output_type -> lnrpc.ListPermissionsResponse |
|
208, // [208:267] is the sub-list for method output_type |
|
149, // [149:208] is the sub-list for method input_type |
|
149, // [149:149] is the sub-list for extension type_name |
|
149, // [149:149] is the sub-list for extension extendee |
|
0, // [0:149] is the sub-list for field type_name |
|
} |
|
|
|
func init() { file_rpc_proto_init() } |
|
func file_rpc_proto_init() { |
|
if File_rpc_proto != nil { |
|
return |
|
} |
|
if !protoimpl.UnsafeEnabled { |
|
file_rpc_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*Utxo); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*Transaction); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*GetTransactionsRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*TransactionDetails); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*FeeLimit); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*SendRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*SendResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*SendToRouteRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelAcceptRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelAcceptResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelPoint); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*OutPoint); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*LightningAddress); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*EstimateFeeRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*EstimateFeeResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*SendManyRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*SendManyResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*SendCoinsRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*SendCoinsResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ListUnspentRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ListUnspentResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*NewAddressRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*NewAddressResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*SignMessageRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*SignMessageResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*VerifyMessageRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*VerifyMessageResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ConnectPeerRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ConnectPeerResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*DisconnectPeerRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*DisconnectPeerResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*HTLC); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelConstraints); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*Channel); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ListChannelsRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ListChannelsResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelCloseSummary); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*Resolution); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ClosedChannelsRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ClosedChannelsResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*Peer); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*TimestampedError); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ListPeersRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ListPeersResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*PeerEventSubscription); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*PeerEvent); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*GetInfoRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*GetInfoResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*GetRecoveryInfoRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*GetRecoveryInfoResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*Chain); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ConfirmationUpdate); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelOpenUpdate); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelCloseUpdate); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*CloseChannelRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*CloseStatusUpdate); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*PendingUpdate); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ReadyForPsbtFunding); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*OpenChannelRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*OpenStatusUpdate); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*KeyLocator); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*KeyDescriptor); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChanPointShim); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*PsbtShim); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*FundingShim); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*FundingShimCancel); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*FundingPsbtVerify); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*FundingPsbtFinalize); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*FundingTransitionMsg); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*FundingStateStepResp); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*PendingHTLC); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*PendingChannelsRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*PendingChannelsResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelEventSubscription); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelEventUpdate); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*WalletAccountBalance); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*WalletBalanceRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*WalletBalanceResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*Amount); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelBalanceRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelBalanceResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*QueryRoutesRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*NodePair); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*EdgeLocator); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*QueryRoutesResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*Hop); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*MPPRecord); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*AMPRecord); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*Route); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*NodeInfoRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*NodeInfo); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*LightningNode); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*NodeAddress); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*RoutingPolicy); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelEdge); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelGraphRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelGraph); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*NodeMetricsRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*NodeMetricsResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*FloatMetric); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChanInfoRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*NetworkInfoRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*NetworkInfo); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*StopRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*StopResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*GraphTopologySubscription); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*GraphTopologyUpdate); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*NodeUpdate); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelEdgeUpdate); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ClosedChannelUpdate); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*HopHint); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*RouteHint); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*Invoice); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*InvoiceHTLC); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*AMP); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*AddInvoiceResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*PaymentHash); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ListInvoiceRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ListInvoiceResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*InvoiceSubscription); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*Payment); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*HTLCAttempt); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ListPaymentsRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ListPaymentsResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*DeleteAllPaymentsRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*DeleteAllPaymentsResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*AbandonChannelRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*AbandonChannelResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*DebugLevelRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*DebugLevelResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*PayReqString); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*PayReq); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*Feature); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*FeeReportRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelFeeReport); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*FeeReportResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*PolicyUpdateRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*PolicyUpdateResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ForwardingHistoryRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[139].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ForwardingEvent); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ForwardingHistoryResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ExportChannelBackupRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelBackup); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*MultiChanBackup); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChanBackupExportRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChanBackupSnapshot); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[146].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelBackups); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[147].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*RestoreChanBackupRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[148].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*RestoreBackupResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[149].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelBackupSubscription); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[150].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*VerifyChanBackupResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[151].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*MacaroonPermission); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[152].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*BakeMacaroonRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[153].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*BakeMacaroonResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[154].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ListMacaroonIDsRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[155].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ListMacaroonIDsResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[156].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*DeleteMacaroonIDRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[157].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*DeleteMacaroonIDResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[158].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*MacaroonPermissionList); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[159].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ListPermissionsRequest); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[160].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ListPermissionsResponse); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[161].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*Failure); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[162].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*ChannelUpdate); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[163].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*MacaroonId); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[164].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*Op); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[170].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*PendingChannelsResponse_PendingChannel); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[171].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*PendingChannelsResponse_PendingOpenChannel); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[172].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*PendingChannelsResponse_WaitingCloseChannel); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[173].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*PendingChannelsResponse_Commitments); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[174].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*PendingChannelsResponse_ClosedChannel); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
file_rpc_proto_msgTypes[175].Exporter = func(v interface{}, i int) interface{} { |
|
switch v := v.(*PendingChannelsResponse_ForceClosedChannel); i { |
|
case 0: |
|
return &v.state |
|
case 1: |
|
return &v.sizeCache |
|
case 2: |
|
return &v.unknownFields |
|
default: |
|
return nil |
|
} |
|
} |
|
} |
|
file_rpc_proto_msgTypes[4].OneofWrappers = []interface{}{ |
|
(*FeeLimit_Fixed)(nil), |
|
(*FeeLimit_FixedMsat)(nil), |
|
(*FeeLimit_Percent)(nil), |
|
} |
|
file_rpc_proto_msgTypes[10].OneofWrappers = []interface{}{ |
|
(*ChannelPoint_FundingTxidBytes)(nil), |
|
(*ChannelPoint_FundingTxidStr)(nil), |
|
} |
|
file_rpc_proto_msgTypes[55].OneofWrappers = []interface{}{ |
|
(*CloseStatusUpdate_ClosePending)(nil), |
|
(*CloseStatusUpdate_ChanClose)(nil), |
|
} |
|
file_rpc_proto_msgTypes[59].OneofWrappers = []interface{}{ |
|
(*OpenStatusUpdate_ChanPending)(nil), |
|
(*OpenStatusUpdate_ChanOpen)(nil), |
|
(*OpenStatusUpdate_PsbtFund)(nil), |
|
} |
|
file_rpc_proto_msgTypes[64].OneofWrappers = []interface{}{ |
|
(*FundingShim_ChanPointShim)(nil), |
|
(*FundingShim_PsbtShim)(nil), |
|
} |
|
file_rpc_proto_msgTypes[68].OneofWrappers = []interface{}{ |
|
(*FundingTransitionMsg_ShimRegister)(nil), |
|
(*FundingTransitionMsg_ShimCancel)(nil), |
|
(*FundingTransitionMsg_PsbtVerify)(nil), |
|
(*FundingTransitionMsg_PsbtFinalize)(nil), |
|
} |
|
file_rpc_proto_msgTypes[74].OneofWrappers = []interface{}{ |
|
(*ChannelEventUpdate_OpenChannel)(nil), |
|
(*ChannelEventUpdate_ClosedChannel)(nil), |
|
(*ChannelEventUpdate_ActiveChannel)(nil), |
|
(*ChannelEventUpdate_InactiveChannel)(nil), |
|
(*ChannelEventUpdate_PendingOpenChannel)(nil), |
|
} |
|
file_rpc_proto_msgTypes[136].OneofWrappers = []interface{}{ |
|
(*PolicyUpdateRequest_Global)(nil), |
|
(*PolicyUpdateRequest_ChanPoint)(nil), |
|
} |
|
file_rpc_proto_msgTypes[147].OneofWrappers = []interface{}{ |
|
(*RestoreChanBackupRequest_ChanBackups)(nil), |
|
(*RestoreChanBackupRequest_MultiChanBackup)(nil), |
|
} |
|
type x struct{} |
|
out := protoimpl.TypeBuilder{ |
|
File: protoimpl.DescBuilder{ |
|
GoPackagePath: reflect.TypeOf(x{}).PkgPath(), |
|
RawDescriptor: file_rpc_proto_rawDesc, |
|
NumEnums: 18, |
|
NumMessages: 186, |
|
NumExtensions: 0, |
|
NumServices: 1, |
|
}, |
|
GoTypes: file_rpc_proto_goTypes, |
|
DependencyIndexes: file_rpc_proto_depIdxs, |
|
EnumInfos: file_rpc_proto_enumTypes, |
|
MessageInfos: file_rpc_proto_msgTypes, |
|
}.Build() |
|
File_rpc_proto = out.File |
|
file_rpc_proto_rawDesc = nil |
|
file_rpc_proto_goTypes = nil |
|
file_rpc_proto_depIdxs = nil |
|
} |
|
|
|
// Reference imports to suppress errors if they are not otherwise used. |
|
var _ context.Context |
|
var _ grpc.ClientConnInterface |
|
|
|
// This is a compile-time assertion to ensure that this generated file |
|
// is compatible with the grpc package it is being compiled against. |
|
const _ = grpc.SupportPackageIsVersion6 |
|
|
|
// LightningClient is the client API for Lightning service. |
|
// |
|
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#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(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(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(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. |
|
// |
|
//When using REST, the `AddrToAmount` map type can be set by appending |
|
//`&AddrToAmount[<address>]=<amount_to_send>` 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(ctx context.Context, in *SendCoinsRequest, opts ...grpc.CallOption) (*SendCoinsResponse, error) |
|
// lncli: `listunspent` |
|
//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(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(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(ctx context.Context, in *SendManyRequest, opts ...grpc.CallOption) (*SendManyResponse, error) |
|
// lncli: `newaddress` |
|
//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(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(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(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(ctx context.Context, in *DisconnectPeerRequest, opts ...grpc.CallOption) (*DisconnectPeerResponse, error) |
|
// lncli: `listpeers` |
|
//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(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(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. |
|
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(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(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(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(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(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(ctx context.Context, in *OpenChannelRequest, opts ...grpc.CallOption) (Lightning_OpenChannelClient, 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(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(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(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(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. |
|
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(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. |
|
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(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(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(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(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(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(ctx context.Context, in *PayReqString, opts ...grpc.CallOption) (*PayReq, error) |
|
// lncli: `listpayments` |
|
//ListPayments returns a list of all outgoing payments. |
|
ListPayments(ctx context.Context, in *ListPaymentsRequest, opts ...grpc.CallOption) (*ListPaymentsResponse, error) |
|
// |
|
//DeleteAllPayments deletes all outgoing payments from DB. |
|
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(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(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(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(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. |
|
// |
|
//When using REST, the `dest_custom_records` map type can be set by appending |
|
//`&dest_custom_records[<record_number>]=<record_data_base64_url_encoded>` |
|
//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(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(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(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(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(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(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. |
|
// |
|
//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(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(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(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(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(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(ctx context.Context, in *BakeMacaroonRequest, opts ...grpc.CallOption) (*BakeMacaroonResponse, error) |
|
// lncli: `listmacaroonids` |
|
//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(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(ctx context.Context, in *ListPermissionsRequest, opts ...grpc.CallOption) (*ListPermissionsResponse, error) |
|
} |
|
|
|
type lightningClient struct { |
|
cc grpc.ClientConnInterface |
|
} |
|
|
|
func NewLightningClient(cc grpc.ClientConnInterface) LightningClient { |
|
return &lightningClient{cc} |
|
} |
|
|
|
func (c *lightningClient) WalletBalance(ctx context.Context, in *WalletBalanceRequest, opts ...grpc.CallOption) (*WalletBalanceResponse, error) { |
|
out := new(WalletBalanceResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/WalletBalance", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) ChannelBalance(ctx context.Context, in *ChannelBalanceRequest, opts ...grpc.CallOption) (*ChannelBalanceResponse, error) { |
|
out := new(ChannelBalanceResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/ChannelBalance", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) GetTransactions(ctx context.Context, in *GetTransactionsRequest, opts ...grpc.CallOption) (*TransactionDetails, error) { |
|
out := new(TransactionDetails) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/GetTransactions", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) EstimateFee(ctx context.Context, in *EstimateFeeRequest, opts ...grpc.CallOption) (*EstimateFeeResponse, error) { |
|
out := new(EstimateFeeResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/EstimateFee", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) SendCoins(ctx context.Context, in *SendCoinsRequest, opts ...grpc.CallOption) (*SendCoinsResponse, error) { |
|
out := new(SendCoinsResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/SendCoins", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) ListUnspent(ctx context.Context, in *ListUnspentRequest, opts ...grpc.CallOption) (*ListUnspentResponse, error) { |
|
out := new(ListUnspentResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/ListUnspent", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) SubscribeTransactions(ctx context.Context, in *GetTransactionsRequest, opts ...grpc.CallOption) (Lightning_SubscribeTransactionsClient, error) { |
|
stream, err := c.cc.NewStream(ctx, &_Lightning_serviceDesc.Streams[0], "/lnrpc.Lightning/SubscribeTransactions", opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
x := &lightningSubscribeTransactionsClient{stream} |
|
if err := x.ClientStream.SendMsg(in); err != nil { |
|
return nil, err |
|
} |
|
if err := x.ClientStream.CloseSend(); err != nil { |
|
return nil, err |
|
} |
|
return x, nil |
|
} |
|
|
|
type Lightning_SubscribeTransactionsClient interface { |
|
Recv() (*Transaction, error) |
|
grpc.ClientStream |
|
} |
|
|
|
type lightningSubscribeTransactionsClient struct { |
|
grpc.ClientStream |
|
} |
|
|
|
func (x *lightningSubscribeTransactionsClient) Recv() (*Transaction, error) { |
|
m := new(Transaction) |
|
if err := x.ClientStream.RecvMsg(m); err != nil { |
|
return nil, err |
|
} |
|
return m, nil |
|
} |
|
|
|
func (c *lightningClient) SendMany(ctx context.Context, in *SendManyRequest, opts ...grpc.CallOption) (*SendManyResponse, error) { |
|
out := new(SendManyResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/SendMany", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) NewAddress(ctx context.Context, in *NewAddressRequest, opts ...grpc.CallOption) (*NewAddressResponse, error) { |
|
out := new(NewAddressResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/NewAddress", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) SignMessage(ctx context.Context, in *SignMessageRequest, opts ...grpc.CallOption) (*SignMessageResponse, error) { |
|
out := new(SignMessageResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/SignMessage", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) VerifyMessage(ctx context.Context, in *VerifyMessageRequest, opts ...grpc.CallOption) (*VerifyMessageResponse, error) { |
|
out := new(VerifyMessageResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/VerifyMessage", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) ConnectPeer(ctx context.Context, in *ConnectPeerRequest, opts ...grpc.CallOption) (*ConnectPeerResponse, error) { |
|
out := new(ConnectPeerResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/ConnectPeer", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) DisconnectPeer(ctx context.Context, in *DisconnectPeerRequest, opts ...grpc.CallOption) (*DisconnectPeerResponse, error) { |
|
out := new(DisconnectPeerResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/DisconnectPeer", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) ListPeers(ctx context.Context, in *ListPeersRequest, opts ...grpc.CallOption) (*ListPeersResponse, error) { |
|
out := new(ListPeersResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/ListPeers", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) SubscribePeerEvents(ctx context.Context, in *PeerEventSubscription, opts ...grpc.CallOption) (Lightning_SubscribePeerEventsClient, error) { |
|
stream, err := c.cc.NewStream(ctx, &_Lightning_serviceDesc.Streams[1], "/lnrpc.Lightning/SubscribePeerEvents", opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
x := &lightningSubscribePeerEventsClient{stream} |
|
if err := x.ClientStream.SendMsg(in); err != nil { |
|
return nil, err |
|
} |
|
if err := x.ClientStream.CloseSend(); err != nil { |
|
return nil, err |
|
} |
|
return x, nil |
|
} |
|
|
|
type Lightning_SubscribePeerEventsClient interface { |
|
Recv() (*PeerEvent, error) |
|
grpc.ClientStream |
|
} |
|
|
|
type lightningSubscribePeerEventsClient struct { |
|
grpc.ClientStream |
|
} |
|
|
|
func (x *lightningSubscribePeerEventsClient) Recv() (*PeerEvent, error) { |
|
m := new(PeerEvent) |
|
if err := x.ClientStream.RecvMsg(m); err != nil { |
|
return nil, err |
|
} |
|
return m, nil |
|
} |
|
|
|
func (c *lightningClient) GetInfo(ctx context.Context, in *GetInfoRequest, opts ...grpc.CallOption) (*GetInfoResponse, error) { |
|
out := new(GetInfoResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/GetInfo", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) GetRecoveryInfo(ctx context.Context, in *GetRecoveryInfoRequest, opts ...grpc.CallOption) (*GetRecoveryInfoResponse, error) { |
|
out := new(GetRecoveryInfoResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/GetRecoveryInfo", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) PendingChannels(ctx context.Context, in *PendingChannelsRequest, opts ...grpc.CallOption) (*PendingChannelsResponse, error) { |
|
out := new(PendingChannelsResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/PendingChannels", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) ListChannels(ctx context.Context, in *ListChannelsRequest, opts ...grpc.CallOption) (*ListChannelsResponse, error) { |
|
out := new(ListChannelsResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/ListChannels", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) SubscribeChannelEvents(ctx context.Context, in *ChannelEventSubscription, opts ...grpc.CallOption) (Lightning_SubscribeChannelEventsClient, error) { |
|
stream, err := c.cc.NewStream(ctx, &_Lightning_serviceDesc.Streams[2], "/lnrpc.Lightning/SubscribeChannelEvents", opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
x := &lightningSubscribeChannelEventsClient{stream} |
|
if err := x.ClientStream.SendMsg(in); err != nil { |
|
return nil, err |
|
} |
|
if err := x.ClientStream.CloseSend(); err != nil { |
|
return nil, err |
|
} |
|
return x, nil |
|
} |
|
|
|
type Lightning_SubscribeChannelEventsClient interface { |
|
Recv() (*ChannelEventUpdate, error) |
|
grpc.ClientStream |
|
} |
|
|
|
type lightningSubscribeChannelEventsClient struct { |
|
grpc.ClientStream |
|
} |
|
|
|
func (x *lightningSubscribeChannelEventsClient) Recv() (*ChannelEventUpdate, error) { |
|
m := new(ChannelEventUpdate) |
|
if err := x.ClientStream.RecvMsg(m); err != nil { |
|
return nil, err |
|
} |
|
return m, nil |
|
} |
|
|
|
func (c *lightningClient) ClosedChannels(ctx context.Context, in *ClosedChannelsRequest, opts ...grpc.CallOption) (*ClosedChannelsResponse, error) { |
|
out := new(ClosedChannelsResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/ClosedChannels", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) OpenChannelSync(ctx context.Context, in *OpenChannelRequest, opts ...grpc.CallOption) (*ChannelPoint, error) { |
|
out := new(ChannelPoint) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/OpenChannelSync", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) OpenChannel(ctx context.Context, in *OpenChannelRequest, opts ...grpc.CallOption) (Lightning_OpenChannelClient, error) { |
|
stream, err := c.cc.NewStream(ctx, &_Lightning_serviceDesc.Streams[3], "/lnrpc.Lightning/OpenChannel", opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
x := &lightningOpenChannelClient{stream} |
|
if err := x.ClientStream.SendMsg(in); err != nil { |
|
return nil, err |
|
} |
|
if err := x.ClientStream.CloseSend(); err != nil { |
|
return nil, err |
|
} |
|
return x, nil |
|
} |
|
|
|
type Lightning_OpenChannelClient interface { |
|
Recv() (*OpenStatusUpdate, error) |
|
grpc.ClientStream |
|
} |
|
|
|
type lightningOpenChannelClient struct { |
|
grpc.ClientStream |
|
} |
|
|
|
func (x *lightningOpenChannelClient) Recv() (*OpenStatusUpdate, error) { |
|
m := new(OpenStatusUpdate) |
|
if err := x.ClientStream.RecvMsg(m); err != nil { |
|
return nil, err |
|
} |
|
return m, nil |
|
} |
|
|
|
func (c *lightningClient) FundingStateStep(ctx context.Context, in *FundingTransitionMsg, opts ...grpc.CallOption) (*FundingStateStepResp, error) { |
|
out := new(FundingStateStepResp) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/FundingStateStep", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) ChannelAcceptor(ctx context.Context, opts ...grpc.CallOption) (Lightning_ChannelAcceptorClient, error) { |
|
stream, err := c.cc.NewStream(ctx, &_Lightning_serviceDesc.Streams[4], "/lnrpc.Lightning/ChannelAcceptor", opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
x := &lightningChannelAcceptorClient{stream} |
|
return x, nil |
|
} |
|
|
|
type Lightning_ChannelAcceptorClient interface { |
|
Send(*ChannelAcceptResponse) error |
|
Recv() (*ChannelAcceptRequest, error) |
|
grpc.ClientStream |
|
} |
|
|
|
type lightningChannelAcceptorClient struct { |
|
grpc.ClientStream |
|
} |
|
|
|
func (x *lightningChannelAcceptorClient) Send(m *ChannelAcceptResponse) error { |
|
return x.ClientStream.SendMsg(m) |
|
} |
|
|
|
func (x *lightningChannelAcceptorClient) Recv() (*ChannelAcceptRequest, error) { |
|
m := new(ChannelAcceptRequest) |
|
if err := x.ClientStream.RecvMsg(m); err != nil { |
|
return nil, err |
|
} |
|
return m, nil |
|
} |
|
|
|
func (c *lightningClient) CloseChannel(ctx context.Context, in *CloseChannelRequest, opts ...grpc.CallOption) (Lightning_CloseChannelClient, error) { |
|
stream, err := c.cc.NewStream(ctx, &_Lightning_serviceDesc.Streams[5], "/lnrpc.Lightning/CloseChannel", opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
x := &lightningCloseChannelClient{stream} |
|
if err := x.ClientStream.SendMsg(in); err != nil { |
|
return nil, err |
|
} |
|
if err := x.ClientStream.CloseSend(); err != nil { |
|
return nil, err |
|
} |
|
return x, nil |
|
} |
|
|
|
type Lightning_CloseChannelClient interface { |
|
Recv() (*CloseStatusUpdate, error) |
|
grpc.ClientStream |
|
} |
|
|
|
type lightningCloseChannelClient struct { |
|
grpc.ClientStream |
|
} |
|
|
|
func (x *lightningCloseChannelClient) Recv() (*CloseStatusUpdate, error) { |
|
m := new(CloseStatusUpdate) |
|
if err := x.ClientStream.RecvMsg(m); err != nil { |
|
return nil, err |
|
} |
|
return m, nil |
|
} |
|
|
|
func (c *lightningClient) AbandonChannel(ctx context.Context, in *AbandonChannelRequest, opts ...grpc.CallOption) (*AbandonChannelResponse, error) { |
|
out := new(AbandonChannelResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/AbandonChannel", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (c *lightningClient) SendPayment(ctx context.Context, opts ...grpc.CallOption) (Lightning_SendPaymentClient, error) { |
|
stream, err := c.cc.NewStream(ctx, &_Lightning_serviceDesc.Streams[6], "/lnrpc.Lightning/SendPayment", opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
x := &lightningSendPaymentClient{stream} |
|
return x, nil |
|
} |
|
|
|
type Lightning_SendPaymentClient interface { |
|
Send(*SendRequest) error |
|
Recv() (*SendResponse, error) |
|
grpc.ClientStream |
|
} |
|
|
|
type lightningSendPaymentClient struct { |
|
grpc.ClientStream |
|
} |
|
|
|
func (x *lightningSendPaymentClient) Send(m *SendRequest) error { |
|
return x.ClientStream.SendMsg(m) |
|
} |
|
|
|
func (x *lightningSendPaymentClient) Recv() (*SendResponse, error) { |
|
m := new(SendResponse) |
|
if err := x.ClientStream.RecvMsg(m); err != nil { |
|
return nil, err |
|
} |
|
return m, nil |
|
} |
|
|
|
func (c *lightningClient) SendPaymentSync(ctx context.Context, in *SendRequest, opts ...grpc.CallOption) (*SendResponse, error) { |
|
out := new(SendResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/SendPaymentSync", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
// Deprecated: Do not use. |
|
func (c *lightningClient) SendToRoute(ctx context.Context, opts ...grpc.CallOption) (Lightning_SendToRouteClient, error) { |
|
stream, err := c.cc.NewStream(ctx, &_Lightning_serviceDesc.Streams[7], "/lnrpc.Lightning/SendToRoute", opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
x := &lightningSendToRouteClient{stream} |
|
return x, nil |
|
} |
|
|
|
type Lightning_SendToRouteClient interface { |
|
Send(*SendToRouteRequest) error |
|
Recv() (*SendResponse, error) |
|
grpc.ClientStream |
|
} |
|
|
|
type lightningSendToRouteClient struct { |
|
grpc.ClientStream |
|
} |
|
|
|
func (x *lightningSendToRouteClient) Send(m *SendToRouteRequest) error { |
|
return x.ClientStream.SendMsg(m) |
|
} |
|
|
|
func (x *lightningSendToRouteClient) Recv() (*SendResponse, error) { |
|
m := new(SendResponse) |
|
if err := x.ClientStream.RecvMsg(m); err != nil { |
|
return nil, err |
|
} |
|
return m, nil |
|
} |
|
|
|
func (c *lightningClient) SendToRouteSync(ctx context.Context, in *SendToRouteRequest, opts ...grpc.CallOption) (*SendResponse, error) { |
|
out := new(SendResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/SendToRouteSync", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) AddInvoice(ctx context.Context, in *Invoice, opts ...grpc.CallOption) (*AddInvoiceResponse, error) { |
|
out := new(AddInvoiceResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/AddInvoice", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) ListInvoices(ctx context.Context, in *ListInvoiceRequest, opts ...grpc.CallOption) (*ListInvoiceResponse, error) { |
|
out := new(ListInvoiceResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/ListInvoices", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) LookupInvoice(ctx context.Context, in *PaymentHash, opts ...grpc.CallOption) (*Invoice, error) { |
|
out := new(Invoice) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/LookupInvoice", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) SubscribeInvoices(ctx context.Context, in *InvoiceSubscription, opts ...grpc.CallOption) (Lightning_SubscribeInvoicesClient, error) { |
|
stream, err := c.cc.NewStream(ctx, &_Lightning_serviceDesc.Streams[8], "/lnrpc.Lightning/SubscribeInvoices", opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
x := &lightningSubscribeInvoicesClient{stream} |
|
if err := x.ClientStream.SendMsg(in); err != nil { |
|
return nil, err |
|
} |
|
if err := x.ClientStream.CloseSend(); err != nil { |
|
return nil, err |
|
} |
|
return x, nil |
|
} |
|
|
|
type Lightning_SubscribeInvoicesClient interface { |
|
Recv() (*Invoice, error) |
|
grpc.ClientStream |
|
} |
|
|
|
type lightningSubscribeInvoicesClient struct { |
|
grpc.ClientStream |
|
} |
|
|
|
func (x *lightningSubscribeInvoicesClient) Recv() (*Invoice, error) { |
|
m := new(Invoice) |
|
if err := x.ClientStream.RecvMsg(m); err != nil { |
|
return nil, err |
|
} |
|
return m, nil |
|
} |
|
|
|
func (c *lightningClient) DecodePayReq(ctx context.Context, in *PayReqString, opts ...grpc.CallOption) (*PayReq, error) { |
|
out := new(PayReq) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/DecodePayReq", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) ListPayments(ctx context.Context, in *ListPaymentsRequest, opts ...grpc.CallOption) (*ListPaymentsResponse, error) { |
|
out := new(ListPaymentsResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/ListPayments", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) DeleteAllPayments(ctx context.Context, in *DeleteAllPaymentsRequest, opts ...grpc.CallOption) (*DeleteAllPaymentsResponse, error) { |
|
out := new(DeleteAllPaymentsResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/DeleteAllPayments", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) DescribeGraph(ctx context.Context, in *ChannelGraphRequest, opts ...grpc.CallOption) (*ChannelGraph, error) { |
|
out := new(ChannelGraph) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/DescribeGraph", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) GetNodeMetrics(ctx context.Context, in *NodeMetricsRequest, opts ...grpc.CallOption) (*NodeMetricsResponse, error) { |
|
out := new(NodeMetricsResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/GetNodeMetrics", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) GetChanInfo(ctx context.Context, in *ChanInfoRequest, opts ...grpc.CallOption) (*ChannelEdge, error) { |
|
out := new(ChannelEdge) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/GetChanInfo", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) GetNodeInfo(ctx context.Context, in *NodeInfoRequest, opts ...grpc.CallOption) (*NodeInfo, error) { |
|
out := new(NodeInfo) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/GetNodeInfo", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) QueryRoutes(ctx context.Context, in *QueryRoutesRequest, opts ...grpc.CallOption) (*QueryRoutesResponse, error) { |
|
out := new(QueryRoutesResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/QueryRoutes", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) GetNetworkInfo(ctx context.Context, in *NetworkInfoRequest, opts ...grpc.CallOption) (*NetworkInfo, error) { |
|
out := new(NetworkInfo) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/GetNetworkInfo", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) StopDaemon(ctx context.Context, in *StopRequest, opts ...grpc.CallOption) (*StopResponse, error) { |
|
out := new(StopResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/StopDaemon", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) SubscribeChannelGraph(ctx context.Context, in *GraphTopologySubscription, opts ...grpc.CallOption) (Lightning_SubscribeChannelGraphClient, error) { |
|
stream, err := c.cc.NewStream(ctx, &_Lightning_serviceDesc.Streams[9], "/lnrpc.Lightning/SubscribeChannelGraph", opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
x := &lightningSubscribeChannelGraphClient{stream} |
|
if err := x.ClientStream.SendMsg(in); err != nil { |
|
return nil, err |
|
} |
|
if err := x.ClientStream.CloseSend(); err != nil { |
|
return nil, err |
|
} |
|
return x, nil |
|
} |
|
|
|
type Lightning_SubscribeChannelGraphClient interface { |
|
Recv() (*GraphTopologyUpdate, error) |
|
grpc.ClientStream |
|
} |
|
|
|
type lightningSubscribeChannelGraphClient struct { |
|
grpc.ClientStream |
|
} |
|
|
|
func (x *lightningSubscribeChannelGraphClient) Recv() (*GraphTopologyUpdate, error) { |
|
m := new(GraphTopologyUpdate) |
|
if err := x.ClientStream.RecvMsg(m); err != nil { |
|
return nil, err |
|
} |
|
return m, nil |
|
} |
|
|
|
func (c *lightningClient) DebugLevel(ctx context.Context, in *DebugLevelRequest, opts ...grpc.CallOption) (*DebugLevelResponse, error) { |
|
out := new(DebugLevelResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/DebugLevel", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) FeeReport(ctx context.Context, in *FeeReportRequest, opts ...grpc.CallOption) (*FeeReportResponse, error) { |
|
out := new(FeeReportResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/FeeReport", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) UpdateChannelPolicy(ctx context.Context, in *PolicyUpdateRequest, opts ...grpc.CallOption) (*PolicyUpdateResponse, error) { |
|
out := new(PolicyUpdateResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/UpdateChannelPolicy", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) ForwardingHistory(ctx context.Context, in *ForwardingHistoryRequest, opts ...grpc.CallOption) (*ForwardingHistoryResponse, error) { |
|
out := new(ForwardingHistoryResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/ForwardingHistory", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) ExportChannelBackup(ctx context.Context, in *ExportChannelBackupRequest, opts ...grpc.CallOption) (*ChannelBackup, error) { |
|
out := new(ChannelBackup) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/ExportChannelBackup", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) ExportAllChannelBackups(ctx context.Context, in *ChanBackupExportRequest, opts ...grpc.CallOption) (*ChanBackupSnapshot, error) { |
|
out := new(ChanBackupSnapshot) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/ExportAllChannelBackups", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) VerifyChanBackup(ctx context.Context, in *ChanBackupSnapshot, opts ...grpc.CallOption) (*VerifyChanBackupResponse, error) { |
|
out := new(VerifyChanBackupResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/VerifyChanBackup", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) RestoreChannelBackups(ctx context.Context, in *RestoreChanBackupRequest, opts ...grpc.CallOption) (*RestoreBackupResponse, error) { |
|
out := new(RestoreBackupResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/RestoreChannelBackups", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) SubscribeChannelBackups(ctx context.Context, in *ChannelBackupSubscription, opts ...grpc.CallOption) (Lightning_SubscribeChannelBackupsClient, error) { |
|
stream, err := c.cc.NewStream(ctx, &_Lightning_serviceDesc.Streams[10], "/lnrpc.Lightning/SubscribeChannelBackups", opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
x := &lightningSubscribeChannelBackupsClient{stream} |
|
if err := x.ClientStream.SendMsg(in); err != nil { |
|
return nil, err |
|
} |
|
if err := x.ClientStream.CloseSend(); err != nil { |
|
return nil, err |
|
} |
|
return x, nil |
|
} |
|
|
|
type Lightning_SubscribeChannelBackupsClient interface { |
|
Recv() (*ChanBackupSnapshot, error) |
|
grpc.ClientStream |
|
} |
|
|
|
type lightningSubscribeChannelBackupsClient struct { |
|
grpc.ClientStream |
|
} |
|
|
|
func (x *lightningSubscribeChannelBackupsClient) Recv() (*ChanBackupSnapshot, error) { |
|
m := new(ChanBackupSnapshot) |
|
if err := x.ClientStream.RecvMsg(m); err != nil { |
|
return nil, err |
|
} |
|
return m, nil |
|
} |
|
|
|
func (c *lightningClient) BakeMacaroon(ctx context.Context, in *BakeMacaroonRequest, opts ...grpc.CallOption) (*BakeMacaroonResponse, error) { |
|
out := new(BakeMacaroonResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/BakeMacaroon", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) ListMacaroonIDs(ctx context.Context, in *ListMacaroonIDsRequest, opts ...grpc.CallOption) (*ListMacaroonIDsResponse, error) { |
|
out := new(ListMacaroonIDsResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/ListMacaroonIDs", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) DeleteMacaroonID(ctx context.Context, in *DeleteMacaroonIDRequest, opts ...grpc.CallOption) (*DeleteMacaroonIDResponse, error) { |
|
out := new(DeleteMacaroonIDResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/DeleteMacaroonID", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
func (c *lightningClient) ListPermissions(ctx context.Context, in *ListPermissionsRequest, opts ...grpc.CallOption) (*ListPermissionsResponse, error) { |
|
out := new(ListPermissionsResponse) |
|
err := c.cc.Invoke(ctx, "/lnrpc.Lightning/ListPermissions", in, out, opts...) |
|
if err != nil { |
|
return nil, err |
|
} |
|
return out, nil |
|
} |
|
|
|
// LightningServer is the server API for Lightning service. |
|
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(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(context.Context, *ChannelBalanceRequest) (*ChannelBalanceResponse, error) |
|
// lncli: `listchaintxns` |
|
//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. |
|
// |
|
//When using REST, the `AddrToAmount` map type can be set by appending |
|
//`&AddrToAmount[<address>]=<amount_to_send>` 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(context.Context, *SendCoinsRequest) (*SendCoinsResponse, error) |
|
// lncli: `listunspent` |
|
//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(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(*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(context.Context, *SendManyRequest) (*SendManyResponse, error) |
|
// lncli: `newaddress` |
|
//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(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(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(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(context.Context, *DisconnectPeerRequest) (*DisconnectPeerResponse, error) |
|
// lncli: `listpeers` |
|
//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(*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(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. |
|
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(context.Context, *PendingChannelsRequest) (*PendingChannelsResponse, error) |
|
// lncli: `listchannels` |
|
//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(*ChannelEventSubscription, Lightning_SubscribeChannelEventsServer) error |
|
// lncli: `closedchannels` |
|
//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(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(*OpenChannelRequest, Lightning_OpenChannelServer) 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(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(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(*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(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. |
|
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(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. |
|
SendToRoute(Lightning_SendToRouteServer) error |
|
// |
|
//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(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(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(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(*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(context.Context, *PayReqString) (*PayReq, error) |
|
// lncli: `listpayments` |
|
//ListPayments returns a list of all outgoing payments. |
|
ListPayments(context.Context, *ListPaymentsRequest) (*ListPaymentsResponse, error) |
|
// |
|
//DeleteAllPayments deletes all outgoing payments from DB. |
|
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(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(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(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(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. |
|
// |
|
//When using REST, the `dest_custom_records` map type can be set by appending |
|
//`&dest_custom_records[<record_number>]=<record_data_base64_url_encoded>` |
|
//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(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(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(*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(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(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(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. |
|
// |
|
//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(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(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(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(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(*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(context.Context, *BakeMacaroonRequest) (*BakeMacaroonResponse, error) |
|
// lncli: `listmacaroonids` |
|
//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(context.Context, *DeleteMacaroonIDRequest) (*DeleteMacaroonIDResponse, error) |
|
// lncli: `listpermissions` |
|
//ListPermissions lists all RPC method URIs and their required macaroon |
|
//permissions to access them. |
|
ListPermissions(context.Context, *ListPermissionsRequest) (*ListPermissionsResponse, error) |
|
} |
|
|
|
// UnimplementedLightningServer can be embedded to have forward compatible implementations. |
|
type UnimplementedLightningServer struct { |
|
} |
|
|
|
func (*UnimplementedLightningServer) WalletBalance(context.Context, *WalletBalanceRequest) (*WalletBalanceResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method WalletBalance not implemented") |
|
} |
|
func (*UnimplementedLightningServer) ChannelBalance(context.Context, *ChannelBalanceRequest) (*ChannelBalanceResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method ChannelBalance not implemented") |
|
} |
|
func (*UnimplementedLightningServer) GetTransactions(context.Context, *GetTransactionsRequest) (*TransactionDetails, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method GetTransactions not implemented") |
|
} |
|
func (*UnimplementedLightningServer) EstimateFee(context.Context, *EstimateFeeRequest) (*EstimateFeeResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method EstimateFee not implemented") |
|
} |
|
func (*UnimplementedLightningServer) SendCoins(context.Context, *SendCoinsRequest) (*SendCoinsResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method SendCoins not implemented") |
|
} |
|
func (*UnimplementedLightningServer) ListUnspent(context.Context, *ListUnspentRequest) (*ListUnspentResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method ListUnspent not implemented") |
|
} |
|
func (*UnimplementedLightningServer) SubscribeTransactions(*GetTransactionsRequest, Lightning_SubscribeTransactionsServer) error { |
|
return status.Errorf(codes.Unimplemented, "method SubscribeTransactions not implemented") |
|
} |
|
func (*UnimplementedLightningServer) SendMany(context.Context, *SendManyRequest) (*SendManyResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method SendMany not implemented") |
|
} |
|
func (*UnimplementedLightningServer) NewAddress(context.Context, *NewAddressRequest) (*NewAddressResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method NewAddress not implemented") |
|
} |
|
func (*UnimplementedLightningServer) SignMessage(context.Context, *SignMessageRequest) (*SignMessageResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method SignMessage not implemented") |
|
} |
|
func (*UnimplementedLightningServer) VerifyMessage(context.Context, *VerifyMessageRequest) (*VerifyMessageResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method VerifyMessage not implemented") |
|
} |
|
func (*UnimplementedLightningServer) ConnectPeer(context.Context, *ConnectPeerRequest) (*ConnectPeerResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method ConnectPeer not implemented") |
|
} |
|
func (*UnimplementedLightningServer) DisconnectPeer(context.Context, *DisconnectPeerRequest) (*DisconnectPeerResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method DisconnectPeer not implemented") |
|
} |
|
func (*UnimplementedLightningServer) ListPeers(context.Context, *ListPeersRequest) (*ListPeersResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method ListPeers not implemented") |
|
} |
|
func (*UnimplementedLightningServer) SubscribePeerEvents(*PeerEventSubscription, Lightning_SubscribePeerEventsServer) error { |
|
return status.Errorf(codes.Unimplemented, "method SubscribePeerEvents not implemented") |
|
} |
|
func (*UnimplementedLightningServer) GetInfo(context.Context, *GetInfoRequest) (*GetInfoResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method GetInfo not implemented") |
|
} |
|
func (*UnimplementedLightningServer) GetRecoveryInfo(context.Context, *GetRecoveryInfoRequest) (*GetRecoveryInfoResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method GetRecoveryInfo not implemented") |
|
} |
|
func (*UnimplementedLightningServer) PendingChannels(context.Context, *PendingChannelsRequest) (*PendingChannelsResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method PendingChannels not implemented") |
|
} |
|
func (*UnimplementedLightningServer) ListChannels(context.Context, *ListChannelsRequest) (*ListChannelsResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method ListChannels not implemented") |
|
} |
|
func (*UnimplementedLightningServer) SubscribeChannelEvents(*ChannelEventSubscription, Lightning_SubscribeChannelEventsServer) error { |
|
return status.Errorf(codes.Unimplemented, "method SubscribeChannelEvents not implemented") |
|
} |
|
func (*UnimplementedLightningServer) ClosedChannels(context.Context, *ClosedChannelsRequest) (*ClosedChannelsResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method ClosedChannels not implemented") |
|
} |
|
func (*UnimplementedLightningServer) OpenChannelSync(context.Context, *OpenChannelRequest) (*ChannelPoint, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method OpenChannelSync not implemented") |
|
} |
|
func (*UnimplementedLightningServer) OpenChannel(*OpenChannelRequest, Lightning_OpenChannelServer) error { |
|
return status.Errorf(codes.Unimplemented, "method OpenChannel not implemented") |
|
} |
|
func (*UnimplementedLightningServer) FundingStateStep(context.Context, *FundingTransitionMsg) (*FundingStateStepResp, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method FundingStateStep not implemented") |
|
} |
|
func (*UnimplementedLightningServer) ChannelAcceptor(Lightning_ChannelAcceptorServer) error { |
|
return status.Errorf(codes.Unimplemented, "method ChannelAcceptor not implemented") |
|
} |
|
func (*UnimplementedLightningServer) CloseChannel(*CloseChannelRequest, Lightning_CloseChannelServer) error { |
|
return status.Errorf(codes.Unimplemented, "method CloseChannel not implemented") |
|
} |
|
func (*UnimplementedLightningServer) AbandonChannel(context.Context, *AbandonChannelRequest) (*AbandonChannelResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method AbandonChannel not implemented") |
|
} |
|
func (*UnimplementedLightningServer) SendPayment(Lightning_SendPaymentServer) error { |
|
return status.Errorf(codes.Unimplemented, "method SendPayment not implemented") |
|
} |
|
func (*UnimplementedLightningServer) SendPaymentSync(context.Context, *SendRequest) (*SendResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method SendPaymentSync not implemented") |
|
} |
|
func (*UnimplementedLightningServer) SendToRoute(Lightning_SendToRouteServer) error { |
|
return status.Errorf(codes.Unimplemented, "method SendToRoute not implemented") |
|
} |
|
func (*UnimplementedLightningServer) SendToRouteSync(context.Context, *SendToRouteRequest) (*SendResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method SendToRouteSync not implemented") |
|
} |
|
func (*UnimplementedLightningServer) AddInvoice(context.Context, *Invoice) (*AddInvoiceResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method AddInvoice not implemented") |
|
} |
|
func (*UnimplementedLightningServer) ListInvoices(context.Context, *ListInvoiceRequest) (*ListInvoiceResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method ListInvoices not implemented") |
|
} |
|
func (*UnimplementedLightningServer) LookupInvoice(context.Context, *PaymentHash) (*Invoice, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method LookupInvoice not implemented") |
|
} |
|
func (*UnimplementedLightningServer) SubscribeInvoices(*InvoiceSubscription, Lightning_SubscribeInvoicesServer) error { |
|
return status.Errorf(codes.Unimplemented, "method SubscribeInvoices not implemented") |
|
} |
|
func (*UnimplementedLightningServer) DecodePayReq(context.Context, *PayReqString) (*PayReq, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method DecodePayReq not implemented") |
|
} |
|
func (*UnimplementedLightningServer) ListPayments(context.Context, *ListPaymentsRequest) (*ListPaymentsResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method ListPayments not implemented") |
|
} |
|
func (*UnimplementedLightningServer) DeleteAllPayments(context.Context, *DeleteAllPaymentsRequest) (*DeleteAllPaymentsResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method DeleteAllPayments not implemented") |
|
} |
|
func (*UnimplementedLightningServer) DescribeGraph(context.Context, *ChannelGraphRequest) (*ChannelGraph, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method DescribeGraph not implemented") |
|
} |
|
func (*UnimplementedLightningServer) GetNodeMetrics(context.Context, *NodeMetricsRequest) (*NodeMetricsResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method GetNodeMetrics not implemented") |
|
} |
|
func (*UnimplementedLightningServer) GetChanInfo(context.Context, *ChanInfoRequest) (*ChannelEdge, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method GetChanInfo not implemented") |
|
} |
|
func (*UnimplementedLightningServer) GetNodeInfo(context.Context, *NodeInfoRequest) (*NodeInfo, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method GetNodeInfo not implemented") |
|
} |
|
func (*UnimplementedLightningServer) QueryRoutes(context.Context, *QueryRoutesRequest) (*QueryRoutesResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method QueryRoutes not implemented") |
|
} |
|
func (*UnimplementedLightningServer) GetNetworkInfo(context.Context, *NetworkInfoRequest) (*NetworkInfo, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method GetNetworkInfo not implemented") |
|
} |
|
func (*UnimplementedLightningServer) StopDaemon(context.Context, *StopRequest) (*StopResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method StopDaemon not implemented") |
|
} |
|
func (*UnimplementedLightningServer) SubscribeChannelGraph(*GraphTopologySubscription, Lightning_SubscribeChannelGraphServer) error { |
|
return status.Errorf(codes.Unimplemented, "method SubscribeChannelGraph not implemented") |
|
} |
|
func (*UnimplementedLightningServer) DebugLevel(context.Context, *DebugLevelRequest) (*DebugLevelResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method DebugLevel not implemented") |
|
} |
|
func (*UnimplementedLightningServer) FeeReport(context.Context, *FeeReportRequest) (*FeeReportResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method FeeReport not implemented") |
|
} |
|
func (*UnimplementedLightningServer) UpdateChannelPolicy(context.Context, *PolicyUpdateRequest) (*PolicyUpdateResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method UpdateChannelPolicy not implemented") |
|
} |
|
func (*UnimplementedLightningServer) ForwardingHistory(context.Context, *ForwardingHistoryRequest) (*ForwardingHistoryResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method ForwardingHistory not implemented") |
|
} |
|
func (*UnimplementedLightningServer) ExportChannelBackup(context.Context, *ExportChannelBackupRequest) (*ChannelBackup, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method ExportChannelBackup not implemented") |
|
} |
|
func (*UnimplementedLightningServer) ExportAllChannelBackups(context.Context, *ChanBackupExportRequest) (*ChanBackupSnapshot, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method ExportAllChannelBackups not implemented") |
|
} |
|
func (*UnimplementedLightningServer) VerifyChanBackup(context.Context, *ChanBackupSnapshot) (*VerifyChanBackupResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method VerifyChanBackup not implemented") |
|
} |
|
func (*UnimplementedLightningServer) RestoreChannelBackups(context.Context, *RestoreChanBackupRequest) (*RestoreBackupResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method RestoreChannelBackups not implemented") |
|
} |
|
func (*UnimplementedLightningServer) SubscribeChannelBackups(*ChannelBackupSubscription, Lightning_SubscribeChannelBackupsServer) error { |
|
return status.Errorf(codes.Unimplemented, "method SubscribeChannelBackups not implemented") |
|
} |
|
func (*UnimplementedLightningServer) BakeMacaroon(context.Context, *BakeMacaroonRequest) (*BakeMacaroonResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method BakeMacaroon not implemented") |
|
} |
|
func (*UnimplementedLightningServer) ListMacaroonIDs(context.Context, *ListMacaroonIDsRequest) (*ListMacaroonIDsResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method ListMacaroonIDs not implemented") |
|
} |
|
func (*UnimplementedLightningServer) DeleteMacaroonID(context.Context, *DeleteMacaroonIDRequest) (*DeleteMacaroonIDResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method DeleteMacaroonID not implemented") |
|
} |
|
func (*UnimplementedLightningServer) ListPermissions(context.Context, *ListPermissionsRequest) (*ListPermissionsResponse, error) { |
|
return nil, status.Errorf(codes.Unimplemented, "method ListPermissions not implemented") |
|
} |
|
|
|
func RegisterLightningServer(s *grpc.Server, srv LightningServer) { |
|
s.RegisterService(&_Lightning_serviceDesc, srv) |
|
} |
|
|
|
func _Lightning_WalletBalance_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(WalletBalanceRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).WalletBalance(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/WalletBalance", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).WalletBalance(ctx, req.(*WalletBalanceRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_ChannelBalance_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(ChannelBalanceRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).ChannelBalance(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/ChannelBalance", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).ChannelBalance(ctx, req.(*ChannelBalanceRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_GetTransactions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(GetTransactionsRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).GetTransactions(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/GetTransactions", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).GetTransactions(ctx, req.(*GetTransactionsRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_EstimateFee_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(EstimateFeeRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).EstimateFee(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/EstimateFee", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).EstimateFee(ctx, req.(*EstimateFeeRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_SendCoins_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(SendCoinsRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).SendCoins(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/SendCoins", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).SendCoins(ctx, req.(*SendCoinsRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_ListUnspent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(ListUnspentRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).ListUnspent(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/ListUnspent", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).ListUnspent(ctx, req.(*ListUnspentRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_SubscribeTransactions_Handler(srv interface{}, stream grpc.ServerStream) error { |
|
m := new(GetTransactionsRequest) |
|
if err := stream.RecvMsg(m); err != nil { |
|
return err |
|
} |
|
return srv.(LightningServer).SubscribeTransactions(m, &lightningSubscribeTransactionsServer{stream}) |
|
} |
|
|
|
type Lightning_SubscribeTransactionsServer interface { |
|
Send(*Transaction) error |
|
grpc.ServerStream |
|
} |
|
|
|
type lightningSubscribeTransactionsServer struct { |
|
grpc.ServerStream |
|
} |
|
|
|
func (x *lightningSubscribeTransactionsServer) Send(m *Transaction) error { |
|
return x.ServerStream.SendMsg(m) |
|
} |
|
|
|
func _Lightning_SendMany_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(SendManyRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).SendMany(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/SendMany", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).SendMany(ctx, req.(*SendManyRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_NewAddress_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(NewAddressRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).NewAddress(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/NewAddress", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).NewAddress(ctx, req.(*NewAddressRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_SignMessage_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(SignMessageRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).SignMessage(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/SignMessage", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).SignMessage(ctx, req.(*SignMessageRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_VerifyMessage_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(VerifyMessageRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).VerifyMessage(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/VerifyMessage", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).VerifyMessage(ctx, req.(*VerifyMessageRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_ConnectPeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(ConnectPeerRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).ConnectPeer(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/ConnectPeer", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).ConnectPeer(ctx, req.(*ConnectPeerRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_DisconnectPeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(DisconnectPeerRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).DisconnectPeer(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/DisconnectPeer", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).DisconnectPeer(ctx, req.(*DisconnectPeerRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_ListPeers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(ListPeersRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).ListPeers(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/ListPeers", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).ListPeers(ctx, req.(*ListPeersRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_SubscribePeerEvents_Handler(srv interface{}, stream grpc.ServerStream) error { |
|
m := new(PeerEventSubscription) |
|
if err := stream.RecvMsg(m); err != nil { |
|
return err |
|
} |
|
return srv.(LightningServer).SubscribePeerEvents(m, &lightningSubscribePeerEventsServer{stream}) |
|
} |
|
|
|
type Lightning_SubscribePeerEventsServer interface { |
|
Send(*PeerEvent) error |
|
grpc.ServerStream |
|
} |
|
|
|
type lightningSubscribePeerEventsServer struct { |
|
grpc.ServerStream |
|
} |
|
|
|
func (x *lightningSubscribePeerEventsServer) Send(m *PeerEvent) error { |
|
return x.ServerStream.SendMsg(m) |
|
} |
|
|
|
func _Lightning_GetInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(GetInfoRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).GetInfo(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/GetInfo", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).GetInfo(ctx, req.(*GetInfoRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_GetRecoveryInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(GetRecoveryInfoRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).GetRecoveryInfo(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/GetRecoveryInfo", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).GetRecoveryInfo(ctx, req.(*GetRecoveryInfoRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_PendingChannels_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(PendingChannelsRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).PendingChannels(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/PendingChannels", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).PendingChannels(ctx, req.(*PendingChannelsRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_ListChannels_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(ListChannelsRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).ListChannels(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/ListChannels", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).ListChannels(ctx, req.(*ListChannelsRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_SubscribeChannelEvents_Handler(srv interface{}, stream grpc.ServerStream) error { |
|
m := new(ChannelEventSubscription) |
|
if err := stream.RecvMsg(m); err != nil { |
|
return err |
|
} |
|
return srv.(LightningServer).SubscribeChannelEvents(m, &lightningSubscribeChannelEventsServer{stream}) |
|
} |
|
|
|
type Lightning_SubscribeChannelEventsServer interface { |
|
Send(*ChannelEventUpdate) error |
|
grpc.ServerStream |
|
} |
|
|
|
type lightningSubscribeChannelEventsServer struct { |
|
grpc.ServerStream |
|
} |
|
|
|
func (x *lightningSubscribeChannelEventsServer) Send(m *ChannelEventUpdate) error { |
|
return x.ServerStream.SendMsg(m) |
|
} |
|
|
|
func _Lightning_ClosedChannels_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(ClosedChannelsRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).ClosedChannels(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/ClosedChannels", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).ClosedChannels(ctx, req.(*ClosedChannelsRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_OpenChannelSync_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(OpenChannelRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).OpenChannelSync(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/OpenChannelSync", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).OpenChannelSync(ctx, req.(*OpenChannelRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_OpenChannel_Handler(srv interface{}, stream grpc.ServerStream) error { |
|
m := new(OpenChannelRequest) |
|
if err := stream.RecvMsg(m); err != nil { |
|
return err |
|
} |
|
return srv.(LightningServer).OpenChannel(m, &lightningOpenChannelServer{stream}) |
|
} |
|
|
|
type Lightning_OpenChannelServer interface { |
|
Send(*OpenStatusUpdate) error |
|
grpc.ServerStream |
|
} |
|
|
|
type lightningOpenChannelServer struct { |
|
grpc.ServerStream |
|
} |
|
|
|
func (x *lightningOpenChannelServer) Send(m *OpenStatusUpdate) error { |
|
return x.ServerStream.SendMsg(m) |
|
} |
|
|
|
func _Lightning_FundingStateStep_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(FundingTransitionMsg) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).FundingStateStep(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/FundingStateStep", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).FundingStateStep(ctx, req.(*FundingTransitionMsg)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_ChannelAcceptor_Handler(srv interface{}, stream grpc.ServerStream) error { |
|
return srv.(LightningServer).ChannelAcceptor(&lightningChannelAcceptorServer{stream}) |
|
} |
|
|
|
type Lightning_ChannelAcceptorServer interface { |
|
Send(*ChannelAcceptRequest) error |
|
Recv() (*ChannelAcceptResponse, error) |
|
grpc.ServerStream |
|
} |
|
|
|
type lightningChannelAcceptorServer struct { |
|
grpc.ServerStream |
|
} |
|
|
|
func (x *lightningChannelAcceptorServer) Send(m *ChannelAcceptRequest) error { |
|
return x.ServerStream.SendMsg(m) |
|
} |
|
|
|
func (x *lightningChannelAcceptorServer) Recv() (*ChannelAcceptResponse, error) { |
|
m := new(ChannelAcceptResponse) |
|
if err := x.ServerStream.RecvMsg(m); err != nil { |
|
return nil, err |
|
} |
|
return m, nil |
|
} |
|
|
|
func _Lightning_CloseChannel_Handler(srv interface{}, stream grpc.ServerStream) error { |
|
m := new(CloseChannelRequest) |
|
if err := stream.RecvMsg(m); err != nil { |
|
return err |
|
} |
|
return srv.(LightningServer).CloseChannel(m, &lightningCloseChannelServer{stream}) |
|
} |
|
|
|
type Lightning_CloseChannelServer interface { |
|
Send(*CloseStatusUpdate) error |
|
grpc.ServerStream |
|
} |
|
|
|
type lightningCloseChannelServer struct { |
|
grpc.ServerStream |
|
} |
|
|
|
func (x *lightningCloseChannelServer) Send(m *CloseStatusUpdate) error { |
|
return x.ServerStream.SendMsg(m) |
|
} |
|
|
|
func _Lightning_AbandonChannel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(AbandonChannelRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).AbandonChannel(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/AbandonChannel", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).AbandonChannel(ctx, req.(*AbandonChannelRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_SendPayment_Handler(srv interface{}, stream grpc.ServerStream) error { |
|
return srv.(LightningServer).SendPayment(&lightningSendPaymentServer{stream}) |
|
} |
|
|
|
type Lightning_SendPaymentServer interface { |
|
Send(*SendResponse) error |
|
Recv() (*SendRequest, error) |
|
grpc.ServerStream |
|
} |
|
|
|
type lightningSendPaymentServer struct { |
|
grpc.ServerStream |
|
} |
|
|
|
func (x *lightningSendPaymentServer) Send(m *SendResponse) error { |
|
return x.ServerStream.SendMsg(m) |
|
} |
|
|
|
func (x *lightningSendPaymentServer) Recv() (*SendRequest, error) { |
|
m := new(SendRequest) |
|
if err := x.ServerStream.RecvMsg(m); err != nil { |
|
return nil, err |
|
} |
|
return m, nil |
|
} |
|
|
|
func _Lightning_SendPaymentSync_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(SendRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).SendPaymentSync(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/SendPaymentSync", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).SendPaymentSync(ctx, req.(*SendRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_SendToRoute_Handler(srv interface{}, stream grpc.ServerStream) error { |
|
return srv.(LightningServer).SendToRoute(&lightningSendToRouteServer{stream}) |
|
} |
|
|
|
type Lightning_SendToRouteServer interface { |
|
Send(*SendResponse) error |
|
Recv() (*SendToRouteRequest, error) |
|
grpc.ServerStream |
|
} |
|
|
|
type lightningSendToRouteServer struct { |
|
grpc.ServerStream |
|
} |
|
|
|
func (x *lightningSendToRouteServer) Send(m *SendResponse) error { |
|
return x.ServerStream.SendMsg(m) |
|
} |
|
|
|
func (x *lightningSendToRouteServer) Recv() (*SendToRouteRequest, error) { |
|
m := new(SendToRouteRequest) |
|
if err := x.ServerStream.RecvMsg(m); err != nil { |
|
return nil, err |
|
} |
|
return m, nil |
|
} |
|
|
|
func _Lightning_SendToRouteSync_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(SendToRouteRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).SendToRouteSync(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/SendToRouteSync", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).SendToRouteSync(ctx, req.(*SendToRouteRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_AddInvoice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(Invoice) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).AddInvoice(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/AddInvoice", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).AddInvoice(ctx, req.(*Invoice)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_ListInvoices_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(ListInvoiceRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).ListInvoices(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/ListInvoices", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).ListInvoices(ctx, req.(*ListInvoiceRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_LookupInvoice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(PaymentHash) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).LookupInvoice(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/LookupInvoice", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).LookupInvoice(ctx, req.(*PaymentHash)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_SubscribeInvoices_Handler(srv interface{}, stream grpc.ServerStream) error { |
|
m := new(InvoiceSubscription) |
|
if err := stream.RecvMsg(m); err != nil { |
|
return err |
|
} |
|
return srv.(LightningServer).SubscribeInvoices(m, &lightningSubscribeInvoicesServer{stream}) |
|
} |
|
|
|
type Lightning_SubscribeInvoicesServer interface { |
|
Send(*Invoice) error |
|
grpc.ServerStream |
|
} |
|
|
|
type lightningSubscribeInvoicesServer struct { |
|
grpc.ServerStream |
|
} |
|
|
|
func (x *lightningSubscribeInvoicesServer) Send(m *Invoice) error { |
|
return x.ServerStream.SendMsg(m) |
|
} |
|
|
|
func _Lightning_DecodePayReq_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(PayReqString) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).DecodePayReq(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/DecodePayReq", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).DecodePayReq(ctx, req.(*PayReqString)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_ListPayments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(ListPaymentsRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).ListPayments(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/ListPayments", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).ListPayments(ctx, req.(*ListPaymentsRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_DeleteAllPayments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(DeleteAllPaymentsRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).DeleteAllPayments(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/DeleteAllPayments", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).DeleteAllPayments(ctx, req.(*DeleteAllPaymentsRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_DescribeGraph_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(ChannelGraphRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).DescribeGraph(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/DescribeGraph", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).DescribeGraph(ctx, req.(*ChannelGraphRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_GetNodeMetrics_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(NodeMetricsRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).GetNodeMetrics(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/GetNodeMetrics", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).GetNodeMetrics(ctx, req.(*NodeMetricsRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_GetChanInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(ChanInfoRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).GetChanInfo(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/GetChanInfo", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).GetChanInfo(ctx, req.(*ChanInfoRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_GetNodeInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(NodeInfoRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).GetNodeInfo(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/GetNodeInfo", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).GetNodeInfo(ctx, req.(*NodeInfoRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_QueryRoutes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(QueryRoutesRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).QueryRoutes(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/QueryRoutes", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).QueryRoutes(ctx, req.(*QueryRoutesRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_GetNetworkInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(NetworkInfoRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).GetNetworkInfo(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/GetNetworkInfo", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).GetNetworkInfo(ctx, req.(*NetworkInfoRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_StopDaemon_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(StopRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).StopDaemon(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/StopDaemon", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).StopDaemon(ctx, req.(*StopRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_SubscribeChannelGraph_Handler(srv interface{}, stream grpc.ServerStream) error { |
|
m := new(GraphTopologySubscription) |
|
if err := stream.RecvMsg(m); err != nil { |
|
return err |
|
} |
|
return srv.(LightningServer).SubscribeChannelGraph(m, &lightningSubscribeChannelGraphServer{stream}) |
|
} |
|
|
|
type Lightning_SubscribeChannelGraphServer interface { |
|
Send(*GraphTopologyUpdate) error |
|
grpc.ServerStream |
|
} |
|
|
|
type lightningSubscribeChannelGraphServer struct { |
|
grpc.ServerStream |
|
} |
|
|
|
func (x *lightningSubscribeChannelGraphServer) Send(m *GraphTopologyUpdate) error { |
|
return x.ServerStream.SendMsg(m) |
|
} |
|
|
|
func _Lightning_DebugLevel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(DebugLevelRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).DebugLevel(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/DebugLevel", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).DebugLevel(ctx, req.(*DebugLevelRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_FeeReport_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(FeeReportRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).FeeReport(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/FeeReport", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).FeeReport(ctx, req.(*FeeReportRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_UpdateChannelPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(PolicyUpdateRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).UpdateChannelPolicy(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/UpdateChannelPolicy", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).UpdateChannelPolicy(ctx, req.(*PolicyUpdateRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_ForwardingHistory_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(ForwardingHistoryRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).ForwardingHistory(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/ForwardingHistory", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).ForwardingHistory(ctx, req.(*ForwardingHistoryRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_ExportChannelBackup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(ExportChannelBackupRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).ExportChannelBackup(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/ExportChannelBackup", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).ExportChannelBackup(ctx, req.(*ExportChannelBackupRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_ExportAllChannelBackups_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(ChanBackupExportRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).ExportAllChannelBackups(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/ExportAllChannelBackups", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).ExportAllChannelBackups(ctx, req.(*ChanBackupExportRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_VerifyChanBackup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(ChanBackupSnapshot) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).VerifyChanBackup(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/VerifyChanBackup", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).VerifyChanBackup(ctx, req.(*ChanBackupSnapshot)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_RestoreChannelBackups_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(RestoreChanBackupRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).RestoreChannelBackups(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/RestoreChannelBackups", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).RestoreChannelBackups(ctx, req.(*RestoreChanBackupRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_SubscribeChannelBackups_Handler(srv interface{}, stream grpc.ServerStream) error { |
|
m := new(ChannelBackupSubscription) |
|
if err := stream.RecvMsg(m); err != nil { |
|
return err |
|
} |
|
return srv.(LightningServer).SubscribeChannelBackups(m, &lightningSubscribeChannelBackupsServer{stream}) |
|
} |
|
|
|
type Lightning_SubscribeChannelBackupsServer interface { |
|
Send(*ChanBackupSnapshot) error |
|
grpc.ServerStream |
|
} |
|
|
|
type lightningSubscribeChannelBackupsServer struct { |
|
grpc.ServerStream |
|
} |
|
|
|
func (x *lightningSubscribeChannelBackupsServer) Send(m *ChanBackupSnapshot) error { |
|
return x.ServerStream.SendMsg(m) |
|
} |
|
|
|
func _Lightning_BakeMacaroon_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(BakeMacaroonRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).BakeMacaroon(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/BakeMacaroon", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).BakeMacaroon(ctx, req.(*BakeMacaroonRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_ListMacaroonIDs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(ListMacaroonIDsRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).ListMacaroonIDs(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/ListMacaroonIDs", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).ListMacaroonIDs(ctx, req.(*ListMacaroonIDsRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_DeleteMacaroonID_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(DeleteMacaroonIDRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).DeleteMacaroonID(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/DeleteMacaroonID", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).DeleteMacaroonID(ctx, req.(*DeleteMacaroonIDRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
func _Lightning_ListPermissions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
|
in := new(ListPermissionsRequest) |
|
if err := dec(in); err != nil { |
|
return nil, err |
|
} |
|
if interceptor == nil { |
|
return srv.(LightningServer).ListPermissions(ctx, in) |
|
} |
|
info := &grpc.UnaryServerInfo{ |
|
Server: srv, |
|
FullMethod: "/lnrpc.Lightning/ListPermissions", |
|
} |
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
|
return srv.(LightningServer).ListPermissions(ctx, req.(*ListPermissionsRequest)) |
|
} |
|
return interceptor(ctx, in, info, handler) |
|
} |
|
|
|
var _Lightning_serviceDesc = grpc.ServiceDesc{ |
|
ServiceName: "lnrpc.Lightning", |
|
HandlerType: (*LightningServer)(nil), |
|
Methods: []grpc.MethodDesc{ |
|
{ |
|
MethodName: "WalletBalance", |
|
Handler: _Lightning_WalletBalance_Handler, |
|
}, |
|
{ |
|
MethodName: "ChannelBalance", |
|
Handler: _Lightning_ChannelBalance_Handler, |
|
}, |
|
{ |
|
MethodName: "GetTransactions", |
|
Handler: _Lightning_GetTransactions_Handler, |
|
}, |
|
{ |
|
MethodName: "EstimateFee", |
|
Handler: _Lightning_EstimateFee_Handler, |
|
}, |
|
{ |
|
MethodName: "SendCoins", |
|
Handler: _Lightning_SendCoins_Handler, |
|
}, |
|
{ |
|
MethodName: "ListUnspent", |
|
Handler: _Lightning_ListUnspent_Handler, |
|
}, |
|
{ |
|
MethodName: "SendMany", |
|
Handler: _Lightning_SendMany_Handler, |
|
}, |
|
{ |
|
MethodName: "NewAddress", |
|
Handler: _Lightning_NewAddress_Handler, |
|
}, |
|
{ |
|
MethodName: "SignMessage", |
|
Handler: _Lightning_SignMessage_Handler, |
|
}, |
|
{ |
|
MethodName: "VerifyMessage", |
|
Handler: _Lightning_VerifyMessage_Handler, |
|
}, |
|
{ |
|
MethodName: "ConnectPeer", |
|
Handler: _Lightning_ConnectPeer_Handler, |
|
}, |
|
{ |
|
MethodName: "DisconnectPeer", |
|
Handler: _Lightning_DisconnectPeer_Handler, |
|
}, |
|
{ |
|
MethodName: "ListPeers", |
|
Handler: _Lightning_ListPeers_Handler, |
|
}, |
|
{ |
|
MethodName: "GetInfo", |
|
Handler: _Lightning_GetInfo_Handler, |
|
}, |
|
{ |
|
MethodName: "GetRecoveryInfo", |
|
Handler: _Lightning_GetRecoveryInfo_Handler, |
|
}, |
|
{ |
|
MethodName: "PendingChannels", |
|
Handler: _Lightning_PendingChannels_Handler, |
|
}, |
|
{ |
|
MethodName: "ListChannels", |
|
Handler: _Lightning_ListChannels_Handler, |
|
}, |
|
{ |
|
MethodName: "ClosedChannels", |
|
Handler: _Lightning_ClosedChannels_Handler, |
|
}, |
|
{ |
|
MethodName: "OpenChannelSync", |
|
Handler: _Lightning_OpenChannelSync_Handler, |
|
}, |
|
{ |
|
MethodName: "FundingStateStep", |
|
Handler: _Lightning_FundingStateStep_Handler, |
|
}, |
|
{ |
|
MethodName: "AbandonChannel", |
|
Handler: _Lightning_AbandonChannel_Handler, |
|
}, |
|
{ |
|
MethodName: "SendPaymentSync", |
|
Handler: _Lightning_SendPaymentSync_Handler, |
|
}, |
|
{ |
|
MethodName: "SendToRouteSync", |
|
Handler: _Lightning_SendToRouteSync_Handler, |
|
}, |
|
{ |
|
MethodName: "AddInvoice", |
|
Handler: _Lightning_AddInvoice_Handler, |
|
}, |
|
{ |
|
MethodName: "ListInvoices", |
|
Handler: _Lightning_ListInvoices_Handler, |
|
}, |
|
{ |
|
MethodName: "LookupInvoice", |
|
Handler: _Lightning_LookupInvoice_Handler, |
|
}, |
|
{ |
|
MethodName: "DecodePayReq", |
|
Handler: _Lightning_DecodePayReq_Handler, |
|
}, |
|
{ |
|
MethodName: "ListPayments", |
|
Handler: _Lightning_ListPayments_Handler, |
|
}, |
|
{ |
|
MethodName: "DeleteAllPayments", |
|
Handler: _Lightning_DeleteAllPayments_Handler, |
|
}, |
|
{ |
|
MethodName: "DescribeGraph", |
|
Handler: _Lightning_DescribeGraph_Handler, |
|
}, |
|
{ |
|
MethodName: "GetNodeMetrics", |
|
Handler: _Lightning_GetNodeMetrics_Handler, |
|
}, |
|
{ |
|
MethodName: "GetChanInfo", |
|
Handler: _Lightning_GetChanInfo_Handler, |
|
}, |
|
{ |
|
MethodName: "GetNodeInfo", |
|
Handler: _Lightning_GetNodeInfo_Handler, |
|
}, |
|
{ |
|
MethodName: "QueryRoutes", |
|
Handler: _Lightning_QueryRoutes_Handler, |
|
}, |
|
{ |
|
MethodName: "GetNetworkInfo", |
|
Handler: _Lightning_GetNetworkInfo_Handler, |
|
}, |
|
{ |
|
MethodName: "StopDaemon", |
|
Handler: _Lightning_StopDaemon_Handler, |
|
}, |
|
{ |
|
MethodName: "DebugLevel", |
|
Handler: _Lightning_DebugLevel_Handler, |
|
}, |
|
{ |
|
MethodName: "FeeReport", |
|
Handler: _Lightning_FeeReport_Handler, |
|
}, |
|
{ |
|
MethodName: "UpdateChannelPolicy", |
|
Handler: _Lightning_UpdateChannelPolicy_Handler, |
|
}, |
|
{ |
|
MethodName: "ForwardingHistory", |
|
Handler: _Lightning_ForwardingHistory_Handler, |
|
}, |
|
{ |
|
MethodName: "ExportChannelBackup", |
|
Handler: _Lightning_ExportChannelBackup_Handler, |
|
}, |
|
{ |
|
MethodName: "ExportAllChannelBackups", |
|
Handler: _Lightning_ExportAllChannelBackups_Handler, |
|
}, |
|
{ |
|
MethodName: "VerifyChanBackup", |
|
Handler: _Lightning_VerifyChanBackup_Handler, |
|
}, |
|
{ |
|
MethodName: "RestoreChannelBackups", |
|
Handler: _Lightning_RestoreChannelBackups_Handler, |
|
}, |
|
{ |
|
MethodName: "BakeMacaroon", |
|
Handler: _Lightning_BakeMacaroon_Handler, |
|
}, |
|
{ |
|
MethodName: "ListMacaroonIDs", |
|
Handler: _Lightning_ListMacaroonIDs_Handler, |
|
}, |
|
{ |
|
MethodName: "DeleteMacaroonID", |
|
Handler: _Lightning_DeleteMacaroonID_Handler, |
|
}, |
|
{ |
|
MethodName: "ListPermissions", |
|
Handler: _Lightning_ListPermissions_Handler, |
|
}, |
|
}, |
|
Streams: []grpc.StreamDesc{ |
|
{ |
|
StreamName: "SubscribeTransactions", |
|
Handler: _Lightning_SubscribeTransactions_Handler, |
|
ServerStreams: true, |
|
}, |
|
{ |
|
StreamName: "SubscribePeerEvents", |
|
Handler: _Lightning_SubscribePeerEvents_Handler, |
|
ServerStreams: true, |
|
}, |
|
{ |
|
StreamName: "SubscribeChannelEvents", |
|
Handler: _Lightning_SubscribeChannelEvents_Handler, |
|
ServerStreams: true, |
|
}, |
|
{ |
|
StreamName: "OpenChannel", |
|
Handler: _Lightning_OpenChannel_Handler, |
|
ServerStreams: true, |
|
}, |
|
{ |
|
StreamName: "ChannelAcceptor", |
|
Handler: _Lightning_ChannelAcceptor_Handler, |
|
ServerStreams: true, |
|
ClientStreams: true, |
|
}, |
|
{ |
|
StreamName: "CloseChannel", |
|
Handler: _Lightning_CloseChannel_Handler, |
|
ServerStreams: true, |
|
}, |
|
{ |
|
StreamName: "SendPayment", |
|
Handler: _Lightning_SendPayment_Handler, |
|
ServerStreams: true, |
|
ClientStreams: true, |
|
}, |
|
{ |
|
StreamName: "SendToRoute", |
|
Handler: _Lightning_SendToRoute_Handler, |
|
ServerStreams: true, |
|
ClientStreams: true, |
|
}, |
|
{ |
|
StreamName: "SubscribeInvoices", |
|
Handler: _Lightning_SubscribeInvoices_Handler, |
|
ServerStreams: true, |
|
}, |
|
{ |
|
StreamName: "SubscribeChannelGraph", |
|
Handler: _Lightning_SubscribeChannelGraph_Handler, |
|
ServerStreams: true, |
|
}, |
|
{ |
|
StreamName: "SubscribeChannelBackups", |
|
Handler: _Lightning_SubscribeChannelBackups_Handler, |
|
ServerStreams: true, |
|
}, |
|
}, |
|
Metadata: "rpc.proto", |
|
}
|
|
|