diff --git a/proto/autogenerated/client.md b/proto/autogenerated/client.md index 0f9de295..33554612 100644 --- a/proto/autogenerated/client.md +++ b/proto/autogenerated/client.md @@ -38,6 +38,11 @@ The nostr server will send back a message response, and inside the body there wi - This methods has an __empty__ __request__ body - output: [LndSeed](#LndSeed) +- ListChannels + - auth type: __Admin__ + - This methods has an __empty__ __request__ body + - output: [LndChannels](#LndChannels) + - GetUsageMetrics - auth type: __Metrics__ - This methods has an __empty__ __request__ body @@ -185,9 +190,9 @@ The nostr server will send back a message response, and inside the body there wi - __User__: - expected context content - - __user_id__: _string_ - __app_id__: _string_ - __app_user_id__: _string_ + - __user_id__: _string_ - __Admin__: - expected context content @@ -244,6 +249,13 @@ The nostr server will send back a message response, and inside the body there wi - This methods has an __empty__ __request__ body - output: [LndSeed](#LndSeed) +- ListChannels + - auth type: __Admin__ + - http method: __get__ + - http route: __/api/admin/channels__ + - This methods has an __empty__ __request__ body + - output: [LndChannels](#LndChannels) + - GetUsageMetrics - auth type: __Metrics__ - http method: __post__ @@ -601,131 +613,305 @@ The nostr server will send back a message response, and inside the body there wi ## Messages ### The content of requests and response from the methods -### AppsMetricsRequest - - __from_unix__: _number_ *this field is optional - - __to_unix__: _number_ *this field is optional - - __include_operations__: _boolean_ *this field is optional +### AuthAppRequest + - __name__: _string_ + - __allow_user_creation__: _boolean_ *this field is optional -### SetMockAppBalanceRequest - - __amount__: _number_ +### Application + - __name__: _string_ + - __id__: _string_ + - __balance__: _number_ + - __npub__: _string_ -### NewAddressResponse - - __address__: _string_ +### DecodeInvoiceRequest + - __invoice__: _string_ -### PayAddressResponse - - __txId__: _string_ - - __operation_id__: _string_ - - __service_fee__: _number_ - - __network_fee__: _number_ +### OpenChannel + - __channel_id__: _string_ + - __capacity__: _number_ + - __active__: _boolean_ + - __lifetime__: _number_ + - __local_balance__: _number_ + - __remote_balance__: _number_ + - __label__: _string_ + +### ChannelRouting + - __send_errors__: _number_ + - __receive_errors__: _number_ + - __missed_forward_fee_as_output__: _number_ + - __events_number__: _number_ + - __channel_id__: _string_ + - __forward_errors_as_input__: _number_ + - __forward_errors_as_output__: _number_ + - __missed_forward_fee_as_input__: _number_ + - __forward_fee_as_input__: _number_ + - __forward_fee_as_output__: _number_ + +### ChainBalanceEvent + - __block_height__: _number_ + - __confirmed_balance__: _number_ + - __unconfirmed_balance__: _number_ + - __total_balance__: _number_ + +### GetPaymentStateRequest + - __invoice__: _string_ + +### EncryptionExchangeRequest + - __deviceId__: _string_ + - __publicKey__: _string_ + +### ChannelBalanceEvent + - __block_height__: _number_ + - __channel_id__: _string_ + - __local_balance_sats__: _number_ + - __remote_balance_sats__: _number_ ### HandleLnurlPayResponse - __pr__: _string_ - __routes__: ARRAY of: _[Empty](#Empty)_ -### GetProductBuyLinkResponse - - __link__: _string_ +### LiveUserOperation + - __operation__: _[UserOperation](#UserOperation)_ -### UsageMetric - - __parsed_in_nano__: _number_ - - __validate_in_nano__: _number_ - - __handle_in_nano__: _number_ - - __batch__: _boolean_ - - __nostr__: _boolean_ - - __batch_size__: _number_ - - __processed_at_ms__: _number_ - - __auth_in_nano__: _number_ - - __rpc_name__: _string_ +### RequestNPubLinkingTokenRequest + - __user_identifier__: _string_ -### AppMetrics - - __app__: _[Application](#Application)_ - - __users__: _[UsersInfo](#UsersInfo)_ - - __received__: _number_ - - __total_fees__: _number_ - - __operations__: ARRAY of: _[UserOperation](#UserOperation)_ - - __spent__: _number_ - - __available__: _number_ - - __fees__: _number_ - - __invoices__: _number_ +### HttpCreds + - __url__: _string_ + - __token__: _string_ -### LndMetrics - - __nodes__: ARRAY of: _[LndNodeMetrics](#LndNodeMetrics)_ +### AppsMetricsRequest + - __from_unix__: _number_ *this field is optional + - __to_unix__: _number_ *this field is optional + - __include_operations__: _boolean_ *this field is optional -### Application +### LnurlWithdrawInfoResponse + - __balanceCheck__: _string_ + - __payLink__: _string_ + - __tag__: _string_ + - __callback__: _string_ + - __k1__: _string_ + - __defaultDescription__: _string_ + - __minWithdrawable__: _number_ + - __maxWithdrawable__: _number_ + +### NewInvoiceRequest + - __memo__: _string_ + - __amountSats__: _number_ + +### DecodeInvoiceResponse + - __amount__: _number_ + +### UserInfo + - __service_fee_bps__: _number_ + - __network_max_fee_bps__: _number_ + - __network_max_fee_fixed__: _number_ + - __userId__: _string_ - __balance__: _number_ - - __npub__: _string_ - - __name__: _string_ - - __id__: _string_ + - __max_withdrawable__: _number_ + - __user_identifier__: _string_ -### AddAppInvoiceRequest - - __invoice_req__: _[NewInvoiceRequest](#NewInvoiceRequest)_ - - __payer_identifier__: _string_ - - __http_callback_url__: _string_ +### SetMockInvoiceAsPaidRequest + - __invoice__: _string_ + - __amount__: _number_ + +### SendAppUserToAppPaymentRequest + - __from_user_identifier__: _string_ + - __amount__: _number_ ### GetAppUserLNURLInfoRequest - __user_identifier__: _string_ - __base_url_override__: _string_ -### GetPaymentStateRequest - - __invoice__: _string_ +### GetProductBuyLinkResponse + - __link__: _string_ -### ChannelRouting - - __forward_fee_as_output__: _number_ - - __events_number__: _number_ - - __send_errors__: _number_ - - __forward_errors_as_output__: _number_ - - __forward_fee_as_input__: _number_ - - __missed_forward_fee_as_input__: _number_ - - __missed_forward_fee_as_output__: _number_ - - __channel_id__: _string_ - - __receive_errors__: _number_ - - __forward_errors_as_input__: _number_ +### LndMetrics + - __nodes__: ARRAY of: _[LndNodeMetrics](#LndNodeMetrics)_ -### PayAppUserInvoiceRequest - - __user_identifier__: _string_ - - __invoice__: _string_ - - __amount__: _number_ +### AddAppUserRequest + - __balance__: _number_ + - __identifier__: _string_ + - __fail_if_exists__: _boolean_ -### SetMockAppUserBalanceRequest - - __user_identifier__: _string_ - - __amount__: _number_ - -### PayAddressRequest - - __address__: _string_ - - __amoutSats__: _number_ - - __satsPerVByte__: _number_ +### BanUserResponse + - __balance_sats__: _number_ + - __banned_app_users__: ARRAY of: _[BannedAppUser](#BannedAppUser)_ ### GetUserOperationsRequest - - __max_size__: _number_ - __latestIncomingInvoice__: _number_ - __latestOutgoingInvoice__: _number_ - __latestIncomingTx__: _number_ - __latestOutgoingTx__: _number_ - __latestIncomingUserToUserPayment__: _number_ - __latestOutgoingUserToUserPayment__: _number_ + - __max_size__: _number_ + +### MigrationUpdate + - __closure__: _[ClosureMigration](#ClosureMigration)_ *this field is optional + - __relays__: _[RelaysMigration](#RelaysMigration)_ *this field is optional + +### LinkNPubThroughTokenRequest + - __token__: _string_ + +### LndGetInfoRequest + - __nodeId__: _number_ + +### BannedAppUser + - __app_name__: _string_ + - __app_id__: _string_ + - __user_identifier__: _string_ + - __nostr_pub__: _string_ ### Product - __id__: _string_ - __name__: _string_ - __price_sats__: _number_ -### UseInviteLinkRequest - - __invite_token__: _string_ +### GetInviteTokenStateResponse + - __used__: _boolean_ -### AppsMetrics - - __apps__: ARRAY of: _[AppMetrics](#AppMetrics)_ +### PayInvoiceResponse + - __preimage__: _string_ + - __amount_paid__: _number_ + - __operation_id__: _string_ + - __service_fee__: _number_ + - __network_fee__: _number_ -### SetMockInvoiceAsPaidRequest - - __invoice__: _string_ +### OpenChannelResponse + - __channelId__: _string_ + +### PayAddressResponse + - __service_fee__: _number_ + - __network_fee__: _number_ + - __txId__: _string_ + - __operation_id__: _string_ + +### PaymentState + - __network_fee__: _number_ + - __paid_at_unix__: _number_ + - __amount__: _number_ + - __service_fee__: _number_ + +### UsersInfo + - __no_balance__: _number_ + - __negative_balance__: _number_ + - __always_been_inactive__: _number_ + - __balance_avg__: _number_ + - __balance_median__: _number_ + - __total__: _number_ + +### LndGetInfoResponse + - __alias__: _string_ + +### LndMetricsRequest + - __to_unix__: _number_ *this field is optional + - __from_unix__: _number_ *this field is optional + +### SetMockAppUserBalanceRequest + - __amount__: _number_ + - __user_identifier__: _string_ + +### RelaysMigration + - __relays__: ARRAY of: _string_ + +### UsageMetric + - __rpc_name__: _string_ + - __batch__: _boolean_ + - __nostr__: _boolean_ + - __processed_at_ms__: _number_ + - __auth_in_nano__: _number_ + - __handle_in_nano__: _number_ + - __batch_size__: _number_ + - __parsed_in_nano__: _number_ + - __validate_in_nano__: _number_ + +### AppUser + - __identifier__: _string_ + - __info__: _[UserInfo](#UserInfo)_ + - __max_withdrawable__: _number_ + +### PayAddressRequest + - __address__: _string_ + - __amoutSats__: _number_ + - __satsPerVByte__: _number_ + +### LnurlLinkResponse + - __lnurl__: _string_ + - __k1__: _string_ + +### CreateOneTimeInviteLinkResponse + - __invitation_link__: _string_ + +### LndSeed + - __seed__: ARRAY of: _string_ + +### LndChannels + - __open_channels__: ARRAY of: _[OpenChannel](#OpenChannel)_ + +### OpenChannelRequest + - __pushAmount__: _number_ + - __closeAddress__: _string_ + - __destination__: _string_ + - __fundingAmount__: _number_ + +### UserOperations + - __fromIndex__: _number_ + - __toIndex__: _number_ + - __operations__: ARRAY of: _[UserOperation](#UserOperation)_ + +### Empty + +### SendAppUserToAppUserPaymentRequest + - __from_user_identifier__: _string_ + - __to_user_identifier__: _string_ - __amount__: _number_ -### BanUserRequest - - __user_id__: _string_ +### LnurlPayInfoResponse + - __maxSendable__: _number_ + - __minSendable__: _number_ + - __metadata__: _string_ + - __allowsNostr__: _boolean_ + - __nostrPubkey__: _string_ + - __tag__: _string_ + - __callback__: _string_ + +### AddProductRequest + - __name__: _string_ + - __price_sats__: _number_ + +### RequestNPubLinkingTokenResponse + - __token__: _string_ + +### EnrollAdminTokenRequest + - __admin_token__: _string_ + +### CreateOneTimeInviteLinkRequest + - __sats__: _number_ *this field is optional + +### GetInviteTokenStateRequest + - __invite_token__: _string_ + +### RoutingEvent + - __forward_fail_event__: _boolean_ + - __incoming_channel_id__: _number_ + - __incoming_htlc_id__: _number_ + - __event_type__: _string_ + - __incoming_amt_msat__: _number_ + - __failure_string__: _string_ + - __settled__: _boolean_ + - __offchain__: _boolean_ + - __outgoing_channel_id__: _number_ + - __outgoing_htlc_id__: _number_ + - __timestamp_ns__: _number_ + - __outgoing_amt_msat__: _number_ ### GetAppUserRequest - __user_identifier__: _string_ -### NewInvoiceResponse +### PayInvoiceRequest - __invoice__: _string_ + - __amount__: _number_ ### GetUserOperationsResponse - __latestIncomingTxOperations__: _[UserOperations](#UserOperations)_ @@ -735,266 +921,96 @@ The nostr server will send back a message response, and inside the body there wi - __latestIncomingInvoiceOperations__: _[UserOperations](#UserOperations)_ - __latestOutgoingTxOperations__: _[UserOperations](#UserOperations)_ -### LndMetricsRequest - - __from_unix__: _number_ *this field is optional - - __to_unix__: _number_ *this field is optional +### UsageMetrics + - __metrics__: ARRAY of: _[UsageMetric](#UsageMetric)_ -### AuthApp - - __app__: _[Application](#Application)_ - - __auth_token__: _string_ +### NewAddressRequest + - __addressType__: _[AddressType](#AddressType)_ -### DecodeInvoiceRequest - - __invoice__: _string_ +### ClosedChannel + - __channel_id__: _string_ + - __capacity__: _number_ + - __closed_height__: _number_ -### LnurlLinkResponse - - __lnurl__: _string_ - - __k1__: _string_ +### LndNodeMetrics + - __channels_balance_events__: ARRAY of: _[ChannelBalanceEvent](#ChannelBalanceEvent)_ + - __chain_balance_events__: ARRAY of: _[ChainBalanceEvent](#ChainBalanceEvent)_ + - __closed_channels__: ARRAY of: _[ClosedChannel](#ClosedChannel)_ + - __channel_routing__: ARRAY of: _[ChannelRouting](#ChannelRouting)_ + - __offline_channels__: _number_ + - __online_channels__: _number_ + - __pending_channels__: _number_ + - __closing_channels__: _number_ + - __open_channels__: ARRAY of: _[OpenChannel](#OpenChannel)_ -### RequestNPubLinkingTokenResponse - - __token__: _string_ - -### CreateOneTimeInviteLinkResponse - - __invitation_link__: _string_ - -### UsersInfo - - __total__: _number_ - - __no_balance__: _number_ - - __negative_balance__: _number_ - - __always_been_inactive__: _number_ - - __balance_avg__: _number_ - - __balance_median__: _number_ - -### RoutingEvent - - __outgoing_channel_id__: _number_ - - __incoming_amt_msat__: _number_ - - __settled__: _boolean_ - - __outgoing_amt_msat__: _number_ - - __failure_string__: _string_ - - __offchain__: _boolean_ - - __incoming_channel_id__: _number_ - - __incoming_htlc_id__: _number_ - - __outgoing_htlc_id__: _number_ - - __timestamp_ns__: _number_ - - __event_type__: _string_ - - __forward_fail_event__: _boolean_ - -### UserInfo - - __user_identifier__: _string_ - - __service_fee_bps__: _number_ - - __network_max_fee_bps__: _number_ - - __network_max_fee_fixed__: _number_ - - __userId__: _string_ - - __balance__: _number_ - - __max_withdrawable__: _number_ - -### LndGetInfoRequest - - __nodeId__: _number_ +### BanUserRequest + - __user_id__: _string_ ### AddAppRequest - __name__: _string_ - __allow_user_creation__: _boolean_ ### AddAppUserInvoiceRequest - - __receiver_identifier__: _string_ - __payer_identifier__: _string_ - __http_callback_url__: _string_ - __invoice_req__: _[NewInvoiceRequest](#NewInvoiceRequest)_ + - __receiver_identifier__: _string_ -### LinkNPubThroughTokenRequest - - __token__: _string_ +### SetMockAppBalanceRequest + - __amount__: _number_ -### PayInvoiceResponse - - __network_fee__: _number_ - - __preimage__: _string_ - - __amount_paid__: _number_ - - __operation_id__: _string_ - - __service_fee__: _number_ +### AppMetrics + - __spent__: _number_ + - __available__: _number_ + - __fees__: _number_ + - __invoices__: _number_ + - __operations__: ARRAY of: _[UserOperation](#UserOperation)_ + - __app__: _[Application](#Application)_ + - __users__: _[UsersInfo](#UsersInfo)_ + - __received__: _number_ + - __total_fees__: _number_ -### LnurlPayInfoResponse - - __allowsNostr__: _boolean_ - - __nostrPubkey__: _string_ - - __tag__: _string_ - - __callback__: _string_ - - __maxSendable__: _number_ - - __minSendable__: _number_ - - __metadata__: _string_ +### AppsMetrics + - __apps__: ARRAY of: _[AppMetrics](#AppMetrics)_ ### ClosureMigration - __closes_at_unix__: _number_ -### ChainBalanceEvent - - __block_height__: _number_ - - __confirmed_balance__: _number_ - - __unconfirmed_balance__: _number_ - - __total_balance__: _number_ - -### LndNodeMetrics - - __channels_balance_events__: ARRAY of: _[ChannelBalanceEvent](#ChannelBalanceEvent)_ - - __channel_routing__: ARRAY of: _[ChannelRouting](#ChannelRouting)_ - - __closing_channels__: _number_ - - __open_channels__: ARRAY of: _[OpenChannel](#OpenChannel)_ - - __closed_channels__: ARRAY of: _[ClosedChannel](#ClosedChannel)_ - - __chain_balance_events__: ARRAY of: _[ChainBalanceEvent](#ChainBalanceEvent)_ - - __offline_channels__: _number_ - - __online_channels__: _number_ - - __pending_channels__: _number_ - -### UserOperation - - __network_fee__: _number_ - - __type__: _[UserOperationType](#UserOperationType)_ - - __identifier__: _string_ - - __service_fee__: _number_ - - __operationId__: _string_ - - __confirmed__: _boolean_ - - __tx_hash__: _string_ - - __internal__: _boolean_ - - __paidAtUnix__: _number_ - - __inbound__: _boolean_ - - __amount__: _number_ - -### GetInviteTokenStateRequest - - __invite_token__: _string_ - -### ChannelBalanceEvent - - __block_height__: _number_ - - __channel_id__: _string_ - - __local_balance_sats__: _number_ - - __remote_balance_sats__: _number_ - -### OpenChannel - - __channel_id__: _string_ - - __capacity__: _number_ - - __active__: _boolean_ - - __lifetime__: _number_ - - __local_balance__: _number_ - - __remote_balance__: _number_ - -### BanUserResponse - - __balance_sats__: _number_ - - __banned_app_users__: ARRAY of: _[BannedAppUser](#BannedAppUser)_ - -### AppUser - - __identifier__: _string_ - - __info__: _[UserInfo](#UserInfo)_ - - __max_withdrawable__: _number_ - -### PaymentState - - __amount__: _number_ - - __service_fee__: _number_ - - __network_fee__: _number_ - - __paid_at_unix__: _number_ - -### MigrationUpdate - - __closure__: _[ClosureMigration](#ClosureMigration)_ *this field is optional - - __relays__: _[RelaysMigration](#RelaysMigration)_ *this field is optional - -### HttpCreds - - __url__: _string_ - - __token__: _string_ - -### ClosedChannel - - __capacity__: _number_ - - __closed_height__: _number_ - - __channel_id__: _string_ - -### LndGetInfoResponse - - __alias__: _string_ - -### PayInvoiceRequest +### PayAppUserInvoiceRequest + - __user_identifier__: _string_ - __invoice__: _string_ - __amount__: _number_ -### SendAppUserToAppPaymentRequest - - __from_user_identifier__: _string_ - - __amount__: _number_ +### NewAddressResponse + - __address__: _string_ -### OpenChannelRequest - - __closeAddress__: _string_ - - __destination__: _string_ - - __fundingAmount__: _number_ - - __pushAmount__: _number_ +### NewInvoiceResponse + - __invoice__: _string_ -### EnrollAdminTokenRequest - - __admin_token__: _string_ - -### Empty - -### NewAddressRequest - - __addressType__: _[AddressType](#AddressType)_ - -### AddProductRequest - - __name__: _string_ - - __price_sats__: _number_ - -### GetInviteTokenStateResponse - - __used__: _boolean_ - -### EncryptionExchangeRequest - - __publicKey__: _string_ - - __deviceId__: _string_ - -### UsageMetrics - - __metrics__: ARRAY of: _[UsageMetric](#UsageMetric)_ - -### AuthAppRequest - - __name__: _string_ - - __allow_user_creation__: _boolean_ *this field is optional - -### AddAppUserRequest +### UserOperation - __identifier__: _string_ - - __fail_if_exists__: _boolean_ - - __balance__: _number_ - -### DecodeInvoiceResponse + - __operationId__: _string_ + - __network_fee__: _number_ + - __confirmed__: _boolean_ + - __tx_hash__: _string_ + - __paidAtUnix__: _number_ + - __type__: _[UserOperationType](#UserOperationType)_ - __amount__: _number_ + - __internal__: _boolean_ + - __inbound__: _boolean_ + - __service_fee__: _number_ -### RelaysMigration - - __relays__: ARRAY of: _string_ +### UseInviteLinkRequest + - __invite_token__: _string_ -### CreateOneTimeInviteLinkRequest - - __sats__: _number_ *this field is optional +### AuthApp + - __app__: _[Application](#Application)_ + - __auth_token__: _string_ -### BannedAppUser - - __app_name__: _string_ - - __app_id__: _string_ - - __user_identifier__: _string_ - - __nostr_pub__: _string_ - -### SendAppUserToAppUserPaymentRequest - - __from_user_identifier__: _string_ - - __to_user_identifier__: _string_ - - __amount__: _number_ - -### NewInvoiceRequest - - __amountSats__: _number_ - - __memo__: _string_ - -### OpenChannelResponse - - __channelId__: _string_ - -### LiveUserOperation - - __operation__: _[UserOperation](#UserOperation)_ - -### LndSeed - - __seed__: ARRAY of: _string_ - -### LnurlWithdrawInfoResponse - - __maxWithdrawable__: _number_ - - __balanceCheck__: _string_ - - __payLink__: _string_ - - __tag__: _string_ - - __callback__: _string_ - - __k1__: _string_ - - __defaultDescription__: _string_ - - __minWithdrawable__: _number_ - -### UserOperations - - __toIndex__: _number_ - - __operations__: ARRAY of: _[UserOperation](#UserOperation)_ - - __fromIndex__: _number_ - -### RequestNPubLinkingTokenRequest - - __user_identifier__: _string_ +### AddAppInvoiceRequest + - __payer_identifier__: _string_ + - __http_callback_url__: _string_ + - __invoice_req__: _[NewInvoiceRequest](#NewInvoiceRequest)_ ## Enums ### The enumerators used in the messages diff --git a/proto/autogenerated/debug.txt b/proto/autogenerated/debug.txt index b46ba58e..c433e839 100644 --- a/proto/autogenerated/debug.txt +++ b/proto/autogenerated/debug.txt @@ -1,4 +1,4 @@ -([]*main.Method) (len=53 cap=64) { +([]*main.Method) (len=54 cap=64) { (*main.Method)(0xc0002748c0)({ in: (main.MethodMessage) { name: (string) (len=17) "LndGetInfoRequest", @@ -9,8 +9,8 @@ name: (string) (len=18) "LndGetInfoResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0000715c0)({ - authType: (*main.supportedAuth)(0xc0001dd2c0)({ + opts: (*main.methodOptions)(0xc0000796e0)({ + authType: (*main.supportedAuth)(0xc000217440)({ id: (string) (len=5) "admin", name: (string) (len=5) "Admin", context: (map[string]string) (len=1) { @@ -38,8 +38,8 @@ name: (string) (len=7) "AuthApp", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0000717a0)({ - authType: (*main.supportedAuth)(0xc0001dd350)({ + opts: (*main.methodOptions)(0xc0000798c0)({ + authType: (*main.supportedAuth)(0xc0002174d0)({ id: (string) (len=5) "admin", name: (string) (len=5) "Admin", context: (map[string]string) (len=1) { @@ -67,8 +67,8 @@ name: (string) (len=7) "AuthApp", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc000071980)({ - authType: (*main.supportedAuth)(0xc0001dd3e0)({ + opts: (*main.methodOptions)(0xc000079aa0)({ + authType: (*main.supportedAuth)(0xc000217560)({ id: (string) (len=5) "admin", name: (string) (len=5) "Admin", context: (map[string]string) (len=1) { @@ -96,8 +96,8 @@ name: (string) (len=15) "BanUserResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc000071b60)({ - authType: (*main.supportedAuth)(0xc0001dd470)({ + opts: (*main.methodOptions)(0xc000079c80)({ + authType: (*main.supportedAuth)(0xc0002175f0)({ id: (string) (len=5) "admin", name: (string) (len=5) "Admin", context: (map[string]string) (len=1) { @@ -125,8 +125,8 @@ name: (string) (len=7) "LndSeed", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc000071d40)({ - authType: (*main.supportedAuth)(0xc0001dd500)({ + opts: (*main.methodOptions)(0xc000079e60)({ + authType: (*main.supportedAuth)(0xc000217680)({ id: (string) (len=5) "admin", name: (string) (len=5) "Admin", context: (map[string]string) (len=1) { @@ -145,6 +145,35 @@ serverStream: (bool) false }), (*main.Method)(0xc000274c30)({ + in: (main.MethodMessage) { + name: (string) (len=5) "Empty", + hasZeroFields: (bool) true + }, + name: (string) (len=12) "ListChannels", + out: (main.MethodMessage) { + name: (string) (len=11) "LndChannels", + hasZeroFields: (bool) false + }, + opts: (*main.methodOptions)(0xc0000ae4e0)({ + authType: (*main.supportedAuth)(0xc000217710)({ + id: (string) (len=5) "admin", + name: (string) (len=5) "Admin", + context: (map[string]string) (len=1) { + (string) (len=8) "admin_id": (string) (len=6) "string" + } + }), + method: (string) (len=3) "get", + route: (main.decodedRoute) { + route: (string) (len=19) "/api/admin/channels", + params: ([]string) + }, + query: ([]string) , + nostr: (bool) true, + batch: (bool) false + }), + serverStream: (bool) false + }), + (*main.Method)(0xc000274c80)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -154,8 +183,8 @@ name: (string) (len=12) "UsageMetrics", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc000071f20)({ - authType: (*main.supportedAuth)(0xc0001dd590)({ + opts: (*main.methodOptions)(0xc0000ae720)({ + authType: (*main.supportedAuth)(0xc0002177a0)({ id: (string) (len=7) "metrics", name: (string) (len=7) "Metrics", context: (map[string]string) (len=1) { @@ -173,7 +202,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000274c80)({ + (*main.Method)(0xc000274cd0)({ in: (main.MethodMessage) { name: (string) (len=18) "AppsMetricsRequest", hasZeroFields: (bool) false @@ -183,8 +212,8 @@ name: (string) (len=11) "AppsMetrics", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0000ae5a0)({ - authType: (*main.supportedAuth)(0xc0001dd620)({ + opts: (*main.methodOptions)(0xc0000ae900)({ + authType: (*main.supportedAuth)(0xc000217830)({ id: (string) (len=7) "metrics", name: (string) (len=7) "Metrics", context: (map[string]string) (len=1) { @@ -202,7 +231,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000274cd0)({ + (*main.Method)(0xc000274d20)({ in: (main.MethodMessage) { name: (string) (len=17) "LndMetricsRequest", hasZeroFields: (bool) false @@ -212,8 +241,8 @@ name: (string) (len=10) "LndMetrics", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0000ae7e0)({ - authType: (*main.supportedAuth)(0xc0001dd6b0)({ + opts: (*main.methodOptions)(0xc0000aeae0)({ + authType: (*main.supportedAuth)(0xc0002178c0)({ id: (string) (len=7) "metrics", name: (string) (len=7) "Metrics", context: (map[string]string) (len=1) { @@ -231,7 +260,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000274d20)({ + (*main.Method)(0xc000274d70)({ in: (main.MethodMessage) { name: (string) (len=30) "CreateOneTimeInviteLinkRequest", hasZeroFields: (bool) false @@ -241,8 +270,8 @@ name: (string) (len=31) "CreateOneTimeInviteLinkResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0000aea20)({ - authType: (*main.supportedAuth)(0xc0001dd740)({ + opts: (*main.methodOptions)(0xc0000aed20)({ + authType: (*main.supportedAuth)(0xc000217950)({ id: (string) (len=5) "admin", name: (string) (len=5) "Admin", context: (map[string]string) (len=1) { @@ -260,7 +289,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000274d70)({ + (*main.Method)(0xc000274dc0)({ in: (main.MethodMessage) { name: (string) (len=26) "GetInviteTokenStateRequest", hasZeroFields: (bool) false @@ -270,8 +299,8 @@ name: (string) (len=27) "GetInviteTokenStateResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0000aec60)({ - authType: (*main.supportedAuth)(0xc0001dd7d0)({ + opts: (*main.methodOptions)(0xc0000aefc0)({ + authType: (*main.supportedAuth)(0xc0002179e0)({ id: (string) (len=5) "admin", name: (string) (len=5) "Admin", context: (map[string]string) (len=1) { @@ -289,7 +318,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000274dc0)({ + (*main.Method)(0xc000274e10)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -299,8 +328,8 @@ name: (string) (len=5) "Empty", hasZeroFields: (bool) true }, - opts: (*main.methodOptions)(0xc0000aede0)({ - authType: (*main.supportedAuth)(0xc0001dd860)({ + opts: (*main.methodOptions)(0xc0000af1a0)({ + authType: (*main.supportedAuth)(0xc000217a70)({ id: (string) (len=5) "guest", name: (string) (len=5) "Guest", context: (map[string]string) { @@ -317,7 +346,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000274e10)({ + (*main.Method)(0xc000274e60)({ in: (main.MethodMessage) { name: (string) (len=25) "EncryptionExchangeRequest", hasZeroFields: (bool) false @@ -327,8 +356,8 @@ name: (string) (len=5) "Empty", hasZeroFields: (bool) true }, - opts: (*main.methodOptions)(0xc0000aefc0)({ - authType: (*main.supportedAuth)(0xc0001dd920)({ + opts: (*main.methodOptions)(0xc0000af320)({ + authType: (*main.supportedAuth)(0xc000217b30)({ id: (string) (len=5) "guest", name: (string) (len=5) "Guest", context: (map[string]string) { @@ -345,7 +374,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000274e60)({ + (*main.Method)(0xc000274eb0)({ in: (main.MethodMessage) { name: (string) (len=27) "SetMockInvoiceAsPaidRequest", hasZeroFields: (bool) false @@ -355,8 +384,8 @@ name: (string) (len=5) "Empty", hasZeroFields: (bool) true }, - opts: (*main.methodOptions)(0xc0000af200)({ - authType: (*main.supportedAuth)(0xc0001dd9b0)({ + opts: (*main.methodOptions)(0xc0003c8060)({ + authType: (*main.supportedAuth)(0xc000217bc0)({ id: (string) (len=5) "guest", name: (string) (len=5) "Guest", context: (map[string]string) { @@ -373,7 +402,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000274f00)({ + (*main.Method)(0xc000274f50)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -383,8 +412,8 @@ name: (string) (len=25) "LnurlWithdrawInfoResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0001fe0c0)({ - authType: (*main.supportedAuth)(0xc0001ddb00)({ + opts: (*main.methodOptions)(0xc0003c83c0)({ + authType: (*main.supportedAuth)(0xc000217d10)({ id: (string) (len=5) "guest", name: (string) (len=5) "Guest", context: (map[string]string) { @@ -403,7 +432,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000274fa0)({ + (*main.Method)(0xc000274ff0)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -413,8 +442,8 @@ name: (string) (len=5) "Empty", hasZeroFields: (bool) true }, - opts: (*main.methodOptions)(0xc0001fe420)({ - authType: (*main.supportedAuth)(0xc0001ddc50)({ + opts: (*main.methodOptions)(0xc0003c8720)({ + authType: (*main.supportedAuth)(0xc000217e60)({ id: (string) (len=5) "guest", name: (string) (len=5) "Guest", context: (map[string]string) { @@ -434,7 +463,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275040)({ + (*main.Method)(0xc000275090)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -444,8 +473,8 @@ name: (string) (len=20) "LnurlPayInfoResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0001fe780)({ - authType: (*main.supportedAuth)(0xc0001ddd70)({ + opts: (*main.methodOptions)(0xc0003c8a80)({ + authType: (*main.supportedAuth)(0xc000217f80)({ id: (string) (len=5) "guest", name: (string) (len=5) "Guest", context: (map[string]string) { @@ -464,7 +493,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc0002750e0)({ + (*main.Method)(0xc000275130)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -474,8 +503,8 @@ name: (string) (len=22) "HandleLnurlPayResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0001feb40)({ - authType: (*main.supportedAuth)(0xc0001ddec0)({ + opts: (*main.methodOptions)(0xc0003c8e40)({ + authType: (*main.supportedAuth)(0xc0003ca0f0)({ id: (string) (len=5) "guest", name: (string) (len=5) "Guest", context: (map[string]string) { @@ -497,7 +526,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275130)({ + (*main.Method)(0xc000275180)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -507,8 +536,8 @@ name: (string) (len=20) "LnurlPayInfoResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0001fecc0)({ - authType: (*main.supportedAuth)(0xc0001ddf50)({ + opts: (*main.methodOptions)(0xc0003c8fc0)({ + authType: (*main.supportedAuth)(0xc0003ca180)({ id: (string) (len=5) "guest", name: (string) (len=5) "Guest", context: (map[string]string) { @@ -527,7 +556,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275180)({ + (*main.Method)(0xc0002751d0)({ in: (main.MethodMessage) { name: (string) (len=23) "EnrollAdminTokenRequest", hasZeroFields: (bool) false @@ -537,8 +566,8 @@ name: (string) (len=5) "Empty", hasZeroFields: (bool) true }, - opts: (*main.methodOptions)(0xc0001fef00)({ - authType: (*main.supportedAuth)(0xc000222000)({ + opts: (*main.methodOptions)(0xc0003c9200)({ + authType: (*main.supportedAuth)(0xc0003ca210)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { @@ -558,7 +587,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275220)({ + (*main.Method)(0xc000275270)({ in: (main.MethodMessage) { name: (string) (len=27) "LinkNPubThroughTokenRequest", hasZeroFields: (bool) false @@ -568,8 +597,8 @@ name: (string) (len=5) "Empty", hasZeroFields: (bool) true }, - opts: (*main.methodOptions)(0xc0001ff0e0)({ - authType: (*main.supportedAuth)(0xc000222090)({ + opts: (*main.methodOptions)(0xc0003c93e0)({ + authType: (*main.supportedAuth)(0xc0003ca2a0)({ id: (string) (len=8) "guestPub", name: (string) (len=12) "GuestWithPub", context: (map[string]string) (len=2) { @@ -588,7 +617,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275270)({ + (*main.Method)(0xc0002752c0)({ in: (main.MethodMessage) { name: (string) (len=20) "UseInviteLinkRequest", hasZeroFields: (bool) false @@ -598,13 +627,13 @@ name: (string) (len=5) "Empty", hasZeroFields: (bool) true }, - opts: (*main.methodOptions)(0xc0001ff2c0)({ - authType: (*main.supportedAuth)(0xc000222120)({ + opts: (*main.methodOptions)(0xc0003c95c0)({ + authType: (*main.supportedAuth)(0xc0003ca330)({ id: (string) (len=8) "guestPub", name: (string) (len=12) "GuestWithPub", context: (map[string]string) (len=2) { - (string) (len=6) "app_id": (string) (len=6) "string", - (string) (len=3) "pub": (string) (len=6) "string" + (string) (len=3) "pub": (string) (len=6) "string", + (string) (len=6) "app_id": (string) (len=6) "string" } }), method: (string) (len=4) "post", @@ -618,7 +647,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc0002752c0)({ + (*main.Method)(0xc000275310)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -628,8 +657,8 @@ name: (string) (len=11) "Application", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0001ff440)({ - authType: (*main.supportedAuth)(0xc0002221b0)({ + opts: (*main.methodOptions)(0xc0003c9740)({ + authType: (*main.supportedAuth)(0xc0003ca3c0)({ id: (string) (len=3) "app", name: (string) (len=3) "App", context: (map[string]string) (len=1) { @@ -647,7 +676,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275360)({ + (*main.Method)(0xc0002753b0)({ in: (main.MethodMessage) { name: (string) (len=17) "AddAppUserRequest", hasZeroFields: (bool) false @@ -657,8 +686,8 @@ name: (string) (len=7) "AppUser", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0001ff5c0)({ - authType: (*main.supportedAuth)(0xc000222240)({ + opts: (*main.methodOptions)(0xc0003c98c0)({ + authType: (*main.supportedAuth)(0xc0003ca450)({ id: (string) (len=3) "app", name: (string) (len=3) "App", context: (map[string]string) (len=1) { @@ -676,7 +705,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275400)({ + (*main.Method)(0xc000275450)({ in: (main.MethodMessage) { name: (string) (len=20) "AddAppInvoiceRequest", hasZeroFields: (bool) false @@ -686,8 +715,8 @@ name: (string) (len=18) "NewInvoiceResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0001ff740)({ - authType: (*main.supportedAuth)(0xc0002222d0)({ + opts: (*main.methodOptions)(0xc0003c9a40)({ + authType: (*main.supportedAuth)(0xc0003ca4e0)({ id: (string) (len=3) "app", name: (string) (len=3) "App", context: (map[string]string) (len=1) { @@ -705,7 +734,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275450)({ + (*main.Method)(0xc0002754a0)({ in: (main.MethodMessage) { name: (string) (len=24) "AddAppUserInvoiceRequest", hasZeroFields: (bool) false @@ -715,8 +744,8 @@ name: (string) (len=18) "NewInvoiceResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0001ff920)({ - authType: (*main.supportedAuth)(0xc000222360)({ + opts: (*main.methodOptions)(0xc0003c9c20)({ + authType: (*main.supportedAuth)(0xc0003ca570)({ id: (string) (len=3) "app", name: (string) (len=3) "App", context: (map[string]string) (len=1) { @@ -734,7 +763,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc0002754f0)({ + (*main.Method)(0xc000275540)({ in: (main.MethodMessage) { name: (string) (len=17) "GetAppUserRequest", hasZeroFields: (bool) false @@ -744,8 +773,8 @@ name: (string) (len=7) "AppUser", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0001ffaa0)({ - authType: (*main.supportedAuth)(0xc0002223f0)({ + opts: (*main.methodOptions)(0xc0003c9da0)({ + authType: (*main.supportedAuth)(0xc0003ca600)({ id: (string) (len=3) "app", name: (string) (len=3) "App", context: (map[string]string) (len=1) { @@ -763,7 +792,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275590)({ + (*main.Method)(0xc0002755e0)({ in: (main.MethodMessage) { name: (string) (len=24) "PayAppUserInvoiceRequest", hasZeroFields: (bool) false @@ -773,8 +802,8 @@ name: (string) (len=18) "PayInvoiceResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0001ffc20)({ - authType: (*main.supportedAuth)(0xc000222480)({ + opts: (*main.methodOptions)(0xc0003c9f20)({ + authType: (*main.supportedAuth)(0xc0003ca690)({ id: (string) (len=3) "app", name: (string) (len=3) "App", context: (map[string]string) (len=1) { @@ -792,7 +821,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc0002755e0)({ + (*main.Method)(0xc000275630)({ in: (main.MethodMessage) { name: (string) (len=34) "SendAppUserToAppUserPaymentRequest", hasZeroFields: (bool) false @@ -802,8 +831,8 @@ name: (string) (len=5) "Empty", hasZeroFields: (bool) true }, - opts: (*main.methodOptions)(0xc0001ffe00)({ - authType: (*main.supportedAuth)(0xc000222510)({ + opts: (*main.methodOptions)(0xc00040e120)({ + authType: (*main.supportedAuth)(0xc0003ca720)({ id: (string) (len=3) "app", name: (string) (len=3) "App", context: (map[string]string) (len=1) { @@ -821,7 +850,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275680)({ + (*main.Method)(0xc0002756d0)({ in: (main.MethodMessage) { name: (string) (len=30) "SendAppUserToAppPaymentRequest", hasZeroFields: (bool) false @@ -831,8 +860,8 @@ name: (string) (len=5) "Empty", hasZeroFields: (bool) true }, - opts: (*main.methodOptions)(0xc0001fff80)({ - authType: (*main.supportedAuth)(0xc0002225a0)({ + opts: (*main.methodOptions)(0xc00040e2a0)({ + authType: (*main.supportedAuth)(0xc0003ca7b0)({ id: (string) (len=3) "app", name: (string) (len=3) "App", context: (map[string]string) (len=1) { @@ -850,7 +879,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc0002756d0)({ + (*main.Method)(0xc000275720)({ in: (main.MethodMessage) { name: (string) (len=26) "GetAppUserLNURLInfoRequest", hasZeroFields: (bool) false @@ -860,8 +889,8 @@ name: (string) (len=20) "LnurlPayInfoResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b4120)({ - authType: (*main.supportedAuth)(0xc000222630)({ + opts: (*main.methodOptions)(0xc00040e420)({ + authType: (*main.supportedAuth)(0xc0003ca840)({ id: (string) (len=3) "app", name: (string) (len=3) "App", context: (map[string]string) (len=1) { @@ -879,7 +908,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275720)({ + (*main.Method)(0xc000275770)({ in: (main.MethodMessage) { name: (string) (len=28) "SetMockAppUserBalanceRequest", hasZeroFields: (bool) false @@ -889,8 +918,8 @@ name: (string) (len=5) "Empty", hasZeroFields: (bool) true }, - opts: (*main.methodOptions)(0xc0003b42a0)({ - authType: (*main.supportedAuth)(0xc0002226c0)({ + opts: (*main.methodOptions)(0xc00040e5a0)({ + authType: (*main.supportedAuth)(0xc0003ca8d0)({ id: (string) (len=3) "app", name: (string) (len=3) "App", context: (map[string]string) (len=1) { @@ -908,7 +937,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275770)({ + (*main.Method)(0xc0002757c0)({ in: (main.MethodMessage) { name: (string) (len=24) "SetMockAppBalanceRequest", hasZeroFields: (bool) false @@ -918,8 +947,8 @@ name: (string) (len=5) "Empty", hasZeroFields: (bool) true }, - opts: (*main.methodOptions)(0xc0003b4480)({ - authType: (*main.supportedAuth)(0xc000222750)({ + opts: (*main.methodOptions)(0xc00040e780)({ + authType: (*main.supportedAuth)(0xc0003ca960)({ id: (string) (len=3) "app", name: (string) (len=3) "App", context: (map[string]string) (len=1) { @@ -937,7 +966,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc0002757c0)({ + (*main.Method)(0xc000275810)({ in: (main.MethodMessage) { name: (string) (len=30) "RequestNPubLinkingTokenRequest", hasZeroFields: (bool) false @@ -947,8 +976,8 @@ name: (string) (len=31) "RequestNPubLinkingTokenResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b4660)({ - authType: (*main.supportedAuth)(0xc0002227e0)({ + opts: (*main.methodOptions)(0xc00040e960)({ + authType: (*main.supportedAuth)(0xc0003ca9f0)({ id: (string) (len=3) "app", name: (string) (len=3) "App", context: (map[string]string) (len=1) { @@ -966,7 +995,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275810)({ + (*main.Method)(0xc000275860)({ in: (main.MethodMessage) { name: (string) (len=30) "RequestNPubLinkingTokenRequest", hasZeroFields: (bool) false @@ -976,8 +1005,8 @@ name: (string) (len=31) "RequestNPubLinkingTokenResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b47e0)({ - authType: (*main.supportedAuth)(0xc000222870)({ + opts: (*main.methodOptions)(0xc00040eae0)({ + authType: (*main.supportedAuth)(0xc0003caa80)({ id: (string) (len=3) "app", name: (string) (len=3) "App", context: (map[string]string) (len=1) { @@ -995,7 +1024,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275860)({ + (*main.Method)(0xc0002758b0)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -1005,8 +1034,8 @@ name: (string) (len=5) "Empty", hasZeroFields: (bool) true }, - opts: (*main.methodOptions)(0xc0003b49c0)({ - authType: (*main.supportedAuth)(0xc000222900)({ + opts: (*main.methodOptions)(0xc00040ecc0)({ + authType: (*main.supportedAuth)(0xc0003cab10)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { @@ -1026,7 +1055,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc0002758b0)({ + (*main.Method)(0xc000275900)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -1036,14 +1065,14 @@ name: (string) (len=8) "UserInfo", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b4ba0)({ - authType: (*main.supportedAuth)(0xc000222990)({ + opts: (*main.methodOptions)(0xc00040eea0)({ + authType: (*main.supportedAuth)(0xc0003caba0)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { + (string) (len=11) "app_user_id": (string) (len=6) "string", (string) (len=7) "user_id": (string) (len=6) "string", - (string) (len=6) "app_id": (string) (len=6) "string", - (string) (len=11) "app_user_id": (string) (len=6) "string" + (string) (len=6) "app_id": (string) (len=6) "string" } }), method: (string) (len=4) "post", @@ -1057,7 +1086,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275950)({ + (*main.Method)(0xc0002759a0)({ in: (main.MethodMessage) { name: (string) (len=17) "AddProductRequest", hasZeroFields: (bool) false @@ -1067,8 +1096,8 @@ name: (string) (len=7) "Product", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b4d80)({ - authType: (*main.supportedAuth)(0xc000222a20)({ + opts: (*main.methodOptions)(0xc00040f080)({ + authType: (*main.supportedAuth)(0xc0003cac30)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { @@ -1088,7 +1117,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc0002759a0)({ + (*main.Method)(0xc0002759f0)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -1098,14 +1127,14 @@ name: (string) (len=18) "NewInvoiceResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b5200)({ - authType: (*main.supportedAuth)(0xc000222b40)({ + opts: (*main.methodOptions)(0xc00040f500)({ + authType: (*main.supportedAuth)(0xc0003cad50)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { - (string) (len=7) "user_id": (string) (len=6) "string", (string) (len=6) "app_id": (string) (len=6) "string", - (string) (len=11) "app_user_id": (string) (len=6) "string" + (string) (len=11) "app_user_id": (string) (len=6) "string", + (string) (len=7) "user_id": (string) (len=6) "string" } }), method: (string) (len=3) "get", @@ -1121,7 +1150,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc0002759f0)({ + (*main.Method)(0xc000275a40)({ in: (main.MethodMessage) { name: (string) (len=24) "GetUserOperationsRequest", hasZeroFields: (bool) false @@ -1131,14 +1160,14 @@ name: (string) (len=25) "GetUserOperationsResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b53e0)({ - authType: (*main.supportedAuth)(0xc000222bd0)({ + opts: (*main.methodOptions)(0xc00040f6e0)({ + authType: (*main.supportedAuth)(0xc0003cade0)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { - (string) (len=7) "user_id": (string) (len=6) "string", (string) (len=6) "app_id": (string) (len=6) "string", - (string) (len=11) "app_user_id": (string) (len=6) "string" + (string) (len=11) "app_user_id": (string) (len=6) "string", + (string) (len=7) "user_id": (string) (len=6) "string" } }), method: (string) (len=4) "post", @@ -1152,7 +1181,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275a90)({ + (*main.Method)(0xc000275ae0)({ in: (main.MethodMessage) { name: (string) (len=17) "NewAddressRequest", hasZeroFields: (bool) false @@ -1162,14 +1191,14 @@ name: (string) (len=18) "NewAddressResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b55c0)({ - authType: (*main.supportedAuth)(0xc000222c60)({ + opts: (*main.methodOptions)(0xc00040f8c0)({ + authType: (*main.supportedAuth)(0xc0003cae70)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { + (string) (len=11) "app_user_id": (string) (len=6) "string", (string) (len=7) "user_id": (string) (len=6) "string", - (string) (len=6) "app_id": (string) (len=6) "string", - (string) (len=11) "app_user_id": (string) (len=6) "string" + (string) (len=6) "app_id": (string) (len=6) "string" } }), method: (string) (len=4) "post", @@ -1183,7 +1212,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275b30)({ + (*main.Method)(0xc000275b80)({ in: (main.MethodMessage) { name: (string) (len=17) "PayAddressRequest", hasZeroFields: (bool) false @@ -1193,8 +1222,8 @@ name: (string) (len=18) "PayAddressResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b57a0)({ - authType: (*main.supportedAuth)(0xc000222cf0)({ + opts: (*main.methodOptions)(0xc00040faa0)({ + authType: (*main.supportedAuth)(0xc0003caf00)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { @@ -1214,7 +1243,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275bd0)({ + (*main.Method)(0xc000275c20)({ in: (main.MethodMessage) { name: (string) (len=17) "NewInvoiceRequest", hasZeroFields: (bool) false @@ -1224,8 +1253,8 @@ name: (string) (len=18) "NewInvoiceResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b5980)({ - authType: (*main.supportedAuth)(0xc000222d80)({ + opts: (*main.methodOptions)(0xc00040fc80)({ + authType: (*main.supportedAuth)(0xc0003caf90)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { @@ -1245,7 +1274,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275c70)({ + (*main.Method)(0xc000275cc0)({ in: (main.MethodMessage) { name: (string) (len=20) "DecodeInvoiceRequest", hasZeroFields: (bool) false @@ -1255,8 +1284,8 @@ name: (string) (len=21) "DecodeInvoiceResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b5b60)({ - authType: (*main.supportedAuth)(0xc000222e10)({ + opts: (*main.methodOptions)(0xc00040fe60)({ + authType: (*main.supportedAuth)(0xc0003cb020)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { @@ -1276,7 +1305,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275d10)({ + (*main.Method)(0xc000275d60)({ in: (main.MethodMessage) { name: (string) (len=17) "PayInvoiceRequest", hasZeroFields: (bool) false @@ -1286,8 +1315,8 @@ name: (string) (len=18) "PayInvoiceResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b5d40)({ - authType: (*main.supportedAuth)(0xc000222ea0)({ + opts: (*main.methodOptions)(0xc000412060)({ + authType: (*main.supportedAuth)(0xc0003cb0b0)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { @@ -1307,7 +1336,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275db0)({ + (*main.Method)(0xc000275e00)({ in: (main.MethodMessage) { name: (string) (len=22) "GetPaymentStateRequest", hasZeroFields: (bool) false @@ -1317,14 +1346,14 @@ name: (string) (len=12) "PaymentState", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b5f20)({ - authType: (*main.supportedAuth)(0xc000222f30)({ + opts: (*main.methodOptions)(0xc000412240)({ + authType: (*main.supportedAuth)(0xc0003cb140)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { - (string) (len=7) "user_id": (string) (len=6) "string", (string) (len=6) "app_id": (string) (len=6) "string", - (string) (len=11) "app_user_id": (string) (len=6) "string" + (string) (len=11) "app_user_id": (string) (len=6) "string", + (string) (len=7) "user_id": (string) (len=6) "string" } }), method: (string) (len=4) "post", @@ -1338,7 +1367,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275e50)({ + (*main.Method)(0xc000275ea0)({ in: (main.MethodMessage) { name: (string) (len=18) "OpenChannelRequest", hasZeroFields: (bool) false @@ -1348,8 +1377,8 @@ name: (string) (len=19) "OpenChannelResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b8120)({ - authType: (*main.supportedAuth)(0xc000222fc0)({ + opts: (*main.methodOptions)(0xc000412420)({ + authType: (*main.supportedAuth)(0xc0003cb1d0)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { @@ -1369,7 +1398,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275ef0)({ + (*main.Method)(0xc000275f40)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -1379,8 +1408,8 @@ name: (string) (len=17) "LnurlLinkResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b8300)({ - authType: (*main.supportedAuth)(0xc000223050)({ + opts: (*main.methodOptions)(0xc000412600)({ + authType: (*main.supportedAuth)(0xc0003cb260)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { @@ -1400,7 +1429,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc000275f90)({ + (*main.Method)(0xc00007a050)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -1410,14 +1439,14 @@ name: (string) (len=17) "LnurlLinkResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b84e0)({ - authType: (*main.supportedAuth)(0xc0002230e0)({ + opts: (*main.methodOptions)(0xc0004127e0)({ + authType: (*main.supportedAuth)(0xc0003cb2f0)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { - (string) (len=11) "app_user_id": (string) (len=6) "string", (string) (len=7) "user_id": (string) (len=6) "string", - (string) (len=6) "app_id": (string) (len=6) "string" + (string) (len=6) "app_id": (string) (len=6) "string", + (string) (len=11) "app_user_id": (string) (len=6) "string" } }), method: (string) (len=3) "get", @@ -1431,7 +1460,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc00007a0a0)({ + (*main.Method)(0xc00007a0f0)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -1441,8 +1470,8 @@ name: (string) (len=17) "LnurlLinkResponse", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b86c0)({ - authType: (*main.supportedAuth)(0xc000223170)({ + opts: (*main.methodOptions)(0xc0004129c0)({ + authType: (*main.supportedAuth)(0xc0003cb380)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { @@ -1462,7 +1491,7 @@ }), serverStream: (bool) false }), - (*main.Method)(0xc00007a140)({ + (*main.Method)(0xc00007a190)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -1472,14 +1501,14 @@ name: (string) (len=17) "LiveUserOperation", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b88a0)({ - authType: (*main.supportedAuth)(0xc000223200)({ + opts: (*main.methodOptions)(0xc000412ba0)({ + authType: (*main.supportedAuth)(0xc0003cb410)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { + (string) (len=7) "user_id": (string) (len=6) "string", (string) (len=6) "app_id": (string) (len=6) "string", - (string) (len=11) "app_user_id": (string) (len=6) "string", - (string) (len=7) "user_id": (string) (len=6) "string" + (string) (len=11) "app_user_id": (string) (len=6) "string" } }), method: (string) (len=4) "post", @@ -1493,7 +1522,7 @@ }), serverStream: (bool) true }), - (*main.Method)(0xc00007a1e0)({ + (*main.Method)(0xc00007a230)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -1503,8 +1532,8 @@ name: (string) (len=15) "MigrationUpdate", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b8a80)({ - authType: (*main.supportedAuth)(0xc000223290)({ + opts: (*main.methodOptions)(0xc000412d80)({ + authType: (*main.supportedAuth)(0xc0003cb4a0)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { @@ -1524,7 +1553,7 @@ }), serverStream: (bool) true }), - (*main.Method)(0xc00007a230)({ + (*main.Method)(0xc00007a280)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -1534,14 +1563,14 @@ name: (string) (len=9) "HttpCreds", hasZeroFields: (bool) false }, - opts: (*main.methodOptions)(0xc0003b8c60)({ - authType: (*main.supportedAuth)(0xc000223320)({ + opts: (*main.methodOptions)(0xc000412f60)({ + authType: (*main.supportedAuth)(0xc0003cb530)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { - (string) (len=11) "app_user_id": (string) (len=6) "string", (string) (len=7) "user_id": (string) (len=6) "string", - (string) (len=6) "app_id": (string) (len=6) "string" + (string) (len=6) "app_id": (string) (len=6) "string", + (string) (len=11) "app_user_id": (string) (len=6) "string" } }), method: (string) (len=4) "post", @@ -1555,7 +1584,7 @@ }), serverStream: (bool) true }), - (*main.Method)(0xc00007a280)({ + (*main.Method)(0xc00007a2d0)({ in: (main.MethodMessage) { name: (string) (len=5) "Empty", hasZeroFields: (bool) true @@ -1565,14 +1594,14 @@ name: (string) (len=5) "Empty", hasZeroFields: (bool) true }, - opts: (*main.methodOptions)(0xc0003b8ea0)({ - authType: (*main.supportedAuth)(0xc0002233e0)({ + opts: (*main.methodOptions)(0xc0004131a0)({ + authType: (*main.supportedAuth)(0xc0003cb5f0)({ id: (string) (len=4) "user", name: (string) (len=4) "User", context: (map[string]string) (len=3) { - (string) (len=7) "user_id": (string) (len=6) "string", (string) (len=6) "app_id": (string) (len=6) "string", - (string) (len=11) "app_user_id": (string) (len=6) "string" + (string) (len=11) "app_user_id": (string) (len=6) "string", + (string) (len=7) "user_id": (string) (len=6) "string" } }), method: (string) (len=4) "post", @@ -1589,7 +1618,7 @@ } ([]*main.Enum) (len=2 cap=2) { - (*main.Enum)(0xc0001dc810)({ + (*main.Enum)(0xc000216990)({ name: (string) (len=11) "AddressType", values: ([]main.EnumValue) (len=3 cap=4) { (main.EnumValue) { @@ -1606,7 +1635,7 @@ } } }), - (*main.Enum)(0xc0001dc870)({ + (*main.Enum)(0xc0002169f0)({ name: (string) (len=17) "UserOperationType", values: ([]main.EnumValue) (len=6 cap=8) { (main.EnumValue) { @@ -1637,1004 +1666,32 @@ }) } -(map[string]*main.Message) (len=79) { - (string) (len=17) "LndMetricsRequest": (*main.Message)(0xc00014cdb0)({ - fullName: (string) (len=17) "LndMetricsRequest", - name: (string) (len=17) "LndMetricsRequest", - fields: (map[string]*main.Field) (len=2) { - (string) (len=9) "from_unix": (*main.Field)(0xc00007f100)({ - name: (string) (len=9) "from_unix", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) true, - oneOfName: (string) "" - }), - (string) (len=7) "to_unix": (*main.Field)(0xc00007f140)({ - name: (string) (len=7) "to_unix", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) true, - oneOfName: (string) "" - }) - } - }), - (string) (len=7) "AuthApp": (*main.Message)(0xc00014d470)({ - fullName: (string) (len=7) "AuthApp", - name: (string) (len=7) "AuthApp", - fields: (map[string]*main.Field) (len=2) { - (string) (len=10) "auth_token": (*main.Field)(0xc000314580)({ - name: (string) (len=10) "auth_token", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=3) "app": (*main.Field)(0xc000314540)({ - name: (string) (len=3) "app", - kind: (string) (len=11) "Application", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=20) "DecodeInvoiceRequest": (*main.Message)(0xc00014db30)({ - fullName: (string) (len=20) "DecodeInvoiceRequest", - name: (string) (len=20) "DecodeInvoiceRequest", - fields: (map[string]*main.Field) (len=1) { - (string) (len=7) "invoice": (*main.Field)(0xc000314f80)({ - name: (string) (len=7) "invoice", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=17) "LnurlLinkResponse": (*main.Message)(0xc00014de30)({ - fullName: (string) (len=17) "LnurlLinkResponse", - name: (string) (len=17) "LnurlLinkResponse", - fields: (map[string]*main.Field) (len=2) { - (string) (len=5) "lnurl": (*main.Field)(0xc000315440)({ - name: (string) (len=5) "lnurl", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=2) "k1": (*main.Field)(0xc000315480)({ - name: (string) (len=2) "k1", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=31) "RequestNPubLinkingTokenResponse": (*main.Message)(0xc0001dc4b0)({ - fullName: (string) (len=31) "RequestNPubLinkingTokenResponse", - name: (string) (len=31) "RequestNPubLinkingTokenResponse", - fields: (map[string]*main.Field) (len=1) { - (string) (len=5) "token": (*main.Field)(0xc0000b0b00)({ - name: (string) (len=5) "token", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=31) "CreateOneTimeInviteLinkResponse": (*main.Message)(0xc0001dc690)({ - fullName: (string) (len=31) "CreateOneTimeInviteLinkResponse", - name: (string) (len=31) "CreateOneTimeInviteLinkResponse", - fields: (map[string]*main.Field) (len=1) { - (string) (len=15) "invitation_link": (*main.Field)(0xc0000b0d40)({ - name: (string) (len=15) "invitation_link", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=9) "UsersInfo": (*main.Message)(0xc00014cc90)({ - fullName: (string) (len=9) "UsersInfo", - name: (string) (len=9) "UsersInfo", - fields: (map[string]*main.Field) (len=6) { - (string) (len=20) "always_been_inactive": (*main.Field)(0xc00007edc0)({ - name: (string) (len=20) "always_been_inactive", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=11) "balance_avg": (*main.Field)(0xc00007ee00)({ - name: (string) (len=11) "balance_avg", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=14) "balance_median": (*main.Field)(0xc00007ee40)({ - name: (string) (len=14) "balance_median", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=5) "total": (*main.Field)(0xc00007ed00)({ - name: (string) (len=5) "total", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=10) "no_balance": (*main.Field)(0xc00007ed40)({ - name: (string) (len=10) "no_balance", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=16) "negative_balance": (*main.Field)(0xc00007ed80)({ - name: (string) (len=16) "negative_balance", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=12) "RoutingEvent": (*main.Message)(0xc00014ce10)({ - fullName: (string) (len=12) "RoutingEvent", - name: (string) (len=12) "RoutingEvent", - fields: (map[string]*main.Field) (len=12) { - (string) (len=19) "outgoing_channel_id": (*main.Field)(0xc00007f200)({ - name: (string) (len=19) "outgoing_channel_id", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=17) "incoming_amt_msat": (*main.Field)(0xc00007f300)({ - name: (string) (len=17) "incoming_amt_msat", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=7) "settled": (*main.Field)(0xc00007f3c0)({ - name: (string) (len=7) "settled", - kind: (string) (len=4) "bool", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=8) "offchain": (*main.Field)(0xc00007f400)({ - name: (string) (len=8) "offchain", - kind: (string) (len=4) "bool", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=19) "incoming_channel_id": (*main.Field)(0xc00007f180)({ - name: (string) (len=19) "incoming_channel_id", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=16) "incoming_htlc_id": (*main.Field)(0xc00007f1c0)({ - name: (string) (len=16) "incoming_htlc_id", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=16) "outgoing_htlc_id": (*main.Field)(0xc00007f240)({ - name: (string) (len=16) "outgoing_htlc_id", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=12) "timestamp_ns": (*main.Field)(0xc00007f280)({ - name: (string) (len=12) "timestamp_ns", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=10) "event_type": (*main.Field)(0xc00007f2c0)({ - name: (string) (len=10) "event_type", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=17) "outgoing_amt_msat": (*main.Field)(0xc00007f340)({ - name: (string) (len=17) "outgoing_amt_msat", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=14) "failure_string": (*main.Field)(0xc00007f380)({ - name: (string) (len=14) "failure_string", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=18) "forward_fail_event": (*main.Field)(0xc00007f440)({ - name: (string) (len=18) "forward_fail_event", - kind: (string) (len=4) "bool", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=8) "UserInfo": (*main.Message)(0xc00014dfb0)({ - fullName: (string) (len=8) "UserInfo", - name: (string) (len=8) "UserInfo", - fields: (map[string]*main.Field) (len=7) { - (string) (len=6) "userId": (*main.Field)(0xc000315900)({ - name: (string) (len=6) "userId", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=7) "balance": (*main.Field)(0xc000315940)({ - name: (string) (len=7) "balance", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=16) "max_withdrawable": (*main.Field)(0xc000315980)({ - name: (string) (len=16) "max_withdrawable", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=15) "user_identifier": (*main.Field)(0xc0003159c0)({ - name: (string) (len=15) "user_identifier", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=15) "service_fee_bps": (*main.Field)(0xc000315a00)({ - name: (string) (len=15) "service_fee_bps", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=19) "network_max_fee_bps": (*main.Field)(0xc000315a40)({ - name: (string) (len=19) "network_max_fee_bps", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=21) "network_max_fee_fixed": (*main.Field)(0xc000315a80)({ - name: (string) (len=21) "network_max_fee_fixed", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=17) "LndGetInfoRequest": (*main.Message)(0xc00014d110)({ - fullName: (string) (len=17) "LndGetInfoRequest", - name: (string) (len=17) "LndGetInfoRequest", - fields: (map[string]*main.Field) (len=1) { - (string) (len=6) "nodeId": (*main.Field)(0xc00007fdc0)({ - name: (string) (len=6) "nodeId", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=13) "AddAppRequest": (*main.Message)(0xc00014d350)({ - fullName: (string) (len=13) "AddAppRequest", - name: (string) (len=13) "AddAppRequest", - fields: (map[string]*main.Field) (len=2) { - (string) (len=4) "name": (*main.Field)(0xc000314180)({ - name: (string) (len=4) "name", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=19) "allow_user_creation": (*main.Field)(0xc0003141c0)({ - name: (string) (len=19) "allow_user_creation", - kind: (string) (len=4) "bool", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=24) "AddAppUserInvoiceRequest": (*main.Message)(0xc00014d5f0)({ - fullName: (string) (len=24) "AddAppUserInvoiceRequest", - name: (string) (len=24) "AddAppUserInvoiceRequest", - fields: (map[string]*main.Field) (len=4) { - (string) (len=19) "receiver_identifier": (*main.Field)(0xc000314800)({ - name: (string) (len=19) "receiver_identifier", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=16) "payer_identifier": (*main.Field)(0xc000314840)({ - name: (string) (len=16) "payer_identifier", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=17) "http_callback_url": (*main.Field)(0xc000314880)({ - name: (string) (len=17) "http_callback_url", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=11) "invoice_req": (*main.Field)(0xc0003148c0)({ - name: (string) (len=11) "invoice_req", - kind: (string) (len=17) "NewInvoiceRequest", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=27) "LinkNPubThroughTokenRequest": (*main.Message)(0xc0001dc510)({ - fullName: (string) (len=27) "LinkNPubThroughTokenRequest", - name: (string) (len=27) "LinkNPubThroughTokenRequest", - fields: (map[string]*main.Field) (len=1) { - (string) (len=5) "token": (*main.Field)(0xc0000b0b40)({ - name: (string) (len=5) "token", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=18) "PayInvoiceResponse": (*main.Message)(0xc00014dc50)({ - fullName: (string) (len=18) "PayInvoiceResponse", - name: (string) (len=18) "PayInvoiceResponse", - fields: (map[string]*main.Field) (len=5) { - (string) (len=11) "amount_paid": (*main.Field)(0xc0003150c0)({ - name: (string) (len=11) "amount_paid", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=12) "operation_id": (*main.Field)(0xc000315100)({ - name: (string) (len=12) "operation_id", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=11) "service_fee": (*main.Field)(0xc000315140)({ - name: (string) (len=11) "service_fee", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=11) "network_fee": (*main.Field)(0xc000315180)({ - name: (string) (len=11) "network_fee", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=8) "preimage": (*main.Field)(0xc000315080)({ - name: (string) (len=8) "preimage", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=20) "LnurlPayInfoResponse": (*main.Message)(0xc00014def0)({ - fullName: (string) (len=20) "LnurlPayInfoResponse", - name: (string) (len=20) "LnurlPayInfoResponse", - fields: (map[string]*main.Field) (len=7) { - (string) (len=8) "metadata": (*main.Field)(0xc0003157c0)({ - name: (string) (len=8) "metadata", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=11) "allowsNostr": (*main.Field)(0xc000315800)({ - name: (string) (len=11) "allowsNostr", - kind: (string) (len=4) "bool", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=11) "nostrPubkey": (*main.Field)(0xc000315840)({ - name: (string) (len=11) "nostrPubkey", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=3) "tag": (*main.Field)(0xc0003156c0)({ - name: (string) (len=3) "tag", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=8) "callback": (*main.Field)(0xc000315700)({ - name: (string) (len=8) "callback", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=11) "maxSendable": (*main.Field)(0xc000315740)({ - name: (string) (len=11) "maxSendable", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=11) "minSendable": (*main.Field)(0xc000315780)({ - name: (string) (len=11) "minSendable", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=16) "ClosureMigration": (*main.Message)(0xc0001dc390)({ - fullName: (string) (len=16) "ClosureMigration", - name: (string) (len=16) "ClosureMigration", - fields: (map[string]*main.Field) (len=1) { - (string) (len=14) "closes_at_unix": (*main.Field)(0xc0000b0940)({ - name: (string) (len=14) "closes_at_unix", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=17) "ChainBalanceEvent": (*main.Message)(0xc00014ced0)({ - fullName: (string) (len=17) "ChainBalanceEvent", - name: (string) (len=17) "ChainBalanceEvent", - fields: (map[string]*main.Field) (len=4) { - (string) (len=12) "block_height": (*main.Field)(0xc00007f580)({ - name: (string) (len=12) "block_height", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=17) "confirmed_balance": (*main.Field)(0xc00007f5c0)({ - name: (string) (len=17) "confirmed_balance", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=19) "unconfirmed_balance": (*main.Field)(0xc00007f600)({ - name: (string) (len=19) "unconfirmed_balance", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=13) "total_balance": (*main.Field)(0xc00007f640)({ - name: (string) (len=13) "total_balance", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=14) "LndNodeMetrics": (*main.Message)(0xc00014d050)({ - fullName: (string) (len=14) "LndNodeMetrics", - name: (string) (len=14) "LndNodeMetrics", - fields: (map[string]*main.Field) (len=9) { - (string) (len=23) "channels_balance_events": (*main.Field)(0xc00007fb40)({ - name: (string) (len=23) "channels_balance_events", - kind: (string) (len=19) "ChannelBalanceEvent", - isMap: (bool) false, - isArray: (bool) true, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=15) "channel_routing": (*main.Field)(0xc00007fd40)({ - name: (string) (len=15) "channel_routing", - kind: (string) (len=14) "ChannelRouting", - isMap: (bool) false, - isArray: (bool) true, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=15) "online_channels": (*main.Field)(0xc00007fc00)({ - name: (string) (len=15) "online_channels", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=16) "pending_channels": (*main.Field)(0xc00007fc40)({ - name: (string) (len=16) "pending_channels", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=16) "closing_channels": (*main.Field)(0xc00007fc80)({ - name: (string) (len=16) "closing_channels", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=13) "open_channels": (*main.Field)(0xc00007fcc0)({ - name: (string) (len=13) "open_channels", - kind: (string) (len=11) "OpenChannel", - isMap: (bool) false, - isArray: (bool) true, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=15) "closed_channels": (*main.Field)(0xc00007fd00)({ - name: (string) (len=15) "closed_channels", - kind: (string) (len=13) "ClosedChannel", - isMap: (bool) false, - isArray: (bool) true, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=20) "chain_balance_events": (*main.Field)(0xc00007fb80)({ - name: (string) (len=20) "chain_balance_events", - kind: (string) (len=17) "ChainBalanceEvent", - isMap: (bool) false, - isArray: (bool) true, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=16) "offline_channels": (*main.Field)(0xc00007fbc0)({ - name: (string) (len=16) "offline_channels", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=13) "UserOperation": (*main.Message)(0xc0001dc090)({ - fullName: (string) (len=13) "UserOperation", - name: (string) (len=13) "UserOperation", - fields: (map[string]*main.Field) (len=11) { - (string) (len=10) "paidAtUnix": (*main.Field)(0xc000315c80)({ - name: (string) (len=10) "paidAtUnix", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=7) "inbound": (*main.Field)(0xc000315d00)({ - name: (string) (len=7) "inbound", - kind: (string) (len=4) "bool", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=6) "amount": (*main.Field)(0xc000315d40)({ - name: (string) (len=6) "amount", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=11) "operationId": (*main.Field)(0xc000315dc0)({ - name: (string) (len=11) "operationId", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=9) "confirmed": (*main.Field)(0xc000315e80)({ - name: (string) (len=9) "confirmed", - kind: (string) (len=4) "bool", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=7) "tx_hash": (*main.Field)(0xc000315ec0)({ - name: (string) (len=7) "tx_hash", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=8) "internal": (*main.Field)(0xc000315f00)({ - name: (string) (len=8) "internal", - kind: (string) (len=4) "bool", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=4) "type": (*main.Field)(0xc000315cc0)({ - name: (string) (len=4) "type", - kind: (string) (len=17) "UserOperationType", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) true, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=10) "identifier": (*main.Field)(0xc000315d80)({ - name: (string) (len=10) "identifier", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=11) "service_fee": (*main.Field)(0xc000315e00)({ - name: (string) (len=11) "service_fee", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=11) "network_fee": (*main.Field)(0xc000315e40)({ - name: (string) (len=11) "network_fee", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=9) "HttpCreds": (*main.Message)(0xc0001dc570)({ - fullName: (string) (len=9) "HttpCreds", - name: (string) (len=9) "HttpCreds", - fields: (map[string]*main.Field) (len=2) { - (string) (len=5) "token": (*main.Field)(0xc0000b0bc0)({ - name: (string) (len=5) "token", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=3) "url": (*main.Field)(0xc0000b0b80)({ - name: (string) (len=3) "url", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=26) "GetInviteTokenStateRequest": (*main.Message)(0xc0001dc750)({ - fullName: (string) (len=26) "GetInviteTokenStateRequest", - name: (string) (len=26) "GetInviteTokenStateRequest", - fields: (map[string]*main.Field) (len=1) { - (string) (len=12) "invite_token": (*main.Field)(0xc0000b0dc0)({ - name: (string) (len=12) "invite_token", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=19) "ChannelBalanceEvent": (*main.Message)(0xc00014ce70)({ - fullName: (string) (len=19) "ChannelBalanceEvent", - name: (string) (len=19) "ChannelBalanceEvent", - fields: (map[string]*main.Field) (len=4) { - (string) (len=12) "block_height": (*main.Field)(0xc00007f480)({ - name: (string) (len=12) "block_height", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=10) "channel_id": (*main.Field)(0xc00007f4c0)({ - name: (string) (len=10) "channel_id", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=18) "local_balance_sats": (*main.Field)(0xc00007f500)({ - name: (string) (len=18) "local_balance_sats", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=19) "remote_balance_sats": (*main.Field)(0xc00007f540)({ - name: (string) (len=19) "remote_balance_sats", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=11) "OpenChannel": (*main.Message)(0xc00014cf30)({ +(map[string]*main.Message) (len=80) { + (string) (len=11) "OpenChannel": (*main.Message)(0xc0001a1050)({ fullName: (string) (len=11) "OpenChannel", name: (string) (len=11) "OpenChannel", - fields: (map[string]*main.Field) (len=6) { - (string) (len=10) "channel_id": (*main.Field)(0xc00007f680)({ + fields: (map[string]*main.Field) (len=7) { + (string) (len=14) "remote_balance": (*main.Field)(0xc00048b7c0)({ + name: (string) (len=14) "remote_balance", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=5) "label": (*main.Field)(0xc00048b800)({ + name: (string) (len=5) "label", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=10) "channel_id": (*main.Field)(0xc00048b680)({ name: (string) (len=10) "channel_id", kind: (string) (len=6) "string", isMap: (bool) false, @@ -2644,7 +1701,7 @@ isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=8) "capacity": (*main.Field)(0xc00007f6c0)({ + (string) (len=8) "capacity": (*main.Field)(0xc00048b6c0)({ name: (string) (len=8) "capacity", kind: (string) (len=5) "int64", isMap: (bool) false, @@ -2654,7 +1711,7 @@ isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=6) "active": (*main.Field)(0xc00007f700)({ + (string) (len=6) "active": (*main.Field)(0xc00048b700)({ name: (string) (len=6) "active", kind: (string) (len=4) "bool", isMap: (bool) false, @@ -2664,7 +1721,7 @@ isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=8) "lifetime": (*main.Field)(0xc00007f740)({ + (string) (len=8) "lifetime": (*main.Field)(0xc00048b740)({ name: (string) (len=8) "lifetime", kind: (string) (len=5) "int64", isMap: (bool) false, @@ -2674,7 +1731,7 @@ isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=13) "local_balance": (*main.Field)(0xc00007f780)({ + (string) (len=13) "local_balance": (*main.Field)(0xc00048b780)({ name: (string) (len=13) "local_balance", kind: (string) (len=5) "int64", isMap: (bool) false, @@ -2683,87 +1740,15 @@ isMessage: (bool) false, isOptional: (bool) false, oneOfName: (string) "" - }), - (string) (len=14) "remote_balance": (*main.Field)(0xc00007f7c0)({ - name: (string) (len=14) "remote_balance", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" }) } }), - (string) (len=15) "BanUserResponse": (*main.Message)(0xc00014d2f0)({ - fullName: (string) (len=15) "BanUserResponse", - name: (string) (len=15) "BanUserResponse", - fields: (map[string]*main.Field) (len=2) { - (string) (len=16) "banned_app_users": (*main.Field)(0xc0003140c0)({ - name: (string) (len=16) "banned_app_users", - kind: (string) (len=13) "BannedAppUser", - isMap: (bool) false, - isArray: (bool) true, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=12) "balance_sats": (*main.Field)(0xc000314080)({ - name: (string) (len=12) "balance_sats", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=7) "AppUser": (*main.Message)(0xc00014d530)({ - fullName: (string) (len=7) "AppUser", - name: (string) (len=7) "AppUser", - fields: (map[string]*main.Field) (len=3) { - (string) (len=10) "identifier": (*main.Field)(0xc000314680)({ - name: (string) (len=10) "identifier", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=4) "info": (*main.Field)(0xc0003146c0)({ - name: (string) (len=4) "info", - kind: (string) (len=8) "UserInfo", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=16) "max_withdrawable": (*main.Field)(0xc000314700)({ - name: (string) (len=16) "max_withdrawable", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=12) "PaymentState": (*main.Message)(0xc00014dd10)({ - fullName: (string) (len=12) "PaymentState", - name: (string) (len=12) "PaymentState", - fields: (map[string]*main.Field) (len=4) { - (string) (len=12) "paid_at_unix": (*main.Field)(0xc000315200)({ - name: (string) (len=12) "paid_at_unix", + (string) (len=14) "ChannelRouting": (*main.Message)(0xc0001a1110)({ + fullName: (string) (len=14) "ChannelRouting", + name: (string) (len=14) "ChannelRouting", + fields: (map[string]*main.Field) (len=10) { + (string) (len=11) "send_errors": (*main.Field)(0xc00048b940)({ + name: (string) (len=11) "send_errors", kind: (string) (len=5) "int64", isMap: (bool) false, isArray: (bool) false, @@ -2772,8 +1757,8 @@ isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=6) "amount": (*main.Field)(0xc000315240)({ - name: (string) (len=6) "amount", + (string) (len=14) "receive_errors": (*main.Field)(0xc00048b980)({ + name: (string) (len=14) "receive_errors", kind: (string) (len=5) "int64", isMap: (bool) false, isArray: (bool) false, @@ -2782,8 +1767,8 @@ isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=11) "service_fee": (*main.Field)(0xc000315280)({ - name: (string) (len=11) "service_fee", + (string) (len=28) "missed_forward_fee_as_output": (*main.Field)(0xc00048ba80)({ + name: (string) (len=28) "missed_forward_fee_as_output", kind: (string) (len=5) "int64", isMap: (bool) false, isArray: (bool) false, @@ -2792,8 +1777,8 @@ isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=11) "network_fee": (*main.Field)(0xc0003152c0)({ - name: (string) (len=11) "network_fee", + (string) (len=13) "events_number": (*main.Field)(0xc00048bb40)({ + name: (string) (len=13) "events_number", kind: (string) (len=5) "int64", isMap: (bool) false, isArray: (bool) false, @@ -2801,40 +1786,18 @@ isMessage: (bool) false, isOptional: (bool) false, oneOfName: (string) "" - }) - } - }), - (string) (len=15) "MigrationUpdate": (*main.Message)(0xc0001dc330)({ - fullName: (string) (len=15) "MigrationUpdate", - name: (string) (len=15) "MigrationUpdate", - fields: (map[string]*main.Field) (len=2) { - (string) (len=7) "closure": (*main.Field)(0xc0000b08c0)({ - name: (string) (len=7) "closure", - kind: (string) (len=16) "ClosureMigration", + }), + (string) (len=21) "forward_fee_as_output": (*main.Field)(0xc00048bb00)({ + name: (string) (len=21) "forward_fee_as_output", + kind: (string) (len=5) "int64", isMap: (bool) false, isArray: (bool) false, isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) true, + isMessage: (bool) false, + isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=6) "relays": (*main.Field)(0xc0000b0900)({ - name: (string) (len=6) "relays", - kind: (string) (len=15) "RelaysMigration", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) true, - oneOfName: (string) "" - }) - } - }), - (string) (len=13) "ClosedChannel": (*main.Message)(0xc00014cf90)({ - fullName: (string) (len=13) "ClosedChannel", - name: (string) (len=13) "ClosedChannel", - fields: (map[string]*main.Field) (len=3) { - (string) (len=10) "channel_id": (*main.Field)(0xc00007f800)({ + (string) (len=10) "channel_id": (*main.Field)(0xc00048b900)({ name: (string) (len=10) "channel_id", kind: (string) (len=6) "string", isMap: (bool) false, @@ -2844,8 +1807,8 @@ isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=8) "capacity": (*main.Field)(0xc00007f840)({ - name: (string) (len=8) "capacity", + (string) (len=23) "forward_errors_as_input": (*main.Field)(0xc00048b9c0)({ + name: (string) (len=23) "forward_errors_as_input", kind: (string) (len=5) "int64", isMap: (bool) false, isArray: (bool) false, @@ -2854,8 +1817,28 @@ isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=13) "closed_height": (*main.Field)(0xc00007f880)({ - name: (string) (len=13) "closed_height", + (string) (len=24) "forward_errors_as_output": (*main.Field)(0xc00048ba00)({ + name: (string) (len=24) "forward_errors_as_output", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=27) "missed_forward_fee_as_input": (*main.Field)(0xc00048ba40)({ + name: (string) (len=27) "missed_forward_fee_as_input", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=20) "forward_fee_as_input": (*main.Field)(0xc00048bac0)({ + name: (string) (len=20) "forward_fee_as_input", kind: (string) (len=5) "int64", isMap: (bool) false, isArray: (bool) false, @@ -2866,12 +1849,68 @@ }) } }), - (string) (len=18) "LndGetInfoResponse": (*main.Message)(0xc00014d1d0)({ - fullName: (string) (len=18) "LndGetInfoResponse", - name: (string) (len=18) "LndGetInfoResponse", - fields: (map[string]*main.Field) (len=1) { - (string) (len=5) "alias": (*main.Field)(0xc00007fe80)({ - name: (string) (len=5) "alias", + (string) (len=14) "AuthAppRequest": (*main.Message)(0xc0001a1530)({ + fullName: (string) (len=14) "AuthAppRequest", + name: (string) (len=14) "AuthAppRequest", + fields: (map[string]*main.Field) (len=2) { + (string) (len=4) "name": (*main.Field)(0xc000314300)({ + name: (string) (len=4) "name", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=19) "allow_user_creation": (*main.Field)(0xc000314340)({ + name: (string) (len=19) "allow_user_creation", + kind: (string) (len=4) "bool", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) true, + oneOfName: (string) "" + }) + } + }), + (string) (len=11) "Application": (*main.Message)(0xc0001a1590)({ + fullName: (string) (len=11) "Application", + name: (string) (len=11) "Application", + fields: (map[string]*main.Field) (len=4) { + (string) (len=4) "name": (*main.Field)(0xc000314440)({ + name: (string) (len=4) "name", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=2) "id": (*main.Field)(0xc000314500)({ + name: (string) (len=2) "id", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=7) "balance": (*main.Field)(0xc000314540)({ + name: (string) (len=7) "balance", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=4) "npub": (*main.Field)(0xc000314580)({ + name: (string) (len=4) "npub", kind: (string) (len=6) "string", isMap: (bool) false, isArray: (bool) false, @@ -2882,20 +1921,10 @@ }) } }), - (string) (len=17) "PayInvoiceRequest": (*main.Message)(0xc00014dbf0)({ - fullName: (string) (len=17) "PayInvoiceRequest", - name: (string) (len=17) "PayInvoiceRequest", - fields: (map[string]*main.Field) (len=2) { - (string) (len=6) "amount": (*main.Field)(0xc000315040)({ - name: (string) (len=6) "amount", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), + (string) (len=20) "DecodeInvoiceRequest": (*main.Message)(0xc0001a1cb0)({ + fullName: (string) (len=20) "DecodeInvoiceRequest", + name: (string) (len=20) "DecodeInvoiceRequest", + fields: (map[string]*main.Field) (len=1) { (string) (len=7) "invoice": (*main.Field)(0xc000315000)({ name: (string) (len=7) "invoice", kind: (string) (len=6) "string", @@ -2908,11 +1937,377 @@ }) } }), - (string) (len=30) "SendAppUserToAppPaymentRequest": (*main.Message)(0xc00014d770)({ + (string) (len=25) "EncryptionExchangeRequest": (*main.Message)(0xc0001a0c30)({ + fullName: (string) (len=25) "EncryptionExchangeRequest", + name: (string) (len=25) "EncryptionExchangeRequest", + fields: (map[string]*main.Field) (len=2) { + (string) (len=9) "publicKey": (*main.Field)(0xc00048a940)({ + name: (string) (len=9) "publicKey", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=8) "deviceId": (*main.Field)(0xc00048a980)({ + name: (string) (len=8) "deviceId", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=19) "ChannelBalanceEvent": (*main.Message)(0xc0001a0f90)({ + fullName: (string) (len=19) "ChannelBalanceEvent", + name: (string) (len=19) "ChannelBalanceEvent", + fields: (map[string]*main.Field) (len=4) { + (string) (len=12) "block_height": (*main.Field)(0xc00048b480)({ + name: (string) (len=12) "block_height", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=10) "channel_id": (*main.Field)(0xc00048b4c0)({ + name: (string) (len=10) "channel_id", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=18) "local_balance_sats": (*main.Field)(0xc00048b500)({ + name: (string) (len=18) "local_balance_sats", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=19) "remote_balance_sats": (*main.Field)(0xc00048b540)({ + name: (string) (len=19) "remote_balance_sats", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=17) "ChainBalanceEvent": (*main.Message)(0xc0001a0ff0)({ + fullName: (string) (len=17) "ChainBalanceEvent", + name: (string) (len=17) "ChainBalanceEvent", + fields: (map[string]*main.Field) (len=4) { + (string) (len=12) "block_height": (*main.Field)(0xc00048b580)({ + name: (string) (len=12) "block_height", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=17) "confirmed_balance": (*main.Field)(0xc00048b5c0)({ + name: (string) (len=17) "confirmed_balance", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=19) "unconfirmed_balance": (*main.Field)(0xc00048b600)({ + name: (string) (len=19) "unconfirmed_balance", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=13) "total_balance": (*main.Field)(0xc00048b640)({ + name: (string) (len=13) "total_balance", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=22) "GetPaymentStateRequest": (*main.Message)(0xc0001a1e30)({ + fullName: (string) (len=22) "GetPaymentStateRequest", + name: (string) (len=22) "GetPaymentStateRequest", + fields: (map[string]*main.Field) (len=1) { + (string) (len=7) "invoice": (*main.Field)(0xc000315240)({ + name: (string) (len=7) "invoice", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=18) "AppsMetricsRequest": (*main.Message)(0xc0001a0d50)({ + fullName: (string) (len=18) "AppsMetricsRequest", + name: (string) (len=18) "AppsMetricsRequest", + fields: (map[string]*main.Field) (len=3) { + (string) (len=9) "from_unix": (*main.Field)(0xc00048ac40)({ + name: (string) (len=9) "from_unix", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) true, + oneOfName: (string) "" + }), + (string) (len=7) "to_unix": (*main.Field)(0xc00048ac80)({ + name: (string) (len=7) "to_unix", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) true, + oneOfName: (string) "" + }), + (string) (len=18) "include_operations": (*main.Field)(0xc00048acc0)({ + name: (string) (len=18) "include_operations", + kind: (string) (len=4) "bool", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) true, + oneOfName: (string) "" + }) + } + }), + (string) (len=25) "LnurlWithdrawInfoResponse": (*main.Message)(0xc000216030)({ + fullName: (string) (len=25) "LnurlWithdrawInfoResponse", + name: (string) (len=25) "LnurlWithdrawInfoResponse", + fields: (map[string]*main.Field) (len=8) { + (string) (len=3) "tag": (*main.Field)(0xc000315540)({ + name: (string) (len=3) "tag", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=8) "callback": (*main.Field)(0xc000315580)({ + name: (string) (len=8) "callback", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=2) "k1": (*main.Field)(0xc0003155c0)({ + name: (string) (len=2) "k1", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=18) "defaultDescription": (*main.Field)(0xc000315600)({ + name: (string) (len=18) "defaultDescription", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=15) "minWithdrawable": (*main.Field)(0xc000315640)({ + name: (string) (len=15) "minWithdrawable", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=15) "maxWithdrawable": (*main.Field)(0xc000315680)({ + name: (string) (len=15) "maxWithdrawable", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=12) "balanceCheck": (*main.Field)(0xc0003156c0)({ + name: (string) (len=12) "balanceCheck", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=7) "payLink": (*main.Field)(0xc000315700)({ + name: (string) (len=7) "payLink", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=22) "HandleLnurlPayResponse": (*main.Message)(0xc0002160f0)({ + fullName: (string) (len=22) "HandleLnurlPayResponse", + name: (string) (len=22) "HandleLnurlPayResponse", + fields: (map[string]*main.Field) (len=2) { + (string) (len=2) "pr": (*main.Field)(0xc000315900)({ + name: (string) (len=2) "pr", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=6) "routes": (*main.Field)(0xc000315940)({ + name: (string) (len=6) "routes", + kind: (string) (len=5) "Empty", + isMap: (bool) false, + isArray: (bool) true, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=17) "LiveUserOperation": (*main.Message)(0xc000216450)({ + fullName: (string) (len=17) "LiveUserOperation", + name: (string) (len=17) "LiveUserOperation", + fields: (map[string]*main.Field) (len=1) { + (string) (len=9) "operation": (*main.Field)(0xc0000b0900)({ + name: (string) (len=9) "operation", + kind: (string) (len=13) "UserOperation", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=30) "RequestNPubLinkingTokenRequest": (*main.Message)(0xc0002165d0)({ + fullName: (string) (len=30) "RequestNPubLinkingTokenRequest", + name: (string) (len=30) "RequestNPubLinkingTokenRequest", + fields: (map[string]*main.Field) (len=1) { + (string) (len=15) "user_identifier": (*main.Field)(0xc0000b0b40)({ + name: (string) (len=15) "user_identifier", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=9) "HttpCreds": (*main.Message)(0xc0002166f0)({ + fullName: (string) (len=9) "HttpCreds", + name: (string) (len=9) "HttpCreds", + fields: (map[string]*main.Field) (len=2) { + (string) (len=5) "token": (*main.Field)(0xc0000b0d00)({ + name: (string) (len=5) "token", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=3) "url": (*main.Field)(0xc0000b0cc0)({ + name: (string) (len=3) "url", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=27) "SetMockInvoiceAsPaidRequest": (*main.Message)(0xc0001a12f0)({ + fullName: (string) (len=27) "SetMockInvoiceAsPaidRequest", + name: (string) (len=27) "SetMockInvoiceAsPaidRequest", + fields: (map[string]*main.Field) (len=2) { + (string) (len=6) "amount": (*main.Field)(0xc00048bec0)({ + name: (string) (len=6) "amount", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=7) "invoice": (*main.Field)(0xc00048be80)({ + name: (string) (len=7) "invoice", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=30) "SendAppUserToAppPaymentRequest": (*main.Message)(0xc0001a18f0)({ fullName: (string) (len=30) "SendAppUserToAppPaymentRequest", name: (string) (len=30) "SendAppUserToAppPaymentRequest", fields: (map[string]*main.Field) (len=2) { - (string) (len=20) "from_user_identifier": (*main.Field)(0xc000314ac0)({ + (string) (len=20) "from_user_identifier": (*main.Field)(0xc000314b40)({ name: (string) (len=20) "from_user_identifier", kind: (string) (len=6) "string", isMap: (bool) false, @@ -2922,6 +2317,1064 @@ isOptional: (bool) false, oneOfName: (string) "" }), + (string) (len=6) "amount": (*main.Field)(0xc000314b80)({ + name: (string) (len=6) "amount", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=17) "NewInvoiceRequest": (*main.Message)(0xc0001a1bf0)({ + fullName: (string) (len=17) "NewInvoiceRequest", + name: (string) (len=17) "NewInvoiceRequest", + fields: (map[string]*main.Field) (len=2) { + (string) (len=10) "amountSats": (*main.Field)(0xc000314f40)({ + name: (string) (len=10) "amountSats", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=4) "memo": (*main.Field)(0xc000314f80)({ + name: (string) (len=4) "memo", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=21) "DecodeInvoiceResponse": (*main.Message)(0xc0001a1d10)({ + fullName: (string) (len=21) "DecodeInvoiceResponse", + name: (string) (len=21) "DecodeInvoiceResponse", + fields: (map[string]*main.Field) (len=1) { + (string) (len=6) "amount": (*main.Field)(0xc000315040)({ + name: (string) (len=6) "amount", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=8) "UserInfo": (*main.Message)(0xc000216150)({ + fullName: (string) (len=8) "UserInfo", + name: (string) (len=8) "UserInfo", + fields: (map[string]*main.Field) (len=7) { + (string) (len=21) "network_max_fee_fixed": (*main.Field)(0xc000315b00)({ + name: (string) (len=21) "network_max_fee_fixed", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=6) "userId": (*main.Field)(0xc000315980)({ + name: (string) (len=6) "userId", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=7) "balance": (*main.Field)(0xc0003159c0)({ + name: (string) (len=7) "balance", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=16) "max_withdrawable": (*main.Field)(0xc000315a00)({ + name: (string) (len=16) "max_withdrawable", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=15) "user_identifier": (*main.Field)(0xc000315a40)({ + name: (string) (len=15) "user_identifier", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=15) "service_fee_bps": (*main.Field)(0xc000315a80)({ + name: (string) (len=15) "service_fee_bps", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=19) "network_max_fee_bps": (*main.Field)(0xc000315ac0)({ + name: (string) (len=19) "network_max_fee_bps", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=10) "LndMetrics": (*main.Message)(0xc0001a11d0)({ + fullName: (string) (len=10) "LndMetrics", + name: (string) (len=10) "LndMetrics", + fields: (map[string]*main.Field) (len=1) { + (string) (len=5) "nodes": (*main.Field)(0xc00048bdc0)({ + name: (string) (len=5) "nodes", + kind: (string) (len=14) "LndNodeMetrics", + isMap: (bool) false, + isArray: (bool) true, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=17) "AddAppUserRequest": (*main.Message)(0xc0001a1650)({ + fullName: (string) (len=17) "AddAppUserRequest", + name: (string) (len=17) "AddAppUserRequest", + fields: (map[string]*main.Field) (len=3) { + (string) (len=10) "identifier": (*main.Field)(0xc000314640)({ + name: (string) (len=10) "identifier", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=14) "fail_if_exists": (*main.Field)(0xc000314680)({ + name: (string) (len=14) "fail_if_exists", + kind: (string) (len=4) "bool", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=7) "balance": (*main.Field)(0xc0003146c0)({ + name: (string) (len=7) "balance", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=26) "GetAppUserLNURLInfoRequest": (*main.Message)(0xc0001a1950)({ + fullName: (string) (len=26) "GetAppUserLNURLInfoRequest", + name: (string) (len=26) "GetAppUserLNURLInfoRequest", + fields: (map[string]*main.Field) (len=2) { + (string) (len=15) "user_identifier": (*main.Field)(0xc000314bc0)({ + name: (string) (len=15) "user_identifier", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=17) "base_url_override": (*main.Field)(0xc000314c00)({ + name: (string) (len=17) "base_url_override", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=25) "GetProductBuyLinkResponse": (*main.Message)(0xc0002163f0)({ + fullName: (string) (len=25) "GetProductBuyLinkResponse", + name: (string) (len=25) "GetProductBuyLinkResponse", + fields: (map[string]*main.Field) (len=1) { + (string) (len=4) "link": (*main.Field)(0xc0000b08c0)({ + name: (string) (len=4) "link", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=17) "LndGetInfoRequest": (*main.Message)(0xc0001a1290)({ + fullName: (string) (len=17) "LndGetInfoRequest", + name: (string) (len=17) "LndGetInfoRequest", + fields: (map[string]*main.Field) (len=1) { + (string) (len=6) "nodeId": (*main.Field)(0xc00048be40)({ + name: (string) (len=6) "nodeId", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=13) "BannedAppUser": (*main.Message)(0xc0001a1410)({ + fullName: (string) (len=13) "BannedAppUser", + name: (string) (len=13) "BannedAppUser", + fields: (map[string]*main.Field) (len=4) { + (string) (len=9) "nostr_pub": (*main.Field)(0xc0003140c0)({ + name: (string) (len=9) "nostr_pub", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=8) "app_name": (*main.Field)(0xc00048bf80)({ + name: (string) (len=8) "app_name", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=6) "app_id": (*main.Field)(0xc00048bfc0)({ + name: (string) (len=6) "app_id", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=15) "user_identifier": (*main.Field)(0xc000314080)({ + name: (string) (len=15) "user_identifier", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=15) "BanUserResponse": (*main.Message)(0xc0001a1470)({ + fullName: (string) (len=15) "BanUserResponse", + name: (string) (len=15) "BanUserResponse", + fields: (map[string]*main.Field) (len=2) { + (string) (len=12) "balance_sats": (*main.Field)(0xc000314180)({ + name: (string) (len=12) "balance_sats", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=16) "banned_app_users": (*main.Field)(0xc0003141c0)({ + name: (string) (len=16) "banned_app_users", + kind: (string) (len=13) "BannedAppUser", + isMap: (bool) false, + isArray: (bool) true, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=24) "GetUserOperationsRequest": (*main.Message)(0xc0002161b0)({ + fullName: (string) (len=24) "GetUserOperationsRequest", + name: (string) (len=24) "GetUserOperationsRequest", + fields: (map[string]*main.Field) (len=7) { + (string) (len=16) "latestOutgoingTx": (*main.Field)(0xc000315c00)({ + name: (string) (len=16) "latestOutgoingTx", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=31) "latestIncomingUserToUserPayment": (*main.Field)(0xc000315c40)({ + name: (string) (len=31) "latestIncomingUserToUserPayment", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=31) "latestOutgoingUserToUserPayment": (*main.Field)(0xc000315c80)({ + name: (string) (len=31) "latestOutgoingUserToUserPayment", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=8) "max_size": (*main.Field)(0xc000315cc0)({ + name: (string) (len=8) "max_size", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=21) "latestIncomingInvoice": (*main.Field)(0xc000315b40)({ + name: (string) (len=21) "latestIncomingInvoice", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=21) "latestOutgoingInvoice": (*main.Field)(0xc000315b80)({ + name: (string) (len=21) "latestOutgoingInvoice", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=16) "latestIncomingTx": (*main.Field)(0xc000315bc0)({ + name: (string) (len=16) "latestIncomingTx", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=15) "MigrationUpdate": (*main.Message)(0xc0002164b0)({ + fullName: (string) (len=15) "MigrationUpdate", + name: (string) (len=15) "MigrationUpdate", + fields: (map[string]*main.Field) (len=2) { + (string) (len=7) "closure": (*main.Field)(0xc0000b0940)({ + name: (string) (len=7) "closure", + kind: (string) (len=16) "ClosureMigration", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) true, + oneOfName: (string) "" + }), + (string) (len=6) "relays": (*main.Field)(0xc0000b0a80)({ + name: (string) (len=6) "relays", + kind: (string) (len=15) "RelaysMigration", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) true, + oneOfName: (string) "" + }) + } + }), + (string) (len=27) "LinkNPubThroughTokenRequest": (*main.Message)(0xc000216690)({ + fullName: (string) (len=27) "LinkNPubThroughTokenRequest", + name: (string) (len=27) "LinkNPubThroughTokenRequest", + fields: (map[string]*main.Field) (len=1) { + (string) (len=5) "token": (*main.Field)(0xc0000b0bc0)({ + name: (string) (len=5) "token", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=18) "PayInvoiceResponse": (*main.Message)(0xc0001a1dd0)({ + fullName: (string) (len=18) "PayInvoiceResponse", + name: (string) (len=18) "PayInvoiceResponse", + fields: (map[string]*main.Field) (len=5) { + (string) (len=8) "preimage": (*main.Field)(0xc000315100)({ + name: (string) (len=8) "preimage", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=11) "amount_paid": (*main.Field)(0xc000315140)({ + name: (string) (len=11) "amount_paid", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=12) "operation_id": (*main.Field)(0xc000315180)({ + name: (string) (len=12) "operation_id", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=11) "service_fee": (*main.Field)(0xc0003151c0)({ + name: (string) (len=11) "service_fee", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=11) "network_fee": (*main.Field)(0xc000315200)({ + name: (string) (len=11) "network_fee", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=19) "OpenChannelResponse": (*main.Message)(0xc0001a1f50)({ + fullName: (string) (len=19) "OpenChannelResponse", + name: (string) (len=19) "OpenChannelResponse", + fields: (map[string]*main.Field) (len=1) { + (string) (len=9) "channelId": (*main.Field)(0xc000315480)({ + name: (string) (len=9) "channelId", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=7) "Product": (*main.Message)(0xc000216390)({ + fullName: (string) (len=7) "Product", + name: (string) (len=7) "Product", + fields: (map[string]*main.Field) (len=3) { + (string) (len=2) "id": (*main.Field)(0xc0000b0800)({ + name: (string) (len=2) "id", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=4) "name": (*main.Field)(0xc0000b0840)({ + name: (string) (len=4) "name", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=10) "price_sats": (*main.Field)(0xc0000b0880)({ + name: (string) (len=10) "price_sats", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=27) "GetInviteTokenStateResponse": (*main.Message)(0xc000216930)({ + fullName: (string) (len=27) "GetInviteTokenStateResponse", + name: (string) (len=27) "GetInviteTokenStateResponse", + fields: (map[string]*main.Field) (len=1) { + (string) (len=4) "used": (*main.Field)(0xc0000b0e80)({ + name: (string) (len=4) "used", + kind: (string) (len=4) "bool", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=9) "UsersInfo": (*main.Message)(0xc0001a0db0)({ + fullName: (string) (len=9) "UsersInfo", + name: (string) (len=9) "UsersInfo", + fields: (map[string]*main.Field) (len=6) { + (string) (len=5) "total": (*main.Field)(0xc00048ad00)({ + name: (string) (len=5) "total", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=10) "no_balance": (*main.Field)(0xc00048ad40)({ + name: (string) (len=10) "no_balance", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=16) "negative_balance": (*main.Field)(0xc00048ad80)({ + name: (string) (len=16) "negative_balance", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=20) "always_been_inactive": (*main.Field)(0xc00048adc0)({ + name: (string) (len=20) "always_been_inactive", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=11) "balance_avg": (*main.Field)(0xc00048ae00)({ + name: (string) (len=11) "balance_avg", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=14) "balance_median": (*main.Field)(0xc00048ae40)({ + name: (string) (len=14) "balance_median", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=18) "LndGetInfoResponse": (*main.Message)(0xc0001a1350)({ + fullName: (string) (len=18) "LndGetInfoResponse", + name: (string) (len=18) "LndGetInfoResponse", + fields: (map[string]*main.Field) (len=1) { + (string) (len=5) "alias": (*main.Field)(0xc00048bf00)({ + name: (string) (len=5) "alias", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=18) "PayAddressResponse": (*main.Message)(0xc0001a1b90)({ + fullName: (string) (len=18) "PayAddressResponse", + name: (string) (len=18) "PayAddressResponse", + fields: (map[string]*main.Field) (len=4) { + (string) (len=4) "txId": (*main.Field)(0xc000314e40)({ + name: (string) (len=4) "txId", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=12) "operation_id": (*main.Field)(0xc000314e80)({ + name: (string) (len=12) "operation_id", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=11) "service_fee": (*main.Field)(0xc000314ec0)({ + name: (string) (len=11) "service_fee", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=11) "network_fee": (*main.Field)(0xc000314f00)({ + name: (string) (len=11) "network_fee", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=12) "PaymentState": (*main.Message)(0xc0001a1e90)({ + fullName: (string) (len=12) "PaymentState", + name: (string) (len=12) "PaymentState", + fields: (map[string]*main.Field) (len=4) { + (string) (len=11) "service_fee": (*main.Field)(0xc000315300)({ + name: (string) (len=11) "service_fee", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=11) "network_fee": (*main.Field)(0xc000315340)({ + name: (string) (len=11) "network_fee", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=12) "paid_at_unix": (*main.Field)(0xc000315280)({ + name: (string) (len=12) "paid_at_unix", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=6) "amount": (*main.Field)(0xc0003152c0)({ + name: (string) (len=6) "amount", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=17) "LndMetricsRequest": (*main.Message)(0xc0001a0ed0)({ + fullName: (string) (len=17) "LndMetricsRequest", + name: (string) (len=17) "LndMetricsRequest", + fields: (map[string]*main.Field) (len=2) { + (string) (len=9) "from_unix": (*main.Field)(0xc00048b100)({ + name: (string) (len=9) "from_unix", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) true, + oneOfName: (string) "" + }), + (string) (len=7) "to_unix": (*main.Field)(0xc00048b140)({ + name: (string) (len=7) "to_unix", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) true, + oneOfName: (string) "" + }) + } + }), + (string) (len=11) "UsageMetric": (*main.Message)(0xc0001a0c90)({ + fullName: (string) (len=11) "UsageMetric", + name: (string) (len=11) "UsageMetric", + fields: (map[string]*main.Field) (len=9) { + (string) (len=16) "validate_in_nano": (*main.Field)(0xc00048aa80)({ + name: (string) (len=16) "validate_in_nano", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=14) "handle_in_nano": (*main.Field)(0xc00048aac0)({ + name: (string) (len=14) "handle_in_nano", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=10) "batch_size": (*main.Field)(0xc00048abc0)({ + name: (string) (len=10) "batch_size", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=14) "parsed_in_nano": (*main.Field)(0xc00048aa00)({ + name: (string) (len=14) "parsed_in_nano", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=12) "auth_in_nano": (*main.Field)(0xc00048aa40)({ + name: (string) (len=12) "auth_in_nano", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=8) "rpc_name": (*main.Field)(0xc00048ab00)({ + name: (string) (len=8) "rpc_name", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=5) "batch": (*main.Field)(0xc00048ab40)({ + name: (string) (len=5) "batch", + kind: (string) (len=4) "bool", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=5) "nostr": (*main.Field)(0xc00048ab80)({ + name: (string) (len=5) "nostr", + kind: (string) (len=4) "bool", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=15) "processed_at_ms": (*main.Field)(0xc00048a9c0)({ + name: (string) (len=15) "processed_at_ms", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=7) "AppUser": (*main.Message)(0xc0001a16b0)({ + fullName: (string) (len=7) "AppUser", + name: (string) (len=7) "AppUser", + fields: (map[string]*main.Field) (len=3) { + (string) (len=10) "identifier": (*main.Field)(0xc000314700)({ + name: (string) (len=10) "identifier", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=4) "info": (*main.Field)(0xc000314740)({ + name: (string) (len=4) "info", + kind: (string) (len=8) "UserInfo", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=16) "max_withdrawable": (*main.Field)(0xc000314780)({ + name: (string) (len=16) "max_withdrawable", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=28) "SetMockAppUserBalanceRequest": (*main.Message)(0xc0001a19b0)({ + fullName: (string) (len=28) "SetMockAppUserBalanceRequest", + name: (string) (len=28) "SetMockAppUserBalanceRequest", + fields: (map[string]*main.Field) (len=2) { + (string) (len=15) "user_identifier": (*main.Field)(0xc000314c40)({ + name: (string) (len=15) "user_identifier", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=6) "amount": (*main.Field)(0xc000314c80)({ + name: (string) (len=6) "amount", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=15) "RelaysMigration": (*main.Message)(0xc000216570)({ + fullName: (string) (len=15) "RelaysMigration", + name: (string) (len=15) "RelaysMigration", + fields: (map[string]*main.Field) (len=1) { + (string) (len=6) "relays": (*main.Field)(0xc0000b0b00)({ + name: (string) (len=6) "relays", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) true, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=7) "LndSeed": (*main.Message)(0xc0001a0bd0)({ + fullName: (string) (len=7) "LndSeed", + name: (string) (len=7) "LndSeed", + fields: (map[string]*main.Field) (len=1) { + (string) (len=4) "seed": (*main.Field)(0xc00048a900)({ + name: (string) (len=4) "seed", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) true, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=11) "LndChannels": (*main.Message)(0xc0001a1230)({ + fullName: (string) (len=11) "LndChannels", + name: (string) (len=11) "LndChannels", + fields: (map[string]*main.Field) (len=1) { + (string) (len=13) "open_channels": (*main.Field)(0xc00048be00)({ + name: (string) (len=13) "open_channels", + kind: (string) (len=11) "OpenChannel", + isMap: (bool) false, + isArray: (bool) true, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=17) "PayAddressRequest": (*main.Message)(0xc0001a1b30)({ + fullName: (string) (len=17) "PayAddressRequest", + name: (string) (len=17) "PayAddressRequest", + fields: (map[string]*main.Field) (len=3) { + (string) (len=12) "satsPerVByte": (*main.Field)(0xc000314e00)({ + name: (string) (len=12) "satsPerVByte", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=7) "address": (*main.Field)(0xc000314d80)({ + name: (string) (len=7) "address", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=9) "amoutSats": (*main.Field)(0xc000314dc0)({ + name: (string) (len=9) "amoutSats", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=17) "LnurlLinkResponse": (*main.Message)(0xc0001a1fb0)({ + fullName: (string) (len=17) "LnurlLinkResponse", + name: (string) (len=17) "LnurlLinkResponse", + fields: (map[string]*main.Field) (len=2) { + (string) (len=2) "k1": (*main.Field)(0xc000315500)({ + name: (string) (len=2) "k1", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=5) "lnurl": (*main.Field)(0xc0003154c0)({ + name: (string) (len=5) "lnurl", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=31) "CreateOneTimeInviteLinkResponse": (*main.Message)(0xc000216810)({ + fullName: (string) (len=31) "CreateOneTimeInviteLinkResponse", + name: (string) (len=31) "CreateOneTimeInviteLinkResponse", + fields: (map[string]*main.Field) (len=1) { + (string) (len=15) "invitation_link": (*main.Field)(0xc0000b0dc0)({ + name: (string) (len=15) "invitation_link", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=5) "Empty": (*main.Message)(0xc0001a0b70)({ + fullName: (string) (len=5) "Empty", + name: (string) (len=5) "Empty", + fields: (map[string]*main.Field) { + } + }), + (string) (len=34) "SendAppUserToAppUserPaymentRequest": (*main.Message)(0xc0001a1890)({ + fullName: (string) (len=34) "SendAppUserToAppUserPaymentRequest", + name: (string) (len=34) "SendAppUserToAppUserPaymentRequest", + fields: (map[string]*main.Field) (len=3) { + (string) (len=18) "to_user_identifier": (*main.Field)(0xc000314ac0)({ + name: (string) (len=18) "to_user_identifier", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), (string) (len=6) "amount": (*main.Field)(0xc000314b00)({ name: (string) (len=6) "amount", kind: (string) (len=5) "int64", @@ -2931,24 +3384,24 @@ isMessage: (bool) false, isOptional: (bool) false, oneOfName: (string) "" - }) - } - }), - (string) (len=18) "OpenChannelRequest": (*main.Message)(0xc00014dd70)({ - fullName: (string) (len=18) "OpenChannelRequest", - name: (string) (len=18) "OpenChannelRequest", - fields: (map[string]*main.Field) (len=4) { - (string) (len=10) "pushAmount": (*main.Field)(0xc000315380)({ - name: (string) (len=10) "pushAmount", - kind: (string) (len=5) "int64", + }), + (string) (len=20) "from_user_identifier": (*main.Field)(0xc000314a80)({ + name: (string) (len=20) "from_user_identifier", + kind: (string) (len=6) "string", isMap: (bool) false, isArray: (bool) false, isEnum: (bool) false, isMessage: (bool) false, isOptional: (bool) false, oneOfName: (string) "" - }), - (string) (len=12) "closeAddress": (*main.Field)(0xc0003153c0)({ + }) + } + }), + (string) (len=18) "OpenChannelRequest": (*main.Message)(0xc0001a1ef0)({ + fullName: (string) (len=18) "OpenChannelRequest", + name: (string) (len=18) "OpenChannelRequest", + fields: (map[string]*main.Field) (len=4) { + (string) (len=12) "closeAddress": (*main.Field)(0xc000315440)({ name: (string) (len=12) "closeAddress", kind: (string) (len=6) "string", isMap: (bool) false, @@ -2958,7 +3411,7 @@ isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=11) "destination": (*main.Field)(0xc000315300)({ + (string) (len=11) "destination": (*main.Field)(0xc000315380)({ name: (string) (len=11) "destination", kind: (string) (len=6) "string", isMap: (bool) false, @@ -2968,7 +3421,7 @@ isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=13) "fundingAmount": (*main.Field)(0xc000315340)({ + (string) (len=13) "fundingAmount": (*main.Field)(0xc0003153c0)({ name: (string) (len=13) "fundingAmount", kind: (string) (len=5) "int64", isMap: (bool) false, @@ -2977,14 +3430,320 @@ isMessage: (bool) false, isOptional: (bool) false, oneOfName: (string) "" + }), + (string) (len=10) "pushAmount": (*main.Field)(0xc000315400)({ + name: (string) (len=10) "pushAmount", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" }) } }), - (string) (len=23) "EnrollAdminTokenRequest": (*main.Message)(0xc0001dc5d0)({ + (string) (len=14) "UserOperations": (*main.Message)(0xc000216270)({ + fullName: (string) (len=14) "UserOperations", + name: (string) (len=14) "UserOperations", + fields: (map[string]*main.Field) (len=3) { + (string) (len=9) "fromIndex": (*main.Field)(0xc000315fc0)({ + name: (string) (len=9) "fromIndex", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=7) "toIndex": (*main.Field)(0xc0000b0000)({ + name: (string) (len=7) "toIndex", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=10) "operations": (*main.Field)(0xc0000b0040)({ + name: (string) (len=10) "operations", + kind: (string) (len=13) "UserOperation", + isMap: (bool) false, + isArray: (bool) true, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=12) "RoutingEvent": (*main.Message)(0xc0001a0f30)({ + fullName: (string) (len=12) "RoutingEvent", + name: (string) (len=12) "RoutingEvent", + fields: (map[string]*main.Field) (len=12) { + (string) (len=19) "incoming_channel_id": (*main.Field)(0xc00048b180)({ + name: (string) (len=19) "incoming_channel_id", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=16) "incoming_htlc_id": (*main.Field)(0xc00048b1c0)({ + name: (string) (len=16) "incoming_htlc_id", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=10) "event_type": (*main.Field)(0xc00048b2c0)({ + name: (string) (len=10) "event_type", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=17) "incoming_amt_msat": (*main.Field)(0xc00048b300)({ + name: (string) (len=17) "incoming_amt_msat", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=14) "failure_string": (*main.Field)(0xc00048b380)({ + name: (string) (len=14) "failure_string", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=7) "settled": (*main.Field)(0xc00048b3c0)({ + name: (string) (len=7) "settled", + kind: (string) (len=4) "bool", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=8) "offchain": (*main.Field)(0xc00048b400)({ + name: (string) (len=8) "offchain", + kind: (string) (len=4) "bool", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=18) "forward_fail_event": (*main.Field)(0xc00048b440)({ + name: (string) (len=18) "forward_fail_event", + kind: (string) (len=4) "bool", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=19) "outgoing_channel_id": (*main.Field)(0xc00048b200)({ + name: (string) (len=19) "outgoing_channel_id", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=16) "outgoing_htlc_id": (*main.Field)(0xc00048b240)({ + name: (string) (len=16) "outgoing_htlc_id", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=12) "timestamp_ns": (*main.Field)(0xc00048b280)({ + name: (string) (len=12) "timestamp_ns", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=17) "outgoing_amt_msat": (*main.Field)(0xc00048b340)({ + name: (string) (len=17) "outgoing_amt_msat", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=17) "GetAppUserRequest": (*main.Message)(0xc0001a17d0)({ + fullName: (string) (len=17) "GetAppUserRequest", + name: (string) (len=17) "GetAppUserRequest", + fields: (map[string]*main.Field) (len=1) { + (string) (len=15) "user_identifier": (*main.Field)(0xc000314980)({ + name: (string) (len=15) "user_identifier", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=20) "LnurlPayInfoResponse": (*main.Message)(0xc000216090)({ + fullName: (string) (len=20) "LnurlPayInfoResponse", + name: (string) (len=20) "LnurlPayInfoResponse", + fields: (map[string]*main.Field) (len=7) { + (string) (len=3) "tag": (*main.Field)(0xc000315740)({ + name: (string) (len=3) "tag", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=8) "callback": (*main.Field)(0xc000315780)({ + name: (string) (len=8) "callback", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=11) "maxSendable": (*main.Field)(0xc0003157c0)({ + name: (string) (len=11) "maxSendable", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=11) "minSendable": (*main.Field)(0xc000315800)({ + name: (string) (len=11) "minSendable", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=8) "metadata": (*main.Field)(0xc000315840)({ + name: (string) (len=8) "metadata", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=11) "allowsNostr": (*main.Field)(0xc000315880)({ + name: (string) (len=11) "allowsNostr", + kind: (string) (len=4) "bool", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=11) "nostrPubkey": (*main.Field)(0xc0003158c0)({ + name: (string) (len=11) "nostrPubkey", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=17) "AddProductRequest": (*main.Message)(0xc000216330)({ + fullName: (string) (len=17) "AddProductRequest", + name: (string) (len=17) "AddProductRequest", + fields: (map[string]*main.Field) (len=2) { + (string) (len=4) "name": (*main.Field)(0xc0000b0700)({ + name: (string) (len=4) "name", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=10) "price_sats": (*main.Field)(0xc0000b07c0)({ + name: (string) (len=10) "price_sats", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=31) "RequestNPubLinkingTokenResponse": (*main.Message)(0xc000216630)({ + fullName: (string) (len=31) "RequestNPubLinkingTokenResponse", + name: (string) (len=31) "RequestNPubLinkingTokenResponse", + fields: (map[string]*main.Field) (len=1) { + (string) (len=5) "token": (*main.Field)(0xc0000b0b80)({ + name: (string) (len=5) "token", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=23) "EnrollAdminTokenRequest": (*main.Message)(0xc000216750)({ fullName: (string) (len=23) "EnrollAdminTokenRequest", name: (string) (len=23) "EnrollAdminTokenRequest", fields: (map[string]*main.Field) (len=1) { - (string) (len=11) "admin_token": (*main.Field)(0xc0000b0cc0)({ + (string) (len=11) "admin_token": (*main.Field)(0xc0000b0d40)({ name: (string) (len=11) "admin_token", kind: (string) (len=6) "string", isMap: (bool) false, @@ -2996,59 +3755,11 @@ }) } }), - (string) (len=5) "Empty": (*main.Message)(0xc00014ca50)({ - fullName: (string) (len=5) "Empty", - name: (string) (len=5) "Empty", - fields: (map[string]*main.Field) { - } - }), - (string) (len=17) "NewAddressRequest": (*main.Message)(0xc00014d8f0)({ - fullName: (string) (len=17) "NewAddressRequest", - name: (string) (len=17) "NewAddressRequest", - fields: (map[string]*main.Field) (len=1) { - (string) (len=11) "addressType": (*main.Field)(0xc000314c80)({ - name: (string) (len=11) "addressType", - kind: (string) (len=11) "AddressType", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) true, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=17) "AddProductRequest": (*main.Message)(0xc0001dc1b0)({ - fullName: (string) (len=17) "AddProductRequest", - name: (string) (len=17) "AddProductRequest", - fields: (map[string]*main.Field) (len=2) { - (string) (len=4) "name": (*main.Field)(0xc0000b0680)({ - name: (string) (len=4) "name", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=10) "price_sats": (*main.Field)(0xc0000b06c0)({ - name: (string) (len=10) "price_sats", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=30) "CreateOneTimeInviteLinkRequest": (*main.Message)(0xc0001dc630)({ + (string) (len=30) "CreateOneTimeInviteLinkRequest": (*main.Message)(0xc0002167b0)({ fullName: (string) (len=30) "CreateOneTimeInviteLinkRequest", name: (string) (len=30) "CreateOneTimeInviteLinkRequest", fields: (map[string]*main.Field) (len=1) { - (string) (len=4) "sats": (*main.Field)(0xc0000b0d00)({ + (string) (len=4) "sats": (*main.Field)(0xc0000b0d80)({ name: (string) (len=4) "sats", kind: (string) (len=5) "int64", isMap: (bool) false, @@ -3060,945 +3771,11 @@ }) } }), - (string) (len=27) "GetInviteTokenStateResponse": (*main.Message)(0xc0001dc7b0)({ - fullName: (string) (len=27) "GetInviteTokenStateResponse", - name: (string) (len=27) "GetInviteTokenStateResponse", + (string) (len=26) "GetInviteTokenStateRequest": (*main.Message)(0xc0002168d0)({ + fullName: (string) (len=26) "GetInviteTokenStateRequest", + name: (string) (len=26) "GetInviteTokenStateRequest", fields: (map[string]*main.Field) (len=1) { - (string) (len=4) "used": (*main.Field)(0xc0000b0e00)({ - name: (string) (len=4) "used", - kind: (string) (len=4) "bool", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=25) "EncryptionExchangeRequest": (*main.Message)(0xc00014cb10)({ - fullName: (string) (len=25) "EncryptionExchangeRequest", - name: (string) (len=25) "EncryptionExchangeRequest", - fields: (map[string]*main.Field) (len=2) { - (string) (len=9) "publicKey": (*main.Field)(0xc00007e940)({ - name: (string) (len=9) "publicKey", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=8) "deviceId": (*main.Field)(0xc00007e980)({ - name: (string) (len=8) "deviceId", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=12) "UsageMetrics": (*main.Message)(0xc00014cbd0)({ - fullName: (string) (len=12) "UsageMetrics", - name: (string) (len=12) "UsageMetrics", - fields: (map[string]*main.Field) (len=1) { - (string) (len=7) "metrics": (*main.Field)(0xc00007ec00)({ - name: (string) (len=7) "metrics", - kind: (string) (len=11) "UsageMetric", - isMap: (bool) false, - isArray: (bool) true, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=14) "AuthAppRequest": (*main.Message)(0xc00014d3b0)({ - fullName: (string) (len=14) "AuthAppRequest", - name: (string) (len=14) "AuthAppRequest", - fields: (map[string]*main.Field) (len=2) { - (string) (len=4) "name": (*main.Field)(0xc000314200)({ - name: (string) (len=4) "name", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=19) "allow_user_creation": (*main.Field)(0xc0003142c0)({ - name: (string) (len=19) "allow_user_creation", - kind: (string) (len=4) "bool", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) true, - oneOfName: (string) "" - }) - } - }), - (string) (len=17) "AddAppUserRequest": (*main.Message)(0xc00014d4d0)({ - fullName: (string) (len=17) "AddAppUserRequest", - name: (string) (len=17) "AddAppUserRequest", - fields: (map[string]*main.Field) (len=3) { - (string) (len=10) "identifier": (*main.Field)(0xc0003145c0)({ - name: (string) (len=10) "identifier", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=14) "fail_if_exists": (*main.Field)(0xc000314600)({ - name: (string) (len=14) "fail_if_exists", - kind: (string) (len=4) "bool", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=7) "balance": (*main.Field)(0xc000314640)({ - name: (string) (len=7) "balance", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=21) "DecodeInvoiceResponse": (*main.Message)(0xc00014db90)({ - fullName: (string) (len=21) "DecodeInvoiceResponse", - name: (string) (len=21) "DecodeInvoiceResponse", - fields: (map[string]*main.Field) (len=1) { - (string) (len=6) "amount": (*main.Field)(0xc000314fc0)({ - name: (string) (len=6) "amount", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=15) "RelaysMigration": (*main.Message)(0xc0001dc3f0)({ - fullName: (string) (len=15) "RelaysMigration", - name: (string) (len=15) "RelaysMigration", - fields: (map[string]*main.Field) (len=1) { - (string) (len=6) "relays": (*main.Field)(0xc0000b0a80)({ - name: (string) (len=6) "relays", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) true, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=13) "BannedAppUser": (*main.Message)(0xc00014d290)({ - fullName: (string) (len=13) "BannedAppUser", - name: (string) (len=13) "BannedAppUser", - fields: (map[string]*main.Field) (len=4) { - (string) (len=8) "app_name": (*main.Field)(0xc00007ff00)({ - name: (string) (len=8) "app_name", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=6) "app_id": (*main.Field)(0xc00007ff40)({ - name: (string) (len=6) "app_id", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=15) "user_identifier": (*main.Field)(0xc00007ff80)({ - name: (string) (len=15) "user_identifier", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=9) "nostr_pub": (*main.Field)(0xc00007ffc0)({ - name: (string) (len=9) "nostr_pub", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=34) "SendAppUserToAppUserPaymentRequest": (*main.Message)(0xc00014d710)({ - fullName: (string) (len=34) "SendAppUserToAppUserPaymentRequest", - name: (string) (len=34) "SendAppUserToAppUserPaymentRequest", - fields: (map[string]*main.Field) (len=3) { - (string) (len=20) "from_user_identifier": (*main.Field)(0xc000314a00)({ - name: (string) (len=20) "from_user_identifier", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=18) "to_user_identifier": (*main.Field)(0xc000314a40)({ - name: (string) (len=18) "to_user_identifier", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=6) "amount": (*main.Field)(0xc000314a80)({ - name: (string) (len=6) "amount", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=17) "NewInvoiceRequest": (*main.Message)(0xc00014da70)({ - fullName: (string) (len=17) "NewInvoiceRequest", - name: (string) (len=17) "NewInvoiceRequest", - fields: (map[string]*main.Field) (len=2) { - (string) (len=10) "amountSats": (*main.Field)(0xc000314ec0)({ - name: (string) (len=10) "amountSats", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=4) "memo": (*main.Field)(0xc000314f00)({ - name: (string) (len=4) "memo", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=19) "OpenChannelResponse": (*main.Message)(0xc00014ddd0)({ - fullName: (string) (len=19) "OpenChannelResponse", - name: (string) (len=19) "OpenChannelResponse", - fields: (map[string]*main.Field) (len=1) { - (string) (len=9) "channelId": (*main.Field)(0xc000315400)({ - name: (string) (len=9) "channelId", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=17) "LiveUserOperation": (*main.Message)(0xc0001dc2d0)({ - fullName: (string) (len=17) "LiveUserOperation", - name: (string) (len=17) "LiveUserOperation", - fields: (map[string]*main.Field) (len=1) { - (string) (len=9) "operation": (*main.Field)(0xc0000b0880)({ - name: (string) (len=9) "operation", - kind: (string) (len=13) "UserOperation", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=7) "LndSeed": (*main.Message)(0xc00014cab0)({ - fullName: (string) (len=7) "LndSeed", - name: (string) (len=7) "LndSeed", - fields: (map[string]*main.Field) (len=1) { - (string) (len=4) "seed": (*main.Field)(0xc00007e900)({ - name: (string) (len=4) "seed", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) true, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=25) "LnurlWithdrawInfoResponse": (*main.Message)(0xc00014de90)({ - fullName: (string) (len=25) "LnurlWithdrawInfoResponse", - name: (string) (len=25) "LnurlWithdrawInfoResponse", - fields: (map[string]*main.Field) (len=8) { - (string) (len=15) "minWithdrawable": (*main.Field)(0xc0003155c0)({ - name: (string) (len=15) "minWithdrawable", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=15) "maxWithdrawable": (*main.Field)(0xc000315600)({ - name: (string) (len=15) "maxWithdrawable", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=12) "balanceCheck": (*main.Field)(0xc000315640)({ - name: (string) (len=12) "balanceCheck", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=7) "payLink": (*main.Field)(0xc000315680)({ - name: (string) (len=7) "payLink", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=3) "tag": (*main.Field)(0xc0003154c0)({ - name: (string) (len=3) "tag", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=8) "callback": (*main.Field)(0xc000315500)({ - name: (string) (len=8) "callback", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=2) "k1": (*main.Field)(0xc000315540)({ - name: (string) (len=2) "k1", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=18) "defaultDescription": (*main.Field)(0xc000315580)({ - name: (string) (len=18) "defaultDescription", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=14) "UserOperations": (*main.Message)(0xc0001dc0f0)({ - fullName: (string) (len=14) "UserOperations", - name: (string) (len=14) "UserOperations", - fields: (map[string]*main.Field) (len=3) { - (string) (len=10) "operations": (*main.Field)(0xc000315fc0)({ - name: (string) (len=10) "operations", - kind: (string) (len=13) "UserOperation", - isMap: (bool) false, - isArray: (bool) true, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=9) "fromIndex": (*main.Field)(0xc000315f40)({ - name: (string) (len=9) "fromIndex", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=7) "toIndex": (*main.Field)(0xc000315f80)({ - name: (string) (len=7) "toIndex", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=30) "RequestNPubLinkingTokenRequest": (*main.Message)(0xc0001dc450)({ - fullName: (string) (len=30) "RequestNPubLinkingTokenRequest", - name: (string) (len=30) "RequestNPubLinkingTokenRequest", - fields: (map[string]*main.Field) (len=1) { - (string) (len=15) "user_identifier": (*main.Field)(0xc0000b0ac0)({ - name: (string) (len=15) "user_identifier", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=18) "AppsMetricsRequest": (*main.Message)(0xc00014cc30)({ - fullName: (string) (len=18) "AppsMetricsRequest", - name: (string) (len=18) "AppsMetricsRequest", - fields: (map[string]*main.Field) (len=3) { - (string) (len=9) "from_unix": (*main.Field)(0xc00007ec40)({ - name: (string) (len=9) "from_unix", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) true, - oneOfName: (string) "" - }), - (string) (len=7) "to_unix": (*main.Field)(0xc00007ec80)({ - name: (string) (len=7) "to_unix", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) true, - oneOfName: (string) "" - }), - (string) (len=18) "include_operations": (*main.Field)(0xc00007ecc0)({ - name: (string) (len=18) "include_operations", - kind: (string) (len=4) "bool", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) true, - oneOfName: (string) "" - }) - } - }), - (string) (len=24) "SetMockAppBalanceRequest": (*main.Message)(0xc00014d890)({ - fullName: (string) (len=24) "SetMockAppBalanceRequest", - name: (string) (len=24) "SetMockAppBalanceRequest", - fields: (map[string]*main.Field) (len=1) { - (string) (len=6) "amount": (*main.Field)(0xc000314c40)({ - name: (string) (len=6) "amount", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=18) "NewAddressResponse": (*main.Message)(0xc00014d950)({ - fullName: (string) (len=18) "NewAddressResponse", - name: (string) (len=18) "NewAddressResponse", - fields: (map[string]*main.Field) (len=1) { - (string) (len=7) "address": (*main.Field)(0xc000314cc0)({ - name: (string) (len=7) "address", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=18) "PayAddressResponse": (*main.Message)(0xc00014da10)({ - fullName: (string) (len=18) "PayAddressResponse", - name: (string) (len=18) "PayAddressResponse", - fields: (map[string]*main.Field) (len=4) { - (string) (len=4) "txId": (*main.Field)(0xc000314dc0)({ - name: (string) (len=4) "txId", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=12) "operation_id": (*main.Field)(0xc000314e00)({ - name: (string) (len=12) "operation_id", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=11) "service_fee": (*main.Field)(0xc000314e40)({ - name: (string) (len=11) "service_fee", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=11) "network_fee": (*main.Field)(0xc000314e80)({ - name: (string) (len=11) "network_fee", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=22) "HandleLnurlPayResponse": (*main.Message)(0xc00014df50)({ - fullName: (string) (len=22) "HandleLnurlPayResponse", - name: (string) (len=22) "HandleLnurlPayResponse", - fields: (map[string]*main.Field) (len=2) { - (string) (len=6) "routes": (*main.Field)(0xc0003158c0)({ - name: (string) (len=6) "routes", - kind: (string) (len=5) "Empty", - isMap: (bool) false, - isArray: (bool) true, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=2) "pr": (*main.Field)(0xc000315880)({ - name: (string) (len=2) "pr", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=25) "GetProductBuyLinkResponse": (*main.Message)(0xc0001dc270)({ - fullName: (string) (len=25) "GetProductBuyLinkResponse", - name: (string) (len=25) "GetProductBuyLinkResponse", - fields: (map[string]*main.Field) (len=1) { - (string) (len=4) "link": (*main.Field)(0xc0000b0840)({ - name: (string) (len=4) "link", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=22) "GetPaymentStateRequest": (*main.Message)(0xc00014dcb0)({ - fullName: (string) (len=22) "GetPaymentStateRequest", - name: (string) (len=22) "GetPaymentStateRequest", - fields: (map[string]*main.Field) (len=1) { - (string) (len=7) "invoice": (*main.Field)(0xc0003151c0)({ - name: (string) (len=7) "invoice", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=11) "UsageMetric": (*main.Message)(0xc00014cb70)({ - fullName: (string) (len=11) "UsageMetric", - name: (string) (len=11) "UsageMetric", - fields: (map[string]*main.Field) (len=9) { - (string) (len=15) "processed_at_ms": (*main.Field)(0xc00007e9c0)({ - name: (string) (len=15) "processed_at_ms", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=12) "auth_in_nano": (*main.Field)(0xc00007ea40)({ - name: (string) (len=12) "auth_in_nano", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=8) "rpc_name": (*main.Field)(0xc00007eb00)({ - name: (string) (len=8) "rpc_name", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=5) "nostr": (*main.Field)(0xc00007eb80)({ - name: (string) (len=5) "nostr", - kind: (string) (len=4) "bool", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=10) "batch_size": (*main.Field)(0xc00007ebc0)({ - name: (string) (len=10) "batch_size", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=14) "parsed_in_nano": (*main.Field)(0xc00007ea00)({ - name: (string) (len=14) "parsed_in_nano", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=16) "validate_in_nano": (*main.Field)(0xc00007ea80)({ - name: (string) (len=16) "validate_in_nano", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=14) "handle_in_nano": (*main.Field)(0xc00007eac0)({ - name: (string) (len=14) "handle_in_nano", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=5) "batch": (*main.Field)(0xc00007eb40)({ - name: (string) (len=5) "batch", - kind: (string) (len=4) "bool", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=10) "AppMetrics": (*main.Message)(0xc00014ccf0)({ - fullName: (string) (len=10) "AppMetrics", - name: (string) (len=10) "AppMetrics", - fields: (map[string]*main.Field) (len=9) { - (string) (len=9) "available": (*main.Field)(0xc00007ef80)({ - name: (string) (len=9) "available", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=4) "fees": (*main.Field)(0xc00007efc0)({ - name: (string) (len=4) "fees", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=8) "invoices": (*main.Field)(0xc00007f000)({ - name: (string) (len=8) "invoices", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=5) "spent": (*main.Field)(0xc00007ef40)({ - name: (string) (len=5) "spent", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=5) "users": (*main.Field)(0xc00007eec0)({ - name: (string) (len=5) "users", - kind: (string) (len=9) "UsersInfo", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=8) "received": (*main.Field)(0xc00007ef00)({ - name: (string) (len=8) "received", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=10) "total_fees": (*main.Field)(0xc00007f040)({ - name: (string) (len=10) "total_fees", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=10) "operations": (*main.Field)(0xc00007f080)({ - name: (string) (len=10) "operations", - kind: (string) (len=13) "UserOperation", - isMap: (bool) false, - isArray: (bool) true, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=3) "app": (*main.Field)(0xc00007ee80)({ - name: (string) (len=3) "app", - kind: (string) (len=11) "Application", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=10) "LndMetrics": (*main.Message)(0xc00014d0b0)({ - fullName: (string) (len=10) "LndMetrics", - name: (string) (len=10) "LndMetrics", - fields: (map[string]*main.Field) (len=1) { - (string) (len=5) "nodes": (*main.Field)(0xc00007fd80)({ - name: (string) (len=5) "nodes", - kind: (string) (len=14) "LndNodeMetrics", - isMap: (bool) false, - isArray: (bool) true, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=11) "Application": (*main.Message)(0xc00014d410)({ - fullName: (string) (len=11) "Application", - name: (string) (len=11) "Application", - fields: (map[string]*main.Field) (len=4) { - (string) (len=2) "id": (*main.Field)(0xc000314340)({ - name: (string) (len=2) "id", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=7) "balance": (*main.Field)(0xc000314440)({ - name: (string) (len=7) "balance", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=4) "npub": (*main.Field)(0xc000314500)({ - name: (string) (len=4) "npub", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=4) "name": (*main.Field)(0xc000314300)({ - name: (string) (len=4) "name", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=20) "AddAppInvoiceRequest": (*main.Message)(0xc00014d590)({ - fullName: (string) (len=20) "AddAppInvoiceRequest", - name: (string) (len=20) "AddAppInvoiceRequest", - fields: (map[string]*main.Field) (len=3) { - (string) (len=16) "payer_identifier": (*main.Field)(0xc000314740)({ - name: (string) (len=16) "payer_identifier", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=17) "http_callback_url": (*main.Field)(0xc000314780)({ - name: (string) (len=17) "http_callback_url", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=11) "invoice_req": (*main.Field)(0xc0003147c0)({ - name: (string) (len=11) "invoice_req", - kind: (string) (len=17) "NewInvoiceRequest", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) true, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=26) "GetAppUserLNURLInfoRequest": (*main.Message)(0xc00014d7d0)({ - fullName: (string) (len=26) "GetAppUserLNURLInfoRequest", - name: (string) (len=26) "GetAppUserLNURLInfoRequest", - fields: (map[string]*main.Field) (len=2) { - (string) (len=17) "base_url_override": (*main.Field)(0xc000314b80)({ - name: (string) (len=17) "base_url_override", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=15) "user_identifier": (*main.Field)(0xc000314b40)({ - name: (string) (len=15) "user_identifier", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=20) "UseInviteLinkRequest": (*main.Message)(0xc0001dc6f0)({ - fullName: (string) (len=20) "UseInviteLinkRequest", - name: (string) (len=20) "UseInviteLinkRequest", - fields: (map[string]*main.Field) (len=1) { - (string) (len=12) "invite_token": (*main.Field)(0xc0000b0d80)({ + (string) (len=12) "invite_token": (*main.Field)(0xc0000b0e40)({ name: (string) (len=12) "invite_token", kind: (string) (len=6) "string", isMap: (bool) false, @@ -4010,127 +3787,43 @@ }) } }), - (string) (len=14) "ChannelRouting": (*main.Message)(0xc00014cff0)({ - fullName: (string) (len=14) "ChannelRouting", - name: (string) (len=14) "ChannelRouting", - fields: (map[string]*main.Field) (len=10) { - (string) (len=11) "send_errors": (*main.Field)(0xc00007f900)({ - name: (string) (len=11) "send_errors", - kind: (string) (len=5) "int64", + (string) (len=12) "UsageMetrics": (*main.Message)(0xc0001a0cf0)({ + fullName: (string) (len=12) "UsageMetrics", + name: (string) (len=12) "UsageMetrics", + fields: (map[string]*main.Field) (len=1) { + (string) (len=7) "metrics": (*main.Field)(0xc00048ac00)({ + name: (string) (len=7) "metrics", + kind: (string) (len=11) "UsageMetric", isMap: (bool) false, - isArray: (bool) false, + isArray: (bool) true, isEnum: (bool) false, - isMessage: (bool) false, + isMessage: (bool) true, isOptional: (bool) false, oneOfName: (string) "" - }), - (string) (len=24) "forward_errors_as_output": (*main.Field)(0xc00007f9c0)({ - name: (string) (len=24) "forward_errors_as_output", - kind: (string) (len=5) "int64", + }) + } + }), + (string) (len=17) "NewAddressRequest": (*main.Message)(0xc0001a1a70)({ + fullName: (string) (len=17) "NewAddressRequest", + name: (string) (len=17) "NewAddressRequest", + fields: (map[string]*main.Field) (len=1) { + (string) (len=11) "addressType": (*main.Field)(0xc000314d00)({ + name: (string) (len=11) "addressType", + kind: (string) (len=11) "AddressType", isMap: (bool) false, isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=20) "forward_fee_as_input": (*main.Field)(0xc00007fa80)({ - name: (string) (len=20) "forward_fee_as_input", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=21) "forward_fee_as_output": (*main.Field)(0xc00007fac0)({ - name: (string) (len=21) "forward_fee_as_output", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=13) "events_number": (*main.Field)(0xc00007fb00)({ - name: (string) (len=13) "events_number", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=10) "channel_id": (*main.Field)(0xc00007f8c0)({ - name: (string) (len=10) "channel_id", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=14) "receive_errors": (*main.Field)(0xc00007f940)({ - name: (string) (len=14) "receive_errors", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=23) "forward_errors_as_input": (*main.Field)(0xc00007f980)({ - name: (string) (len=23) "forward_errors_as_input", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=27) "missed_forward_fee_as_input": (*main.Field)(0xc00007fa00)({ - name: (string) (len=27) "missed_forward_fee_as_input", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=28) "missed_forward_fee_as_output": (*main.Field)(0xc00007fa40)({ - name: (string) (len=28) "missed_forward_fee_as_output", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, + isEnum: (bool) true, isMessage: (bool) false, isOptional: (bool) false, oneOfName: (string) "" }) } }), - (string) (len=24) "PayAppUserInvoiceRequest": (*main.Message)(0xc00014d6b0)({ - fullName: (string) (len=24) "PayAppUserInvoiceRequest", - name: (string) (len=24) "PayAppUserInvoiceRequest", - fields: (map[string]*main.Field) (len=3) { - (string) (len=15) "user_identifier": (*main.Field)(0xc000314940)({ - name: (string) (len=15) "user_identifier", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=7) "invoice": (*main.Field)(0xc000314980)({ + (string) (len=17) "PayInvoiceRequest": (*main.Message)(0xc0001a1d70)({ + fullName: (string) (len=17) "PayInvoiceRequest", + name: (string) (len=17) "PayInvoiceRequest", + fields: (map[string]*main.Field) (len=2) { + (string) (len=7) "invoice": (*main.Field)(0xc000315080)({ name: (string) (len=7) "invoice", kind: (string) (len=6) "string", isMap: (bool) false, @@ -4140,7 +3833,7 @@ isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=6) "amount": (*main.Field)(0xc0003149c0)({ + (string) (len=6) "amount": (*main.Field)(0xc0003150c0)({ name: (string) (len=6) "amount", kind: (string) (len=5) "int64", isMap: (bool) false, @@ -4152,38 +3845,78 @@ }) } }), - (string) (len=28) "SetMockAppUserBalanceRequest": (*main.Message)(0xc00014d830)({ - fullName: (string) (len=28) "SetMockAppUserBalanceRequest", - name: (string) (len=28) "SetMockAppUserBalanceRequest", - fields: (map[string]*main.Field) (len=2) { - (string) (len=6) "amount": (*main.Field)(0xc000314c00)({ - name: (string) (len=6) "amount", - kind: (string) (len=5) "int64", + (string) (len=25) "GetUserOperationsResponse": (*main.Message)(0xc0002162d0)({ + fullName: (string) (len=25) "GetUserOperationsResponse", + name: (string) (len=25) "GetUserOperationsResponse", + fields: (map[string]*main.Field) (len=6) { + (string) (len=26) "latestIncomingTxOperations": (*main.Field)(0xc0000b0640)({ + name: (string) (len=26) "latestIncomingTxOperations", + kind: (string) (len=14) "UserOperations", isMap: (bool) false, isArray: (bool) false, isEnum: (bool) false, - isMessage: (bool) false, + isMessage: (bool) true, isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=15) "user_identifier": (*main.Field)(0xc000314bc0)({ - name: (string) (len=15) "user_identifier", - kind: (string) (len=6) "string", + (string) (len=32) "latestOutgoingUserToUserPayemnts": (*main.Field)(0xc0000b0680)({ + name: (string) (len=32) "latestOutgoingUserToUserPayemnts", + kind: (string) (len=14) "UserOperations", isMap: (bool) false, isArray: (bool) false, isEnum: (bool) false, - isMessage: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=32) "latestIncomingUserToUserPayemnts": (*main.Field)(0xc0000b06c0)({ + name: (string) (len=32) "latestIncomingUserToUserPayemnts", + kind: (string) (len=14) "UserOperations", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=31) "latestOutgoingInvoiceOperations": (*main.Field)(0xc0000b0080)({ + name: (string) (len=31) "latestOutgoingInvoiceOperations", + kind: (string) (len=14) "UserOperations", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=31) "latestIncomingInvoiceOperations": (*main.Field)(0xc0000b0180)({ + name: (string) (len=31) "latestIncomingInvoiceOperations", + kind: (string) (len=14) "UserOperations", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=26) "latestOutgoingTxOperations": (*main.Field)(0xc0000b03c0)({ + name: (string) (len=26) "latestOutgoingTxOperations", + kind: (string) (len=14) "UserOperations", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) true, isOptional: (bool) false, oneOfName: (string) "" }) } }), - (string) (len=17) "PayAddressRequest": (*main.Message)(0xc00014d9b0)({ - fullName: (string) (len=17) "PayAddressRequest", - name: (string) (len=17) "PayAddressRequest", - fields: (map[string]*main.Field) (len=3) { - (string) (len=9) "amoutSats": (*main.Field)(0xc000314d40)({ - name: (string) (len=9) "amoutSats", + (string) (len=10) "AppMetrics": (*main.Message)(0xc0001a0e10)({ + fullName: (string) (len=10) "AppMetrics", + name: (string) (len=10) "AppMetrics", + fields: (map[string]*main.Field) (len=9) { + (string) (len=5) "spent": (*main.Field)(0xc00048af40)({ + name: (string) (len=5) "spent", kind: (string) (len=5) "int64", isMap: (bool) false, isArray: (bool) false, @@ -4192,8 +3925,8 @@ isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=12) "satsPerVByte": (*main.Field)(0xc000314d80)({ - name: (string) (len=12) "satsPerVByte", + (string) (len=9) "available": (*main.Field)(0xc00048af80)({ + name: (string) (len=9) "available", kind: (string) (len=5) "int64", isMap: (bool) false, isArray: (bool) false, @@ -4202,135 +3935,83 @@ isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=7) "address": (*main.Field)(0xc000314d00)({ - name: (string) (len=7) "address", - kind: (string) (len=6) "string", + (string) (len=4) "fees": (*main.Field)(0xc00048afc0)({ + name: (string) (len=4) "fees", + kind: (string) (len=5) "int64", isMap: (bool) false, isArray: (bool) false, isEnum: (bool) false, isMessage: (bool) false, isOptional: (bool) false, oneOfName: (string) "" + }), + (string) (len=8) "invoices": (*main.Field)(0xc00048b000)({ + name: (string) (len=8) "invoices", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=3) "app": (*main.Field)(0xc00048ae80)({ + name: (string) (len=3) "app", + kind: (string) (len=11) "Application", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=5) "users": (*main.Field)(0xc00048aec0)({ + name: (string) (len=5) "users", + kind: (string) (len=9) "UsersInfo", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=8) "received": (*main.Field)(0xc00048af00)({ + name: (string) (len=8) "received", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=10) "total_fees": (*main.Field)(0xc00048b040)({ + name: (string) (len=10) "total_fees", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=10) "operations": (*main.Field)(0xc00048b080)({ + name: (string) (len=10) "operations", + kind: (string) (len=13) "UserOperation", + isMap: (bool) false, + isArray: (bool) true, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" }) } }), - (string) (len=24) "GetUserOperationsRequest": (*main.Message)(0xc0001dc030)({ - fullName: (string) (len=24) "GetUserOperationsRequest", - name: (string) (len=24) "GetUserOperationsRequest", - fields: (map[string]*main.Field) (len=7) { - (string) (len=16) "latestIncomingTx": (*main.Field)(0xc000315b40)({ - name: (string) (len=16) "latestIncomingTx", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=16) "latestOutgoingTx": (*main.Field)(0xc000315b80)({ - name: (string) (len=16) "latestOutgoingTx", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=31) "latestIncomingUserToUserPayment": (*main.Field)(0xc000315bc0)({ - name: (string) (len=31) "latestIncomingUserToUserPayment", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=31) "latestOutgoingUserToUserPayment": (*main.Field)(0xc000315c00)({ - name: (string) (len=31) "latestOutgoingUserToUserPayment", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=8) "max_size": (*main.Field)(0xc000315c40)({ - name: (string) (len=8) "max_size", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=21) "latestIncomingInvoice": (*main.Field)(0xc000315ac0)({ - name: (string) (len=21) "latestIncomingInvoice", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=21) "latestOutgoingInvoice": (*main.Field)(0xc000315b00)({ - name: (string) (len=21) "latestOutgoingInvoice", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=7) "Product": (*main.Message)(0xc0001dc210)({ - fullName: (string) (len=7) "Product", - name: (string) (len=7) "Product", - fields: (map[string]*main.Field) (len=3) { - (string) (len=2) "id": (*main.Field)(0xc0000b0700)({ - name: (string) (len=2) "id", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=4) "name": (*main.Field)(0xc0000b07c0)({ - name: (string) (len=4) "name", - kind: (string) (len=6) "string", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }), - (string) (len=10) "price_sats": (*main.Field)(0xc0000b0800)({ - name: (string) (len=10) "price_sats", - kind: (string) (len=5) "int64", - isMap: (bool) false, - isArray: (bool) false, - isEnum: (bool) false, - isMessage: (bool) false, - isOptional: (bool) false, - oneOfName: (string) "" - }) - } - }), - (string) (len=11) "AppsMetrics": (*main.Message)(0xc00014cd50)({ + (string) (len=11) "AppsMetrics": (*main.Message)(0xc0001a0e70)({ fullName: (string) (len=11) "AppsMetrics", name: (string) (len=11) "AppsMetrics", fields: (map[string]*main.Field) (len=1) { - (string) (len=4) "apps": (*main.Field)(0xc00007f0c0)({ + (string) (len=4) "apps": (*main.Field)(0xc00048b0c0)({ name: (string) (len=4) "apps", kind: (string) (len=10) "AppMetrics", isMap: (bool) false, @@ -4342,12 +4023,22 @@ }) } }), - (string) (len=27) "SetMockInvoiceAsPaidRequest": (*main.Message)(0xc00014d170)({ - fullName: (string) (len=27) "SetMockInvoiceAsPaidRequest", - name: (string) (len=27) "SetMockInvoiceAsPaidRequest", - fields: (map[string]*main.Field) (len=2) { - (string) (len=6) "amount": (*main.Field)(0xc00007fe40)({ - name: (string) (len=6) "amount", + (string) (len=13) "ClosedChannel": (*main.Message)(0xc0001a10b0)({ + fullName: (string) (len=13) "ClosedChannel", + name: (string) (len=13) "ClosedChannel", + fields: (map[string]*main.Field) (len=3) { + (string) (len=10) "channel_id": (*main.Field)(0xc00048b840)({ + name: (string) (len=10) "channel_id", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=8) "capacity": (*main.Field)(0xc00048b880)({ + name: (string) (len=8) "capacity", kind: (string) (len=5) "int64", isMap: (bool) false, isArray: (bool) false, @@ -4356,9 +4047,9 @@ isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=7) "invoice": (*main.Field)(0xc00007fe00)({ - name: (string) (len=7) "invoice", - kind: (string) (len=6) "string", + (string) (len=13) "closed_height": (*main.Field)(0xc00048b8c0)({ + name: (string) (len=13) "closed_height", + kind: (string) (len=5) "int64", isMap: (bool) false, isArray: (bool) false, isEnum: (bool) false, @@ -4368,11 +4059,107 @@ }) } }), - (string) (len=14) "BanUserRequest": (*main.Message)(0xc00014d230)({ + (string) (len=14) "LndNodeMetrics": (*main.Message)(0xc0001a1170)({ + fullName: (string) (len=14) "LndNodeMetrics", + name: (string) (len=14) "LndNodeMetrics", + fields: (map[string]*main.Field) (len=9) { + (string) (len=16) "pending_channels": (*main.Field)(0xc00048bc80)({ + name: (string) (len=16) "pending_channels", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=16) "closing_channels": (*main.Field)(0xc00048bcc0)({ + name: (string) (len=16) "closing_channels", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=13) "open_channels": (*main.Field)(0xc00048bd00)({ + name: (string) (len=13) "open_channels", + kind: (string) (len=11) "OpenChannel", + isMap: (bool) false, + isArray: (bool) true, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=16) "offline_channels": (*main.Field)(0xc00048bc00)({ + name: (string) (len=16) "offline_channels", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=15) "online_channels": (*main.Field)(0xc00048bc40)({ + name: (string) (len=15) "online_channels", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=15) "closed_channels": (*main.Field)(0xc00048bd40)({ + name: (string) (len=15) "closed_channels", + kind: (string) (len=13) "ClosedChannel", + isMap: (bool) false, + isArray: (bool) true, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=15) "channel_routing": (*main.Field)(0xc00048bd80)({ + name: (string) (len=15) "channel_routing", + kind: (string) (len=14) "ChannelRouting", + isMap: (bool) false, + isArray: (bool) true, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=23) "channels_balance_events": (*main.Field)(0xc00048bb80)({ + name: (string) (len=23) "channels_balance_events", + kind: (string) (len=19) "ChannelBalanceEvent", + isMap: (bool) false, + isArray: (bool) true, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=20) "chain_balance_events": (*main.Field)(0xc00048bbc0)({ + name: (string) (len=20) "chain_balance_events", + kind: (string) (len=17) "ChainBalanceEvent", + isMap: (bool) false, + isArray: (bool) true, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=14) "BanUserRequest": (*main.Message)(0xc0001a13b0)({ fullName: (string) (len=14) "BanUserRequest", name: (string) (len=14) "BanUserRequest", fields: (map[string]*main.Field) (len=1) { - (string) (len=7) "user_id": (*main.Field)(0xc00007fec0)({ + (string) (len=7) "user_id": (*main.Field)(0xc00048bf40)({ name: (string) (len=7) "user_id", kind: (string) (len=6) "string", isMap: (bool) false, @@ -4384,12 +4171,22 @@ }) } }), - (string) (len=17) "GetAppUserRequest": (*main.Message)(0xc00014d650)({ - fullName: (string) (len=17) "GetAppUserRequest", - name: (string) (len=17) "GetAppUserRequest", - fields: (map[string]*main.Field) (len=1) { - (string) (len=15) "user_identifier": (*main.Field)(0xc000314900)({ - name: (string) (len=15) "user_identifier", + (string) (len=13) "AddAppRequest": (*main.Message)(0xc0001a14d0)({ + fullName: (string) (len=13) "AddAppRequest", + name: (string) (len=13) "AddAppRequest", + fields: (map[string]*main.Field) (len=2) { + (string) (len=19) "allow_user_creation": (*main.Field)(0xc0003142c0)({ + name: (string) (len=19) "allow_user_creation", + kind: (string) (len=4) "bool", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=4) "name": (*main.Field)(0xc000314200)({ + name: (string) (len=4) "name", kind: (string) (len=6) "string", isMap: (bool) false, isArray: (bool) false, @@ -4400,11 +4197,203 @@ }) } }), - (string) (len=18) "NewInvoiceResponse": (*main.Message)(0xc00014dad0)({ + (string) (len=24) "AddAppUserInvoiceRequest": (*main.Message)(0xc0001a1770)({ + fullName: (string) (len=24) "AddAppUserInvoiceRequest", + name: (string) (len=24) "AddAppUserInvoiceRequest", + fields: (map[string]*main.Field) (len=4) { + (string) (len=19) "receiver_identifier": (*main.Field)(0xc000314880)({ + name: (string) (len=19) "receiver_identifier", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=16) "payer_identifier": (*main.Field)(0xc0003148c0)({ + name: (string) (len=16) "payer_identifier", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=17) "http_callback_url": (*main.Field)(0xc000314900)({ + name: (string) (len=17) "http_callback_url", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=11) "invoice_req": (*main.Field)(0xc000314940)({ + name: (string) (len=11) "invoice_req", + kind: (string) (len=17) "NewInvoiceRequest", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=24) "SetMockAppBalanceRequest": (*main.Message)(0xc0001a1a10)({ + fullName: (string) (len=24) "SetMockAppBalanceRequest", + name: (string) (len=24) "SetMockAppBalanceRequest", + fields: (map[string]*main.Field) (len=1) { + (string) (len=6) "amount": (*main.Field)(0xc000314cc0)({ + name: (string) (len=6) "amount", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=16) "ClosureMigration": (*main.Message)(0xc000216510)({ + fullName: (string) (len=16) "ClosureMigration", + name: (string) (len=16) "ClosureMigration", + fields: (map[string]*main.Field) (len=1) { + (string) (len=14) "closes_at_unix": (*main.Field)(0xc0000b0ac0)({ + name: (string) (len=14) "closes_at_unix", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=7) "AuthApp": (*main.Message)(0xc0001a15f0)({ + fullName: (string) (len=7) "AuthApp", + name: (string) (len=7) "AuthApp", + fields: (map[string]*main.Field) (len=2) { + (string) (len=3) "app": (*main.Field)(0xc0003145c0)({ + name: (string) (len=3) "app", + kind: (string) (len=11) "Application", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=10) "auth_token": (*main.Field)(0xc000314600)({ + name: (string) (len=10) "auth_token", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=20) "AddAppInvoiceRequest": (*main.Message)(0xc0001a1710)({ + fullName: (string) (len=20) "AddAppInvoiceRequest", + name: (string) (len=20) "AddAppInvoiceRequest", + fields: (map[string]*main.Field) (len=3) { + (string) (len=16) "payer_identifier": (*main.Field)(0xc0003147c0)({ + name: (string) (len=16) "payer_identifier", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=17) "http_callback_url": (*main.Field)(0xc000314800)({ + name: (string) (len=17) "http_callback_url", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=11) "invoice_req": (*main.Field)(0xc000314840)({ + name: (string) (len=11) "invoice_req", + kind: (string) (len=17) "NewInvoiceRequest", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) true, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=24) "PayAppUserInvoiceRequest": (*main.Message)(0xc0001a1830)({ + fullName: (string) (len=24) "PayAppUserInvoiceRequest", + name: (string) (len=24) "PayAppUserInvoiceRequest", + fields: (map[string]*main.Field) (len=3) { + (string) (len=15) "user_identifier": (*main.Field)(0xc0003149c0)({ + name: (string) (len=15) "user_identifier", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=7) "invoice": (*main.Field)(0xc000314a00)({ + name: (string) (len=7) "invoice", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=6) "amount": (*main.Field)(0xc000314a40)({ + name: (string) (len=6) "amount", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=18) "NewAddressResponse": (*main.Message)(0xc0001a1ad0)({ + fullName: (string) (len=18) "NewAddressResponse", + name: (string) (len=18) "NewAddressResponse", + fields: (map[string]*main.Field) (len=1) { + (string) (len=7) "address": (*main.Field)(0xc000314d40)({ + name: (string) (len=7) "address", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=18) "NewInvoiceResponse": (*main.Message)(0xc0001a1c50)({ fullName: (string) (len=18) "NewInvoiceResponse", name: (string) (len=18) "NewInvoiceResponse", fields: (map[string]*main.Field) (len=1) { - (string) (len=7) "invoice": (*main.Field)(0xc000314f40)({ + (string) (len=7) "invoice": (*main.Field)(0xc000314fc0)({ name: (string) (len=7) "invoice", kind: (string) (len=6) "string", isMap: (bool) false, @@ -4416,67 +4405,133 @@ }) } }), - (string) (len=25) "GetUserOperationsResponse": (*main.Message)(0xc0001dc150)({ - fullName: (string) (len=25) "GetUserOperationsResponse", - name: (string) (len=25) "GetUserOperationsResponse", - fields: (map[string]*main.Field) (len=6) { - (string) (len=31) "latestOutgoingInvoiceOperations": (*main.Field)(0xc0000b0000)({ - name: (string) (len=31) "latestOutgoingInvoiceOperations", - kind: (string) (len=14) "UserOperations", + (string) (len=13) "UserOperation": (*main.Message)(0xc000216210)({ + fullName: (string) (len=13) "UserOperation", + name: (string) (len=13) "UserOperation", + fields: (map[string]*main.Field) (len=11) { + (string) (len=6) "amount": (*main.Field)(0xc000315dc0)({ + name: (string) (len=6) "amount", + kind: (string) (len=5) "int64", isMap: (bool) false, isArray: (bool) false, isEnum: (bool) false, - isMessage: (bool) true, + isMessage: (bool) false, isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=31) "latestIncomingInvoiceOperations": (*main.Field)(0xc0000b0040)({ - name: (string) (len=31) "latestIncomingInvoiceOperations", - kind: (string) (len=14) "UserOperations", + (string) (len=10) "identifier": (*main.Field)(0xc000315e00)({ + name: (string) (len=10) "identifier", + kind: (string) (len=6) "string", isMap: (bool) false, isArray: (bool) false, isEnum: (bool) false, - isMessage: (bool) true, + isMessage: (bool) false, isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=26) "latestOutgoingTxOperations": (*main.Field)(0xc0000b0080)({ - name: (string) (len=26) "latestOutgoingTxOperations", - kind: (string) (len=14) "UserOperations", + (string) (len=11) "operationId": (*main.Field)(0xc000315e40)({ + name: (string) (len=11) "operationId", + kind: (string) (len=6) "string", isMap: (bool) false, isArray: (bool) false, isEnum: (bool) false, - isMessage: (bool) true, + isMessage: (bool) false, isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=26) "latestIncomingTxOperations": (*main.Field)(0xc0000b0180)({ - name: (string) (len=26) "latestIncomingTxOperations", - kind: (string) (len=14) "UserOperations", + (string) (len=11) "network_fee": (*main.Field)(0xc000315ec0)({ + name: (string) (len=11) "network_fee", + kind: (string) (len=5) "int64", isMap: (bool) false, isArray: (bool) false, isEnum: (bool) false, - isMessage: (bool) true, + isMessage: (bool) false, isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=32) "latestOutgoingUserToUserPayemnts": (*main.Field)(0xc0000b03c0)({ - name: (string) (len=32) "latestOutgoingUserToUserPayemnts", - kind: (string) (len=14) "UserOperations", + (string) (len=9) "confirmed": (*main.Field)(0xc000315f00)({ + name: (string) (len=9) "confirmed", + kind: (string) (len=4) "bool", isMap: (bool) false, isArray: (bool) false, isEnum: (bool) false, - isMessage: (bool) true, + isMessage: (bool) false, isOptional: (bool) false, oneOfName: (string) "" }), - (string) (len=32) "latestIncomingUserToUserPayemnts": (*main.Field)(0xc0000b0640)({ - name: (string) (len=32) "latestIncomingUserToUserPayemnts", - kind: (string) (len=14) "UserOperations", + (string) (len=7) "tx_hash": (*main.Field)(0xc000315f40)({ + name: (string) (len=7) "tx_hash", + kind: (string) (len=6) "string", isMap: (bool) false, isArray: (bool) false, isEnum: (bool) false, - isMessage: (bool) true, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=10) "paidAtUnix": (*main.Field)(0xc000315d00)({ + name: (string) (len=10) "paidAtUnix", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=4) "type": (*main.Field)(0xc000315d40)({ + name: (string) (len=4) "type", + kind: (string) (len=17) "UserOperationType", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) true, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=8) "internal": (*main.Field)(0xc000315f80)({ + name: (string) (len=8) "internal", + kind: (string) (len=4) "bool", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=7) "inbound": (*main.Field)(0xc000315d80)({ + name: (string) (len=7) "inbound", + kind: (string) (len=4) "bool", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }), + (string) (len=11) "service_fee": (*main.Field)(0xc000315e80)({ + name: (string) (len=11) "service_fee", + kind: (string) (len=5) "int64", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, + isOptional: (bool) false, + oneOfName: (string) "" + }) + } + }), + (string) (len=20) "UseInviteLinkRequest": (*main.Message)(0xc000216870)({ + fullName: (string) (len=20) "UseInviteLinkRequest", + name: (string) (len=20) "UseInviteLinkRequest", + fields: (map[string]*main.Field) (len=1) { + (string) (len=12) "invite_token": (*main.Field)(0xc0000b0e00)({ + name: (string) (len=12) "invite_token", + kind: (string) (len=6) "string", + isMap: (bool) false, + isArray: (bool) false, + isEnum: (bool) false, + isMessage: (bool) false, isOptional: (bool) false, oneOfName: (string) "" }) @@ -4487,7 +4542,7 @@ (map[string][]*main.Field) { } -parsing file: structs 79 +parsing file: structs 80 parsing file: methods 2 -> [{guest Guest map[]} {user User map[app_id:string app_user_id:string user_id:string]} {admin Admin map[admin_id:string]} {metrics Metrics map[operator_id:string]} {app App map[app_id:string]} {guestPub GuestWithPub map[app_id:string pub:string]}] diff --git a/proto/autogenerated/ts/express_server.ts b/proto/autogenerated/ts/express_server.ts index 605318ce..769de65c 100644 --- a/proto/autogenerated/ts/express_server.ts +++ b/proto/autogenerated/ts/express_server.ts @@ -141,6 +141,25 @@ export default (methods: Types.ServerMethods, opts: ServerOptions) => { opts.metricsCallback([{ ...info, ...stats, ...authContext }]) } catch (ex) { const e = ex as any; logErrorAndReturnResponse(e, e.message || e, res, logger, { ...info, ...stats, ...authCtx }, opts.metricsCallback); if (opts.throwErrors) throw e } }) + if (!opts.allowNotImplementedMethods && !methods.ListChannels) throw new Error('method: ListChannels is not implemented') + app.get('/api/admin/channels', async (req, res) => { + const info: Types.RequestInfo = { rpcName: 'ListChannels', batch: false, nostr: false, batchSize: 0} + const stats: Types.RequestStats = { startMs:req.startTimeMs || 0, start:req.startTime || 0n, parse: process.hrtime.bigint(), guard: 0n, validate: 0n, handle: 0n } + let authCtx: Types.AuthContext = {} + try { + if (!methods.ListChannels) throw new Error('method: ListChannels is not implemented') + const authContext = await opts.AdminAuthGuard(req.headers['authorization']) + authCtx = authContext + stats.guard = process.hrtime.bigint() + stats.validate = stats.guard + const query = req.query + const params = req.params + const response = await methods.ListChannels({rpcName:'ListChannels', ctx:authContext }) + stats.handle = process.hrtime.bigint() + res.json({status: 'OK', ...response}) + opts.metricsCallback([{ ...info, ...stats, ...authContext }]) + } catch (ex) { const e = ex as any; logErrorAndReturnResponse(e, e.message || e, res, logger, { ...info, ...stats, ...authCtx }, opts.metricsCallback); if (opts.throwErrors) throw e } + }) if (!opts.allowNotImplementedMethods && !methods.GetUsageMetrics) throw new Error('method: GetUsageMetrics is not implemented') app.post('/api/reports/usage', async (req, res) => { const info: Types.RequestInfo = { rpcName: 'GetUsageMetrics', batch: false, nostr: false, batchSize: 0} diff --git a/proto/autogenerated/ts/http_client.ts b/proto/autogenerated/ts/http_client.ts index 5389de12..cad2b106 100644 --- a/proto/autogenerated/ts/http_client.ts +++ b/proto/autogenerated/ts/http_client.ts @@ -87,6 +87,20 @@ export default (params: ClientParams) => ({ } return { status: 'ERROR', reason: 'invalid response' } }, + ListChannels: async (): Promise => { + const auth = await params.retrieveAdminAuth() + if (auth === null) throw new Error('retrieveAdminAuth() returned null') + let finalRoute = '/api/admin/channels' + const { data } = await axios.get(params.baseUrl + finalRoute, { headers: { 'authorization': auth } }) + if (data.status === 'ERROR' && typeof data.reason === 'string') return data + if (data.status === 'OK') { + const result = data + if(!params.checkResult) return { status: 'OK', ...result } + const error = Types.LndChannelsValidate(result) + if (error === null) { return { status: 'OK', ...result } } else return { status: 'ERROR', reason: error.message } + } + return { status: 'ERROR', reason: 'invalid response' } + }, GetUsageMetrics: async (): Promise => { const auth = await params.retrieveMetricsAuth() if (auth === null) throw new Error('retrieveMetricsAuth() returned null') diff --git a/proto/autogenerated/ts/nostr_client.ts b/proto/autogenerated/ts/nostr_client.ts index 5fd44298..c39ad91c 100644 --- a/proto/autogenerated/ts/nostr_client.ts +++ b/proto/autogenerated/ts/nostr_client.ts @@ -86,6 +86,20 @@ export default (params: NostrClientParams, send: (to:string, message: NostrRequ } return { status: 'ERROR', reason: 'invalid response' } }, + ListChannels: async (): Promise => { + const auth = await params.retrieveNostrAdminAuth() + if (auth === null) throw new Error('retrieveNostrAdminAuth() returned null') + const nostrRequest: NostrRequest = {} + const data = await send(params.pubDestination, {rpcName:'ListChannels',authIdentifier:auth, ...nostrRequest }) + if (data.status === 'ERROR' && typeof data.reason === 'string') return data + if (data.status === 'OK') { + const result = data + if(!params.checkResult) return { status: 'OK', ...result } + const error = Types.LndChannelsValidate(result) + if (error === null) { return { status: 'OK', ...result } } else return { status: 'ERROR', reason: error.message } + } + return { status: 'ERROR', reason: 'invalid response' } + }, GetUsageMetrics: async (): Promise => { const auth = await params.retrieveNostrMetricsAuth() if (auth === null) throw new Error('retrieveNostrMetricsAuth() returned null') diff --git a/proto/autogenerated/ts/nostr_transport.ts b/proto/autogenerated/ts/nostr_transport.ts index 2b0c3a09..94019b25 100644 --- a/proto/autogenerated/ts/nostr_transport.ts +++ b/proto/autogenerated/ts/nostr_transport.ts @@ -16,10 +16,10 @@ export type NostrOptions = { logger?: Logger throwErrors?: true metricsCallback: (metrics: Types.RequestMetric[]) => void - NostrAdminAuthGuard: (appId?:string, identifier?: string) => Promise - NostrMetricsAuthGuard: (appId?:string, identifier?: string) => Promise NostrUserAuthGuard: (appId?:string, identifier?: string) => Promise NostrGuestWithPubAuthGuard: (appId?:string, identifier?: string) => Promise + NostrAdminAuthGuard: (appId?:string, identifier?: string) => Promise + NostrMetricsAuthGuard: (appId?:string, identifier?: string) => Promise } const logErrorAndReturnResponse = (error: Error, response: string, res: NostrResponse, logger: Logger, metric: Types.RequestMetric, metricsCallback: (metrics: Types.RequestMetric[]) => void) => { logger.error(error.message || error); metricsCallback([{ ...metric, error: response }]); res({ status: 'ERROR', reason: response }) @@ -109,6 +109,19 @@ export default (methods: Types.ServerMethods, opts: NostrOptions) => { opts.metricsCallback([{ ...info, ...stats, ...authContext }]) }catch(ex){ const e = ex as any; logErrorAndReturnResponse(e, e.message || e, res, logger, { ...info, ...stats, ...authCtx }, opts.metricsCallback); if (opts.throwErrors) throw e } break + case 'ListChannels': + try { + if (!methods.ListChannels) throw new Error('method: ListChannels is not implemented') + const authContext = await opts.NostrAdminAuthGuard(req.appId, req.authIdentifier) + stats.guard = process.hrtime.bigint() + authCtx = authContext + stats.validate = stats.guard + const response = await methods.ListChannels({rpcName:'ListChannels', ctx:authContext }) + stats.handle = process.hrtime.bigint() + res({status: 'OK', ...response}) + opts.metricsCallback([{ ...info, ...stats, ...authContext }]) + }catch(ex){ const e = ex as any; logErrorAndReturnResponse(e, e.message || e, res, logger, { ...info, ...stats, ...authCtx }, opts.metricsCallback); if (opts.throwErrors) throw e } + break case 'GetUsageMetrics': try { if (!methods.GetUsageMetrics) throw new Error('method: GetUsageMetrics is not implemented') diff --git a/proto/autogenerated/ts/types.ts b/proto/autogenerated/ts/types.ts index 0ffe158e..1b2b7456 100644 --- a/proto/autogenerated/ts/types.ts +++ b/proto/autogenerated/ts/types.ts @@ -9,17 +9,17 @@ export type GuestContext = { export type GuestMethodInputs = Health_Input | EncryptionExchange_Input | SetMockInvoiceAsPaid_Input | GetLnurlWithdrawInfo_Input | HandleLnurlWithdraw_Input | GetLnurlPayInfo_Input | HandleLnurlPay_Input | HandleLnurlAddress_Input export type GuestMethodOutputs = Health_Output | EncryptionExchange_Output | SetMockInvoiceAsPaid_Output | GetLnurlWithdrawInfo_Output | HandleLnurlWithdraw_Output | GetLnurlPayInfo_Output | HandleLnurlPay_Output | HandleLnurlAddress_Output export type UserContext = { + app_user_id: string user_id: string app_id: string - app_user_id: string } export type UserMethodInputs = EnrollAdminToken_Input | UserHealth_Input | GetUserInfo_Input | AddProduct_Input | NewProductInvoice_Input | GetUserOperations_Input | NewAddress_Input | PayAddress_Input | NewInvoice_Input | DecodeInvoice_Input | PayInvoice_Input | GetPaymentState_Input | OpenChannel_Input | GetLnurlWithdrawLink_Input | GetLnurlPayLink_Input | GetLNURLChannelLink_Input export type UserMethodOutputs = EnrollAdminToken_Output | UserHealth_Output | GetUserInfo_Output | AddProduct_Output | NewProductInvoice_Output | GetUserOperations_Output | NewAddress_Output | PayAddress_Output | NewInvoice_Output | DecodeInvoice_Output | PayInvoice_Output | GetPaymentState_Output | OpenChannel_Output | GetLnurlWithdrawLink_Output | GetLnurlPayLink_Output | GetLNURLChannelLink_Output export type AdminContext = { admin_id: string } -export type AdminMethodInputs = LndGetInfo_Input | AddApp_Input | AuthApp_Input | BanUser_Input | GetSeed_Input | CreateOneTimeInviteLink_Input | GetInviteLinkState_Input -export type AdminMethodOutputs = LndGetInfo_Output | AddApp_Output | AuthApp_Output | BanUser_Output | GetSeed_Output | CreateOneTimeInviteLink_Output | GetInviteLinkState_Output +export type AdminMethodInputs = LndGetInfo_Input | AddApp_Input | AuthApp_Input | BanUser_Input | GetSeed_Input | ListChannels_Input | CreateOneTimeInviteLink_Input | GetInviteLinkState_Input +export type AdminMethodOutputs = LndGetInfo_Output | AddApp_Output | AuthApp_Output | BanUser_Output | GetSeed_Output | ListChannels_Output | CreateOneTimeInviteLink_Output | GetInviteLinkState_Output export type MetricsContext = { operator_id: string } @@ -31,8 +31,8 @@ export type AppContext = { export type AppMethodInputs = GetApp_Input | AddAppUser_Input | AddAppInvoice_Input | AddAppUserInvoice_Input | GetAppUser_Input | PayAppUserInvoice_Input | SendAppUserToAppUserPayment_Input | SendAppUserToAppPayment_Input | GetAppUserLNURLInfo_Input | SetMockAppUserBalance_Input | SetMockAppBalance_Input | RequestNPubLinkingToken_Input | ResetNPubLinkingToken_Input export type AppMethodOutputs = GetApp_Output | AddAppUser_Output | AddAppInvoice_Output | AddAppUserInvoice_Output | GetAppUser_Output | PayAppUserInvoice_Output | SendAppUserToAppUserPayment_Output | SendAppUserToAppPayment_Output | GetAppUserLNURLInfo_Output | SetMockAppUserBalance_Output | SetMockAppBalance_Output | RequestNPubLinkingToken_Output | ResetNPubLinkingToken_Output export type GuestWithPubContext = { - app_id: string pub: string + app_id: string } export type GuestWithPubMethodInputs = LinkNPubThroughToken_Input | UseInviteLink_Input export type GuestWithPubMethodOutputs = LinkNPubThroughToken_Output | UseInviteLink_Output @@ -53,6 +53,9 @@ export type BanUser_Output = ResultError | ({ status: 'OK' } & BanUserResponse) export type GetSeed_Input = {rpcName:'GetSeed'} export type GetSeed_Output = ResultError | ({ status: 'OK' } & LndSeed) +export type ListChannels_Input = {rpcName:'ListChannels'} +export type ListChannels_Output = ResultError | ({ status: 'OK' } & LndChannels) + export type GetUsageMetrics_Input = {rpcName:'GetUsageMetrics'} export type GetUsageMetrics_Output = ResultError | ({ status: 'OK' } & UsageMetrics) @@ -225,6 +228,7 @@ export type ServerMethods = { AuthApp?: (req: AuthApp_Input & {ctx: AdminContext }) => Promise BanUser?: (req: BanUser_Input & {ctx: AdminContext }) => Promise GetSeed?: (req: GetSeed_Input & {ctx: AdminContext }) => Promise + ListChannels?: (req: ListChannels_Input & {ctx: AdminContext }) => Promise GetUsageMetrics?: (req: GetUsageMetrics_Input & {ctx: MetricsContext }) => Promise GetAppsMetrics?: (req: GetAppsMetrics_Input & {ctx: MetricsContext }) => Promise GetLndMetrics?: (req: GetLndMetrics_Input & {ctx: MetricsContext }) => Promise @@ -300,374 +304,25 @@ export type OptionsBaseMessage = { allOptionalsAreSet?: true } -export type BannedAppUser = { - app_id: string +export type GetAppUserLNURLInfoRequest = { user_identifier: string - nostr_pub: string - app_name: string + base_url_override: string } -export const BannedAppUserOptionalFields: [] = [] -export type BannedAppUserOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - app_name_CustomCheck?: (v: string) => boolean - app_id_CustomCheck?: (v: string) => boolean - user_identifier_CustomCheck?: (v: string) => boolean - nostr_pub_CustomCheck?: (v: string) => boolean -} -export const BannedAppUserValidate = (o?: BannedAppUser, opts: BannedAppUserOptions = {}, path: string = 'BannedAppUser::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.app_id !== 'string') return new Error(`${path}.app_id: is not a string`) - if (opts.app_id_CustomCheck && !opts.app_id_CustomCheck(o.app_id)) return new Error(`${path}.app_id: custom check failed`) - - if (typeof o.user_identifier !== 'string') return new Error(`${path}.user_identifier: is not a string`) - if (opts.user_identifier_CustomCheck && !opts.user_identifier_CustomCheck(o.user_identifier)) return new Error(`${path}.user_identifier: custom check failed`) - - if (typeof o.nostr_pub !== 'string') return new Error(`${path}.nostr_pub: is not a string`) - if (opts.nostr_pub_CustomCheck && !opts.nostr_pub_CustomCheck(o.nostr_pub)) return new Error(`${path}.nostr_pub: custom check failed`) - - if (typeof o.app_name !== 'string') return new Error(`${path}.app_name: is not a string`) - if (opts.app_name_CustomCheck && !opts.app_name_CustomCheck(o.app_name)) return new Error(`${path}.app_name: custom check failed`) - - return null -} - -export type SendAppUserToAppUserPaymentRequest = { - from_user_identifier: string - to_user_identifier: string - amount: number -} -export const SendAppUserToAppUserPaymentRequestOptionalFields: [] = [] -export type SendAppUserToAppUserPaymentRequestOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - from_user_identifier_CustomCheck?: (v: string) => boolean - to_user_identifier_CustomCheck?: (v: string) => boolean - amount_CustomCheck?: (v: number) => boolean -} -export const SendAppUserToAppUserPaymentRequestValidate = (o?: SendAppUserToAppUserPaymentRequest, opts: SendAppUserToAppUserPaymentRequestOptions = {}, path: string = 'SendAppUserToAppUserPaymentRequest::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.from_user_identifier !== 'string') return new Error(`${path}.from_user_identifier: is not a string`) - if (opts.from_user_identifier_CustomCheck && !opts.from_user_identifier_CustomCheck(o.from_user_identifier)) return new Error(`${path}.from_user_identifier: custom check failed`) - - if (typeof o.to_user_identifier !== 'string') return new Error(`${path}.to_user_identifier: is not a string`) - if (opts.to_user_identifier_CustomCheck && !opts.to_user_identifier_CustomCheck(o.to_user_identifier)) return new Error(`${path}.to_user_identifier: custom check failed`) - - if (typeof o.amount !== 'number') return new Error(`${path}.amount: is not a number`) - if (opts.amount_CustomCheck && !opts.amount_CustomCheck(o.amount)) return new Error(`${path}.amount: custom check failed`) - - return null -} - -export type NewInvoiceRequest = { - amountSats: number - memo: string -} -export const NewInvoiceRequestOptionalFields: [] = [] -export type NewInvoiceRequestOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - memo_CustomCheck?: (v: string) => boolean - amountSats_CustomCheck?: (v: number) => boolean -} -export const NewInvoiceRequestValidate = (o?: NewInvoiceRequest, opts: NewInvoiceRequestOptions = {}, path: string = 'NewInvoiceRequest::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.amountSats !== 'number') return new Error(`${path}.amountSats: is not a number`) - if (opts.amountSats_CustomCheck && !opts.amountSats_CustomCheck(o.amountSats)) return new Error(`${path}.amountSats: custom check failed`) - - if (typeof o.memo !== 'string') return new Error(`${path}.memo: is not a string`) - if (opts.memo_CustomCheck && !opts.memo_CustomCheck(o.memo)) return new Error(`${path}.memo: custom check failed`) - - return null -} - -export type OpenChannelResponse = { - channelId: string -} -export const OpenChannelResponseOptionalFields: [] = [] -export type OpenChannelResponseOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - channelId_CustomCheck?: (v: string) => boolean -} -export const OpenChannelResponseValidate = (o?: OpenChannelResponse, opts: OpenChannelResponseOptions = {}, path: string = 'OpenChannelResponse::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.channelId !== 'string') return new Error(`${path}.channelId: is not a string`) - if (opts.channelId_CustomCheck && !opts.channelId_CustomCheck(o.channelId)) return new Error(`${path}.channelId: custom check failed`) - - return null -} - -export type LiveUserOperation = { - operation: UserOperation -} -export const LiveUserOperationOptionalFields: [] = [] -export type LiveUserOperationOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - operation_Options?: UserOperationOptions -} -export const LiveUserOperationValidate = (o?: LiveUserOperation, opts: LiveUserOperationOptions = {}, path: string = 'LiveUserOperation::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - const operationErr = UserOperationValidate(o.operation, opts.operation_Options, `${path}.operation`) - if (operationErr !== null) return operationErr - - - return null -} - -export type LndSeed = { - seed: string[] -} -export const LndSeedOptionalFields: [] = [] -export type LndSeedOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - seed_CustomCheck?: (v: string[]) => boolean -} -export const LndSeedValidate = (o?: LndSeed, opts: LndSeedOptions = {}, path: string = 'LndSeed::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (!Array.isArray(o.seed)) return new Error(`${path}.seed: is not an array`) - for (let index = 0; index < o.seed.length; index++) { - if (typeof o.seed[index] !== 'string') return new Error(`${path}.seed[${index}]: is not a string`) - } - if (opts.seed_CustomCheck && !opts.seed_CustomCheck(o.seed)) return new Error(`${path}.seed: custom check failed`) - - return null -} - -export type LnurlWithdrawInfoResponse = { - minWithdrawable: number - maxWithdrawable: number - balanceCheck: string - payLink: string - tag: string - callback: string - k1: string - defaultDescription: string -} -export const LnurlWithdrawInfoResponseOptionalFields: [] = [] -export type LnurlWithdrawInfoResponseOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - k1_CustomCheck?: (v: string) => boolean - defaultDescription_CustomCheck?: (v: string) => boolean - minWithdrawable_CustomCheck?: (v: number) => boolean - maxWithdrawable_CustomCheck?: (v: number) => boolean - balanceCheck_CustomCheck?: (v: string) => boolean - payLink_CustomCheck?: (v: string) => boolean - tag_CustomCheck?: (v: string) => boolean - callback_CustomCheck?: (v: string) => boolean -} -export const LnurlWithdrawInfoResponseValidate = (o?: LnurlWithdrawInfoResponse, opts: LnurlWithdrawInfoResponseOptions = {}, path: string = 'LnurlWithdrawInfoResponse::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.callback !== 'string') return new Error(`${path}.callback: is not a string`) - if (opts.callback_CustomCheck && !opts.callback_CustomCheck(o.callback)) return new Error(`${path}.callback: custom check failed`) - - if (typeof o.k1 !== 'string') return new Error(`${path}.k1: is not a string`) - if (opts.k1_CustomCheck && !opts.k1_CustomCheck(o.k1)) return new Error(`${path}.k1: custom check failed`) - - if (typeof o.defaultDescription !== 'string') return new Error(`${path}.defaultDescription: is not a string`) - if (opts.defaultDescription_CustomCheck && !opts.defaultDescription_CustomCheck(o.defaultDescription)) return new Error(`${path}.defaultDescription: custom check failed`) - - if (typeof o.minWithdrawable !== 'number') return new Error(`${path}.minWithdrawable: is not a number`) - if (opts.minWithdrawable_CustomCheck && !opts.minWithdrawable_CustomCheck(o.minWithdrawable)) return new Error(`${path}.minWithdrawable: custom check failed`) - - if (typeof o.maxWithdrawable !== 'number') return new Error(`${path}.maxWithdrawable: is not a number`) - if (opts.maxWithdrawable_CustomCheck && !opts.maxWithdrawable_CustomCheck(o.maxWithdrawable)) return new Error(`${path}.maxWithdrawable: custom check failed`) - - if (typeof o.balanceCheck !== 'string') return new Error(`${path}.balanceCheck: is not a string`) - if (opts.balanceCheck_CustomCheck && !opts.balanceCheck_CustomCheck(o.balanceCheck)) return new Error(`${path}.balanceCheck: custom check failed`) - - if (typeof o.payLink !== 'string') return new Error(`${path}.payLink: is not a string`) - if (opts.payLink_CustomCheck && !opts.payLink_CustomCheck(o.payLink)) return new Error(`${path}.payLink: custom check failed`) - - if (typeof o.tag !== 'string') return new Error(`${path}.tag: is not a string`) - if (opts.tag_CustomCheck && !opts.tag_CustomCheck(o.tag)) return new Error(`${path}.tag: custom check failed`) - - return null -} - -export type UserOperations = { - toIndex: number - operations: UserOperation[] - fromIndex: number -} -export const UserOperationsOptionalFields: [] = [] -export type UserOperationsOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - fromIndex_CustomCheck?: (v: number) => boolean - toIndex_CustomCheck?: (v: number) => boolean - operations_ItemOptions?: UserOperationOptions - operations_CustomCheck?: (v: UserOperation[]) => boolean -} -export const UserOperationsValidate = (o?: UserOperations, opts: UserOperationsOptions = {}, path: string = 'UserOperations::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.toIndex !== 'number') return new Error(`${path}.toIndex: is not a number`) - if (opts.toIndex_CustomCheck && !opts.toIndex_CustomCheck(o.toIndex)) return new Error(`${path}.toIndex: custom check failed`) - - if (!Array.isArray(o.operations)) return new Error(`${path}.operations: is not an array`) - for (let index = 0; index < o.operations.length; index++) { - const operationsErr = UserOperationValidate(o.operations[index], opts.operations_ItemOptions, `${path}.operations[${index}]`) - if (operationsErr !== null) return operationsErr - } - if (opts.operations_CustomCheck && !opts.operations_CustomCheck(o.operations)) return new Error(`${path}.operations: custom check failed`) - - if (typeof o.fromIndex !== 'number') return new Error(`${path}.fromIndex: is not a number`) - if (opts.fromIndex_CustomCheck && !opts.fromIndex_CustomCheck(o.fromIndex)) return new Error(`${path}.fromIndex: custom check failed`) - - return null -} - -export type RequestNPubLinkingTokenRequest = { - user_identifier: string -} -export const RequestNPubLinkingTokenRequestOptionalFields: [] = [] -export type RequestNPubLinkingTokenRequestOptions = OptionsBaseMessage & { +export const GetAppUserLNURLInfoRequestOptionalFields: [] = [] +export type GetAppUserLNURLInfoRequestOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] user_identifier_CustomCheck?: (v: string) => boolean + base_url_override_CustomCheck?: (v: string) => boolean } -export const RequestNPubLinkingTokenRequestValidate = (o?: RequestNPubLinkingTokenRequest, opts: RequestNPubLinkingTokenRequestOptions = {}, path: string = 'RequestNPubLinkingTokenRequest::root.'): Error | null => { +export const GetAppUserLNURLInfoRequestValidate = (o?: GetAppUserLNURLInfoRequest, opts: GetAppUserLNURLInfoRequestOptions = {}, path: string = 'GetAppUserLNURLInfoRequest::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') if (typeof o.user_identifier !== 'string') return new Error(`${path}.user_identifier: is not a string`) if (opts.user_identifier_CustomCheck && !opts.user_identifier_CustomCheck(o.user_identifier)) return new Error(`${path}.user_identifier: custom check failed`) - return null -} - -export type AppsMetricsRequest = { - include_operations?: boolean - from_unix?: number - to_unix?: number -} -export type AppsMetricsRequestOptionalField = 'include_operations' | 'from_unix' | 'to_unix' -export const AppsMetricsRequestOptionalFields: AppsMetricsRequestOptionalField[] = ['include_operations', 'from_unix', 'to_unix'] -export type AppsMetricsRequestOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: AppsMetricsRequestOptionalField[] - from_unix_CustomCheck?: (v?: number) => boolean - to_unix_CustomCheck?: (v?: number) => boolean - include_operations_CustomCheck?: (v?: boolean) => boolean -} -export const AppsMetricsRequestValidate = (o?: AppsMetricsRequest, opts: AppsMetricsRequestOptions = {}, path: string = 'AppsMetricsRequest::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if ((o.from_unix || opts.allOptionalsAreSet || opts.checkOptionalsAreSet?.includes('from_unix')) && typeof o.from_unix !== 'number') return new Error(`${path}.from_unix: is not a number`) - if (opts.from_unix_CustomCheck && !opts.from_unix_CustomCheck(o.from_unix)) return new Error(`${path}.from_unix: custom check failed`) - - if ((o.to_unix || opts.allOptionalsAreSet || opts.checkOptionalsAreSet?.includes('to_unix')) && typeof o.to_unix !== 'number') return new Error(`${path}.to_unix: is not a number`) - if (opts.to_unix_CustomCheck && !opts.to_unix_CustomCheck(o.to_unix)) return new Error(`${path}.to_unix: custom check failed`) - - if ((o.include_operations || opts.allOptionalsAreSet || opts.checkOptionalsAreSet?.includes('include_operations')) && typeof o.include_operations !== 'boolean') return new Error(`${path}.include_operations: is not a boolean`) - if (opts.include_operations_CustomCheck && !opts.include_operations_CustomCheck(o.include_operations)) return new Error(`${path}.include_operations: custom check failed`) - - return null -} - -export type SetMockAppBalanceRequest = { - amount: number -} -export const SetMockAppBalanceRequestOptionalFields: [] = [] -export type SetMockAppBalanceRequestOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - amount_CustomCheck?: (v: number) => boolean -} -export const SetMockAppBalanceRequestValidate = (o?: SetMockAppBalanceRequest, opts: SetMockAppBalanceRequestOptions = {}, path: string = 'SetMockAppBalanceRequest::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.amount !== 'number') return new Error(`${path}.amount: is not a number`) - if (opts.amount_CustomCheck && !opts.amount_CustomCheck(o.amount)) return new Error(`${path}.amount: custom check failed`) - - return null -} - -export type NewAddressResponse = { - address: string -} -export const NewAddressResponseOptionalFields: [] = [] -export type NewAddressResponseOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - address_CustomCheck?: (v: string) => boolean -} -export const NewAddressResponseValidate = (o?: NewAddressResponse, opts: NewAddressResponseOptions = {}, path: string = 'NewAddressResponse::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.address !== 'string') return new Error(`${path}.address: is not a string`) - if (opts.address_CustomCheck && !opts.address_CustomCheck(o.address)) return new Error(`${path}.address: custom check failed`) - - return null -} - -export type PayAddressResponse = { - operation_id: string - service_fee: number - network_fee: number - txId: string -} -export const PayAddressResponseOptionalFields: [] = [] -export type PayAddressResponseOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - service_fee_CustomCheck?: (v: number) => boolean - network_fee_CustomCheck?: (v: number) => boolean - txId_CustomCheck?: (v: string) => boolean - operation_id_CustomCheck?: (v: string) => boolean -} -export const PayAddressResponseValidate = (o?: PayAddressResponse, opts: PayAddressResponseOptions = {}, path: string = 'PayAddressResponse::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.txId !== 'string') return new Error(`${path}.txId: is not a string`) - if (opts.txId_CustomCheck && !opts.txId_CustomCheck(o.txId)) return new Error(`${path}.txId: custom check failed`) - - if (typeof o.operation_id !== 'string') return new Error(`${path}.operation_id: is not a string`) - if (opts.operation_id_CustomCheck && !opts.operation_id_CustomCheck(o.operation_id)) return new Error(`${path}.operation_id: custom check failed`) - - if (typeof o.service_fee !== 'number') return new Error(`${path}.service_fee: is not a number`) - if (opts.service_fee_CustomCheck && !opts.service_fee_CustomCheck(o.service_fee)) return new Error(`${path}.service_fee: custom check failed`) - - if (typeof o.network_fee !== 'number') return new Error(`${path}.network_fee: is not a number`) - if (opts.network_fee_CustomCheck && !opts.network_fee_CustomCheck(o.network_fee)) return new Error(`${path}.network_fee: custom check failed`) - - return null -} - -export type HandleLnurlPayResponse = { - routes: Empty[] - pr: string -} -export const HandleLnurlPayResponseOptionalFields: [] = [] -export type HandleLnurlPayResponseOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - pr_CustomCheck?: (v: string) => boolean - routes_ItemOptions?: EmptyOptions - routes_CustomCheck?: (v: Empty[]) => boolean -} -export const HandleLnurlPayResponseValidate = (o?: HandleLnurlPayResponse, opts: HandleLnurlPayResponseOptions = {}, path: string = 'HandleLnurlPayResponse::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.pr !== 'string') return new Error(`${path}.pr: is not a string`) - if (opts.pr_CustomCheck && !opts.pr_CustomCheck(o.pr)) return new Error(`${path}.pr: custom check failed`) - - if (!Array.isArray(o.routes)) return new Error(`${path}.routes: is not an array`) - for (let index = 0; index < o.routes.length; index++) { - const routesErr = EmptyValidate(o.routes[index], opts.routes_ItemOptions, `${path}.routes[${index}]`) - if (routesErr !== null) return routesErr - } - if (opts.routes_CustomCheck && !opts.routes_CustomCheck(o.routes)) return new Error(`${path}.routes: custom check failed`) + if (typeof o.base_url_override !== 'string') return new Error(`${path}.base_url_override: is not a string`) + if (opts.base_url_override_CustomCheck && !opts.base_url_override_CustomCheck(o.base_url_override)) return new Error(`${path}.base_url_override: custom check failed`) return null } @@ -690,129 +345,6 @@ export const GetProductBuyLinkResponseValidate = (o?: GetProductBuyLinkResponse, return null } -export type UsageMetric = { - parsed_in_nano: number - validate_in_nano: number - handle_in_nano: number - batch: boolean - nostr: boolean - batch_size: number - processed_at_ms: number - auth_in_nano: number - rpc_name: string -} -export const UsageMetricOptionalFields: [] = [] -export type UsageMetricOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - validate_in_nano_CustomCheck?: (v: number) => boolean - handle_in_nano_CustomCheck?: (v: number) => boolean - batch_CustomCheck?: (v: boolean) => boolean - nostr_CustomCheck?: (v: boolean) => boolean - batch_size_CustomCheck?: (v: number) => boolean - parsed_in_nano_CustomCheck?: (v: number) => boolean - auth_in_nano_CustomCheck?: (v: number) => boolean - rpc_name_CustomCheck?: (v: string) => boolean - processed_at_ms_CustomCheck?: (v: number) => boolean -} -export const UsageMetricValidate = (o?: UsageMetric, opts: UsageMetricOptions = {}, path: string = 'UsageMetric::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.auth_in_nano !== 'number') return new Error(`${path}.auth_in_nano: is not a number`) - if (opts.auth_in_nano_CustomCheck && !opts.auth_in_nano_CustomCheck(o.auth_in_nano)) return new Error(`${path}.auth_in_nano: custom check failed`) - - if (typeof o.rpc_name !== 'string') return new Error(`${path}.rpc_name: is not a string`) - if (opts.rpc_name_CustomCheck && !opts.rpc_name_CustomCheck(o.rpc_name)) return new Error(`${path}.rpc_name: custom check failed`) - - if (typeof o.processed_at_ms !== 'number') return new Error(`${path}.processed_at_ms: is not a number`) - if (opts.processed_at_ms_CustomCheck && !opts.processed_at_ms_CustomCheck(o.processed_at_ms)) return new Error(`${path}.processed_at_ms: custom check failed`) - - if (typeof o.validate_in_nano !== 'number') return new Error(`${path}.validate_in_nano: is not a number`) - if (opts.validate_in_nano_CustomCheck && !opts.validate_in_nano_CustomCheck(o.validate_in_nano)) return new Error(`${path}.validate_in_nano: custom check failed`) - - if (typeof o.handle_in_nano !== 'number') return new Error(`${path}.handle_in_nano: is not a number`) - if (opts.handle_in_nano_CustomCheck && !opts.handle_in_nano_CustomCheck(o.handle_in_nano)) return new Error(`${path}.handle_in_nano: custom check failed`) - - if (typeof o.batch !== 'boolean') return new Error(`${path}.batch: is not a boolean`) - if (opts.batch_CustomCheck && !opts.batch_CustomCheck(o.batch)) return new Error(`${path}.batch: custom check failed`) - - if (typeof o.nostr !== 'boolean') return new Error(`${path}.nostr: is not a boolean`) - if (opts.nostr_CustomCheck && !opts.nostr_CustomCheck(o.nostr)) return new Error(`${path}.nostr: custom check failed`) - - if (typeof o.batch_size !== 'number') return new Error(`${path}.batch_size: is not a number`) - if (opts.batch_size_CustomCheck && !opts.batch_size_CustomCheck(o.batch_size)) return new Error(`${path}.batch_size: custom check failed`) - - if (typeof o.parsed_in_nano !== 'number') return new Error(`${path}.parsed_in_nano: is not a number`) - if (opts.parsed_in_nano_CustomCheck && !opts.parsed_in_nano_CustomCheck(o.parsed_in_nano)) return new Error(`${path}.parsed_in_nano: custom check failed`) - - return null -} - -export type AppMetrics = { - available: number - fees: number - invoices: number - spent: number - users: UsersInfo - received: number - total_fees: number - operations: UserOperation[] - app: Application -} -export const AppMetricsOptionalFields: [] = [] -export type AppMetricsOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - received_CustomCheck?: (v: number) => boolean - total_fees_CustomCheck?: (v: number) => boolean - operations_ItemOptions?: UserOperationOptions - operations_CustomCheck?: (v: UserOperation[]) => boolean - app_Options?: ApplicationOptions - users_Options?: UsersInfoOptions - fees_CustomCheck?: (v: number) => boolean - invoices_CustomCheck?: (v: number) => boolean - spent_CustomCheck?: (v: number) => boolean - available_CustomCheck?: (v: number) => boolean -} -export const AppMetricsValidate = (o?: AppMetrics, opts: AppMetricsOptions = {}, path: string = 'AppMetrics::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - const appErr = ApplicationValidate(o.app, opts.app_Options, `${path}.app`) - if (appErr !== null) return appErr - - - const usersErr = UsersInfoValidate(o.users, opts.users_Options, `${path}.users`) - if (usersErr !== null) return usersErr - - - if (typeof o.received !== 'number') return new Error(`${path}.received: is not a number`) - if (opts.received_CustomCheck && !opts.received_CustomCheck(o.received)) return new Error(`${path}.received: custom check failed`) - - if (typeof o.total_fees !== 'number') return new Error(`${path}.total_fees: is not a number`) - if (opts.total_fees_CustomCheck && !opts.total_fees_CustomCheck(o.total_fees)) return new Error(`${path}.total_fees: custom check failed`) - - if (!Array.isArray(o.operations)) return new Error(`${path}.operations: is not an array`) - for (let index = 0; index < o.operations.length; index++) { - const operationsErr = UserOperationValidate(o.operations[index], opts.operations_ItemOptions, `${path}.operations[${index}]`) - if (operationsErr !== null) return operationsErr - } - if (opts.operations_CustomCheck && !opts.operations_CustomCheck(o.operations)) return new Error(`${path}.operations: custom check failed`) - - if (typeof o.spent !== 'number') return new Error(`${path}.spent: is not a number`) - if (opts.spent_CustomCheck && !opts.spent_CustomCheck(o.spent)) return new Error(`${path}.spent: custom check failed`) - - if (typeof o.available !== 'number') return new Error(`${path}.available: is not a number`) - if (opts.available_CustomCheck && !opts.available_CustomCheck(o.available)) return new Error(`${path}.available: custom check failed`) - - if (typeof o.fees !== 'number') return new Error(`${path}.fees: is not a number`) - if (opts.fees_CustomCheck && !opts.fees_CustomCheck(o.fees)) return new Error(`${path}.fees: custom check failed`) - - if (typeof o.invoices !== 'number') return new Error(`${path}.invoices: is not a number`) - if (opts.invoices_CustomCheck && !opts.invoices_CustomCheck(o.invoices)) return new Error(`${path}.invoices: custom check failed`) - - return null -} - export type LndMetrics = { nodes: LndNodeMetrics[] } @@ -836,197 +368,459 @@ export const LndMetricsValidate = (o?: LndMetrics, opts: LndMetricsOptions = {}, return null } -export type Application = { - name: string - id: string +export type AddAppUserRequest = { balance: number - npub: string + identifier: string + fail_if_exists: boolean } -export const ApplicationOptionalFields: [] = [] -export type ApplicationOptions = OptionsBaseMessage & { +export const AddAppUserRequestOptionalFields: [] = [] +export type AddAppUserRequestOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - id_CustomCheck?: (v: string) => boolean balance_CustomCheck?: (v: number) => boolean - npub_CustomCheck?: (v: string) => boolean - name_CustomCheck?: (v: string) => boolean + identifier_CustomCheck?: (v: string) => boolean + fail_if_exists_CustomCheck?: (v: boolean) => boolean } -export const ApplicationValidate = (o?: Application, opts: ApplicationOptions = {}, path: string = 'Application::root.'): Error | null => { +export const AddAppUserRequestValidate = (o?: AddAppUserRequest, opts: AddAppUserRequestOptions = {}, path: string = 'AddAppUserRequest::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.name !== 'string') return new Error(`${path}.name: is not a string`) - if (opts.name_CustomCheck && !opts.name_CustomCheck(o.name)) return new Error(`${path}.name: custom check failed`) + if (typeof o.identifier !== 'string') return new Error(`${path}.identifier: is not a string`) + if (opts.identifier_CustomCheck && !opts.identifier_CustomCheck(o.identifier)) return new Error(`${path}.identifier: custom check failed`) - if (typeof o.id !== 'string') return new Error(`${path}.id: is not a string`) - if (opts.id_CustomCheck && !opts.id_CustomCheck(o.id)) return new Error(`${path}.id: custom check failed`) + if (typeof o.fail_if_exists !== 'boolean') return new Error(`${path}.fail_if_exists: is not a boolean`) + if (opts.fail_if_exists_CustomCheck && !opts.fail_if_exists_CustomCheck(o.fail_if_exists)) return new Error(`${path}.fail_if_exists: custom check failed`) if (typeof o.balance !== 'number') return new Error(`${path}.balance: is not a number`) if (opts.balance_CustomCheck && !opts.balance_CustomCheck(o.balance)) return new Error(`${path}.balance: custom check failed`) - if (typeof o.npub !== 'string') return new Error(`${path}.npub: is not a string`) - if (opts.npub_CustomCheck && !opts.npub_CustomCheck(o.npub)) return new Error(`${path}.npub: custom check failed`) + return null +} + +export type BanUserResponse = { + balance_sats: number + banned_app_users: BannedAppUser[] +} +export const BanUserResponseOptionalFields: [] = [] +export type BanUserResponseOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + balance_sats_CustomCheck?: (v: number) => boolean + banned_app_users_ItemOptions?: BannedAppUserOptions + banned_app_users_CustomCheck?: (v: BannedAppUser[]) => boolean +} +export const BanUserResponseValidate = (o?: BanUserResponse, opts: BanUserResponseOptions = {}, path: string = 'BanUserResponse::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.balance_sats !== 'number') return new Error(`${path}.balance_sats: is not a number`) + if (opts.balance_sats_CustomCheck && !opts.balance_sats_CustomCheck(o.balance_sats)) return new Error(`${path}.balance_sats: custom check failed`) + + if (!Array.isArray(o.banned_app_users)) return new Error(`${path}.banned_app_users: is not an array`) + for (let index = 0; index < o.banned_app_users.length; index++) { + const banned_app_usersErr = BannedAppUserValidate(o.banned_app_users[index], opts.banned_app_users_ItemOptions, `${path}.banned_app_users[${index}]`) + if (banned_app_usersErr !== null) return banned_app_usersErr + } + if (opts.banned_app_users_CustomCheck && !opts.banned_app_users_CustomCheck(o.banned_app_users)) return new Error(`${path}.banned_app_users: custom check failed`) return null } -export type AddAppInvoiceRequest = { - payer_identifier: string - http_callback_url: string - invoice_req: NewInvoiceRequest +export type GetUserOperationsRequest = { + latestIncomingUserToUserPayment: number + latestOutgoingUserToUserPayment: number + max_size: number + latestIncomingInvoice: number + latestOutgoingInvoice: number + latestIncomingTx: number + latestOutgoingTx: number } -export const AddAppInvoiceRequestOptionalFields: [] = [] -export type AddAppInvoiceRequestOptions = OptionsBaseMessage & { +export const GetUserOperationsRequestOptionalFields: [] = [] +export type GetUserOperationsRequestOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - payer_identifier_CustomCheck?: (v: string) => boolean - http_callback_url_CustomCheck?: (v: string) => boolean - invoice_req_Options?: NewInvoiceRequestOptions + latestIncomingInvoice_CustomCheck?: (v: number) => boolean + latestOutgoingInvoice_CustomCheck?: (v: number) => boolean + latestIncomingTx_CustomCheck?: (v: number) => boolean + latestOutgoingTx_CustomCheck?: (v: number) => boolean + latestIncomingUserToUserPayment_CustomCheck?: (v: number) => boolean + latestOutgoingUserToUserPayment_CustomCheck?: (v: number) => boolean + max_size_CustomCheck?: (v: number) => boolean } -export const AddAppInvoiceRequestValidate = (o?: AddAppInvoiceRequest, opts: AddAppInvoiceRequestOptions = {}, path: string = 'AddAppInvoiceRequest::root.'): Error | null => { +export const GetUserOperationsRequestValidate = (o?: GetUserOperationsRequest, opts: GetUserOperationsRequestOptions = {}, path: string = 'GetUserOperationsRequest::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.payer_identifier !== 'string') return new Error(`${path}.payer_identifier: is not a string`) - if (opts.payer_identifier_CustomCheck && !opts.payer_identifier_CustomCheck(o.payer_identifier)) return new Error(`${path}.payer_identifier: custom check failed`) + if (typeof o.latestIncomingUserToUserPayment !== 'number') return new Error(`${path}.latestIncomingUserToUserPayment: is not a number`) + if (opts.latestIncomingUserToUserPayment_CustomCheck && !opts.latestIncomingUserToUserPayment_CustomCheck(o.latestIncomingUserToUserPayment)) return new Error(`${path}.latestIncomingUserToUserPayment: custom check failed`) - if (typeof o.http_callback_url !== 'string') return new Error(`${path}.http_callback_url: is not a string`) - if (opts.http_callback_url_CustomCheck && !opts.http_callback_url_CustomCheck(o.http_callback_url)) return new Error(`${path}.http_callback_url: custom check failed`) + if (typeof o.latestOutgoingUserToUserPayment !== 'number') return new Error(`${path}.latestOutgoingUserToUserPayment: is not a number`) + if (opts.latestOutgoingUserToUserPayment_CustomCheck && !opts.latestOutgoingUserToUserPayment_CustomCheck(o.latestOutgoingUserToUserPayment)) return new Error(`${path}.latestOutgoingUserToUserPayment: custom check failed`) - const invoice_reqErr = NewInvoiceRequestValidate(o.invoice_req, opts.invoice_req_Options, `${path}.invoice_req`) - if (invoice_reqErr !== null) return invoice_reqErr + if (typeof o.max_size !== 'number') return new Error(`${path}.max_size: is not a number`) + if (opts.max_size_CustomCheck && !opts.max_size_CustomCheck(o.max_size)) return new Error(`${path}.max_size: custom check failed`) + + if (typeof o.latestIncomingInvoice !== 'number') return new Error(`${path}.latestIncomingInvoice: is not a number`) + if (opts.latestIncomingInvoice_CustomCheck && !opts.latestIncomingInvoice_CustomCheck(o.latestIncomingInvoice)) return new Error(`${path}.latestIncomingInvoice: custom check failed`) + + if (typeof o.latestOutgoingInvoice !== 'number') return new Error(`${path}.latestOutgoingInvoice: is not a number`) + if (opts.latestOutgoingInvoice_CustomCheck && !opts.latestOutgoingInvoice_CustomCheck(o.latestOutgoingInvoice)) return new Error(`${path}.latestOutgoingInvoice: custom check failed`) + + if (typeof o.latestIncomingTx !== 'number') return new Error(`${path}.latestIncomingTx: is not a number`) + if (opts.latestIncomingTx_CustomCheck && !opts.latestIncomingTx_CustomCheck(o.latestIncomingTx)) return new Error(`${path}.latestIncomingTx: custom check failed`) + + if (typeof o.latestOutgoingTx !== 'number') return new Error(`${path}.latestOutgoingTx: is not a number`) + if (opts.latestOutgoingTx_CustomCheck && !opts.latestOutgoingTx_CustomCheck(o.latestOutgoingTx)) return new Error(`${path}.latestOutgoingTx: custom check failed`) + + return null +} + +export type MigrationUpdate = { + relays?: RelaysMigration + closure?: ClosureMigration +} +export type MigrationUpdateOptionalField = 'relays' | 'closure' +export const MigrationUpdateOptionalFields: MigrationUpdateOptionalField[] = ['relays', 'closure'] +export type MigrationUpdateOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: MigrationUpdateOptionalField[] + closure_Options?: ClosureMigrationOptions + relays_Options?: RelaysMigrationOptions +} +export const MigrationUpdateValidate = (o?: MigrationUpdate, opts: MigrationUpdateOptions = {}, path: string = 'MigrationUpdate::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.closure === 'object' || opts.allOptionalsAreSet || opts.checkOptionalsAreSet?.includes('closure')) { + const closureErr = ClosureMigrationValidate(o.closure, opts.closure_Options, `${path}.closure`) + if (closureErr !== null) return closureErr + } + + + if (typeof o.relays === 'object' || opts.allOptionalsAreSet || opts.checkOptionalsAreSet?.includes('relays')) { + const relaysErr = RelaysMigrationValidate(o.relays, opts.relays_Options, `${path}.relays`) + if (relaysErr !== null) return relaysErr + } return null } -export type GetAppUserLNURLInfoRequest = { - user_identifier: string - base_url_override: string +export type LinkNPubThroughTokenRequest = { + token: string } -export const GetAppUserLNURLInfoRequestOptionalFields: [] = [] -export type GetAppUserLNURLInfoRequestOptions = OptionsBaseMessage & { +export const LinkNPubThroughTokenRequestOptionalFields: [] = [] +export type LinkNPubThroughTokenRequestOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - user_identifier_CustomCheck?: (v: string) => boolean - base_url_override_CustomCheck?: (v: string) => boolean + token_CustomCheck?: (v: string) => boolean } -export const GetAppUserLNURLInfoRequestValidate = (o?: GetAppUserLNURLInfoRequest, opts: GetAppUserLNURLInfoRequestOptions = {}, path: string = 'GetAppUserLNURLInfoRequest::root.'): Error | null => { +export const LinkNPubThroughTokenRequestValidate = (o?: LinkNPubThroughTokenRequest, opts: LinkNPubThroughTokenRequestOptions = {}, path: string = 'LinkNPubThroughTokenRequest::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + if (typeof o.token !== 'string') return new Error(`${path}.token: is not a string`) + if (opts.token_CustomCheck && !opts.token_CustomCheck(o.token)) return new Error(`${path}.token: custom check failed`) + + return null +} + +export type LndGetInfoRequest = { + nodeId: number +} +export const LndGetInfoRequestOptionalFields: [] = [] +export type LndGetInfoRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + nodeId_CustomCheck?: (v: number) => boolean +} +export const LndGetInfoRequestValidate = (o?: LndGetInfoRequest, opts: LndGetInfoRequestOptions = {}, path: string = 'LndGetInfoRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.nodeId !== 'number') return new Error(`${path}.nodeId: is not a number`) + if (opts.nodeId_CustomCheck && !opts.nodeId_CustomCheck(o.nodeId)) return new Error(`${path}.nodeId: custom check failed`) + + return null +} + +export type BannedAppUser = { + app_name: string + app_id: string + user_identifier: string + nostr_pub: string +} +export const BannedAppUserOptionalFields: [] = [] +export type BannedAppUserOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + app_name_CustomCheck?: (v: string) => boolean + app_id_CustomCheck?: (v: string) => boolean + user_identifier_CustomCheck?: (v: string) => boolean + nostr_pub_CustomCheck?: (v: string) => boolean +} +export const BannedAppUserValidate = (o?: BannedAppUser, opts: BannedAppUserOptions = {}, path: string = 'BannedAppUser::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.app_name !== 'string') return new Error(`${path}.app_name: is not a string`) + if (opts.app_name_CustomCheck && !opts.app_name_CustomCheck(o.app_name)) return new Error(`${path}.app_name: custom check failed`) + + if (typeof o.app_id !== 'string') return new Error(`${path}.app_id: is not a string`) + if (opts.app_id_CustomCheck && !opts.app_id_CustomCheck(o.app_id)) return new Error(`${path}.app_id: custom check failed`) + if (typeof o.user_identifier !== 'string') return new Error(`${path}.user_identifier: is not a string`) if (opts.user_identifier_CustomCheck && !opts.user_identifier_CustomCheck(o.user_identifier)) return new Error(`${path}.user_identifier: custom check failed`) - if (typeof o.base_url_override !== 'string') return new Error(`${path}.base_url_override: is not a string`) - if (opts.base_url_override_CustomCheck && !opts.base_url_override_CustomCheck(o.base_url_override)) return new Error(`${path}.base_url_override: custom check failed`) + if (typeof o.nostr_pub !== 'string') return new Error(`${path}.nostr_pub: is not a string`) + if (opts.nostr_pub_CustomCheck && !opts.nostr_pub_CustomCheck(o.nostr_pub)) return new Error(`${path}.nostr_pub: custom check failed`) return null } -export type GetPaymentStateRequest = { - invoice: string +export type Product = { + id: string + name: string + price_sats: number } -export const GetPaymentStateRequestOptionalFields: [] = [] -export type GetPaymentStateRequestOptions = OptionsBaseMessage & { +export const ProductOptionalFields: [] = [] +export type ProductOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - invoice_CustomCheck?: (v: string) => boolean + id_CustomCheck?: (v: string) => boolean + name_CustomCheck?: (v: string) => boolean + price_sats_CustomCheck?: (v: number) => boolean } -export const GetPaymentStateRequestValidate = (o?: GetPaymentStateRequest, opts: GetPaymentStateRequestOptions = {}, path: string = 'GetPaymentStateRequest::root.'): Error | null => { +export const ProductValidate = (o?: Product, opts: ProductOptions = {}, path: string = 'Product::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.invoice !== 'string') return new Error(`${path}.invoice: is not a string`) - if (opts.invoice_CustomCheck && !opts.invoice_CustomCheck(o.invoice)) return new Error(`${path}.invoice: custom check failed`) + if (typeof o.id !== 'string') return new Error(`${path}.id: is not a string`) + if (opts.id_CustomCheck && !opts.id_CustomCheck(o.id)) return new Error(`${path}.id: custom check failed`) + + if (typeof o.name !== 'string') return new Error(`${path}.name: is not a string`) + if (opts.name_CustomCheck && !opts.name_CustomCheck(o.name)) return new Error(`${path}.name: custom check failed`) + + if (typeof o.price_sats !== 'number') return new Error(`${path}.price_sats: is not a number`) + if (opts.price_sats_CustomCheck && !opts.price_sats_CustomCheck(o.price_sats)) return new Error(`${path}.price_sats: custom check failed`) return null } -export type ChannelRouting = { - channel_id: string - receive_errors: number - forward_errors_as_input: number - missed_forward_fee_as_input: number - missed_forward_fee_as_output: number - send_errors: number - forward_errors_as_output: number - forward_fee_as_input: number - forward_fee_as_output: number - events_number: number +export type GetInviteTokenStateResponse = { + used: boolean } -export const ChannelRoutingOptionalFields: [] = [] -export type ChannelRoutingOptions = OptionsBaseMessage & { +export const GetInviteTokenStateResponseOptionalFields: [] = [] +export type GetInviteTokenStateResponseOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - send_errors_CustomCheck?: (v: number) => boolean - forward_errors_as_output_CustomCheck?: (v: number) => boolean - forward_fee_as_input_CustomCheck?: (v: number) => boolean - forward_fee_as_output_CustomCheck?: (v: number) => boolean - events_number_CustomCheck?: (v: number) => boolean - channel_id_CustomCheck?: (v: string) => boolean - receive_errors_CustomCheck?: (v: number) => boolean - forward_errors_as_input_CustomCheck?: (v: number) => boolean - missed_forward_fee_as_input_CustomCheck?: (v: number) => boolean - missed_forward_fee_as_output_CustomCheck?: (v: number) => boolean + used_CustomCheck?: (v: boolean) => boolean } -export const ChannelRoutingValidate = (o?: ChannelRouting, opts: ChannelRoutingOptions = {}, path: string = 'ChannelRouting::root.'): Error | null => { +export const GetInviteTokenStateResponseValidate = (o?: GetInviteTokenStateResponse, opts: GetInviteTokenStateResponseOptions = {}, path: string = 'GetInviteTokenStateResponse::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.channel_id !== 'string') return new Error(`${path}.channel_id: is not a string`) - if (opts.channel_id_CustomCheck && !opts.channel_id_CustomCheck(o.channel_id)) return new Error(`${path}.channel_id: custom check failed`) - - if (typeof o.receive_errors !== 'number') return new Error(`${path}.receive_errors: is not a number`) - if (opts.receive_errors_CustomCheck && !opts.receive_errors_CustomCheck(o.receive_errors)) return new Error(`${path}.receive_errors: custom check failed`) - - if (typeof o.forward_errors_as_input !== 'number') return new Error(`${path}.forward_errors_as_input: is not a number`) - if (opts.forward_errors_as_input_CustomCheck && !opts.forward_errors_as_input_CustomCheck(o.forward_errors_as_input)) return new Error(`${path}.forward_errors_as_input: custom check failed`) - - if (typeof o.missed_forward_fee_as_input !== 'number') return new Error(`${path}.missed_forward_fee_as_input: is not a number`) - if (opts.missed_forward_fee_as_input_CustomCheck && !opts.missed_forward_fee_as_input_CustomCheck(o.missed_forward_fee_as_input)) return new Error(`${path}.missed_forward_fee_as_input: custom check failed`) - - if (typeof o.missed_forward_fee_as_output !== 'number') return new Error(`${path}.missed_forward_fee_as_output: is not a number`) - if (opts.missed_forward_fee_as_output_CustomCheck && !opts.missed_forward_fee_as_output_CustomCheck(o.missed_forward_fee_as_output)) return new Error(`${path}.missed_forward_fee_as_output: custom check failed`) - - if (typeof o.send_errors !== 'number') return new Error(`${path}.send_errors: is not a number`) - if (opts.send_errors_CustomCheck && !opts.send_errors_CustomCheck(o.send_errors)) return new Error(`${path}.send_errors: custom check failed`) - - if (typeof o.forward_errors_as_output !== 'number') return new Error(`${path}.forward_errors_as_output: is not a number`) - if (opts.forward_errors_as_output_CustomCheck && !opts.forward_errors_as_output_CustomCheck(o.forward_errors_as_output)) return new Error(`${path}.forward_errors_as_output: custom check failed`) - - if (typeof o.forward_fee_as_input !== 'number') return new Error(`${path}.forward_fee_as_input: is not a number`) - if (opts.forward_fee_as_input_CustomCheck && !opts.forward_fee_as_input_CustomCheck(o.forward_fee_as_input)) return new Error(`${path}.forward_fee_as_input: custom check failed`) - - if (typeof o.forward_fee_as_output !== 'number') return new Error(`${path}.forward_fee_as_output: is not a number`) - if (opts.forward_fee_as_output_CustomCheck && !opts.forward_fee_as_output_CustomCheck(o.forward_fee_as_output)) return new Error(`${path}.forward_fee_as_output: custom check failed`) - - if (typeof o.events_number !== 'number') return new Error(`${path}.events_number: is not a number`) - if (opts.events_number_CustomCheck && !opts.events_number_CustomCheck(o.events_number)) return new Error(`${path}.events_number: custom check failed`) + if (typeof o.used !== 'boolean') return new Error(`${path}.used: is not a boolean`) + if (opts.used_CustomCheck && !opts.used_CustomCheck(o.used)) return new Error(`${path}.used: custom check failed`) return null } -export type PayAppUserInvoiceRequest = { - user_identifier: string - invoice: string +export type PayInvoiceResponse = { + amount_paid: number + operation_id: string + service_fee: number + network_fee: number + preimage: string +} +export const PayInvoiceResponseOptionalFields: [] = [] +export type PayInvoiceResponseOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + preimage_CustomCheck?: (v: string) => boolean + amount_paid_CustomCheck?: (v: number) => boolean + operation_id_CustomCheck?: (v: string) => boolean + service_fee_CustomCheck?: (v: number) => boolean + network_fee_CustomCheck?: (v: number) => boolean +} +export const PayInvoiceResponseValidate = (o?: PayInvoiceResponse, opts: PayInvoiceResponseOptions = {}, path: string = 'PayInvoiceResponse::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.amount_paid !== 'number') return new Error(`${path}.amount_paid: is not a number`) + if (opts.amount_paid_CustomCheck && !opts.amount_paid_CustomCheck(o.amount_paid)) return new Error(`${path}.amount_paid: custom check failed`) + + if (typeof o.operation_id !== 'string') return new Error(`${path}.operation_id: is not a string`) + if (opts.operation_id_CustomCheck && !opts.operation_id_CustomCheck(o.operation_id)) return new Error(`${path}.operation_id: custom check failed`) + + if (typeof o.service_fee !== 'number') return new Error(`${path}.service_fee: is not a number`) + if (opts.service_fee_CustomCheck && !opts.service_fee_CustomCheck(o.service_fee)) return new Error(`${path}.service_fee: custom check failed`) + + if (typeof o.network_fee !== 'number') return new Error(`${path}.network_fee: is not a number`) + if (opts.network_fee_CustomCheck && !opts.network_fee_CustomCheck(o.network_fee)) return new Error(`${path}.network_fee: custom check failed`) + + if (typeof o.preimage !== 'string') return new Error(`${path}.preimage: is not a string`) + if (opts.preimage_CustomCheck && !opts.preimage_CustomCheck(o.preimage)) return new Error(`${path}.preimage: custom check failed`) + + return null +} + +export type OpenChannelResponse = { + channelId: string +} +export const OpenChannelResponseOptionalFields: [] = [] +export type OpenChannelResponseOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + channelId_CustomCheck?: (v: string) => boolean +} +export const OpenChannelResponseValidate = (o?: OpenChannelResponse, opts: OpenChannelResponseOptions = {}, path: string = 'OpenChannelResponse::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.channelId !== 'string') return new Error(`${path}.channelId: is not a string`) + if (opts.channelId_CustomCheck && !opts.channelId_CustomCheck(o.channelId)) return new Error(`${path}.channelId: custom check failed`) + + return null +} + +export type PayAddressResponse = { + txId: string + operation_id: string + service_fee: number + network_fee: number +} +export const PayAddressResponseOptionalFields: [] = [] +export type PayAddressResponseOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + txId_CustomCheck?: (v: string) => boolean + operation_id_CustomCheck?: (v: string) => boolean + service_fee_CustomCheck?: (v: number) => boolean + network_fee_CustomCheck?: (v: number) => boolean +} +export const PayAddressResponseValidate = (o?: PayAddressResponse, opts: PayAddressResponseOptions = {}, path: string = 'PayAddressResponse::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.txId !== 'string') return new Error(`${path}.txId: is not a string`) + if (opts.txId_CustomCheck && !opts.txId_CustomCheck(o.txId)) return new Error(`${path}.txId: custom check failed`) + + if (typeof o.operation_id !== 'string') return new Error(`${path}.operation_id: is not a string`) + if (opts.operation_id_CustomCheck && !opts.operation_id_CustomCheck(o.operation_id)) return new Error(`${path}.operation_id: custom check failed`) + + if (typeof o.service_fee !== 'number') return new Error(`${path}.service_fee: is not a number`) + if (opts.service_fee_CustomCheck && !opts.service_fee_CustomCheck(o.service_fee)) return new Error(`${path}.service_fee: custom check failed`) + + if (typeof o.network_fee !== 'number') return new Error(`${path}.network_fee: is not a number`) + if (opts.network_fee_CustomCheck && !opts.network_fee_CustomCheck(o.network_fee)) return new Error(`${path}.network_fee: custom check failed`) + + return null +} + +export type PaymentState = { + paid_at_unix: number amount: number + service_fee: number + network_fee: number } -export const PayAppUserInvoiceRequestOptionalFields: [] = [] -export type PayAppUserInvoiceRequestOptions = OptionsBaseMessage & { +export const PaymentStateOptionalFields: [] = [] +export type PaymentStateOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - user_identifier_CustomCheck?: (v: string) => boolean - invoice_CustomCheck?: (v: string) => boolean + network_fee_CustomCheck?: (v: number) => boolean + paid_at_unix_CustomCheck?: (v: number) => boolean amount_CustomCheck?: (v: number) => boolean + service_fee_CustomCheck?: (v: number) => boolean } -export const PayAppUserInvoiceRequestValidate = (o?: PayAppUserInvoiceRequest, opts: PayAppUserInvoiceRequestOptions = {}, path: string = 'PayAppUserInvoiceRequest::root.'): Error | null => { +export const PaymentStateValidate = (o?: PaymentState, opts: PaymentStateOptions = {}, path: string = 'PaymentState::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.user_identifier !== 'string') return new Error(`${path}.user_identifier: is not a string`) - if (opts.user_identifier_CustomCheck && !opts.user_identifier_CustomCheck(o.user_identifier)) return new Error(`${path}.user_identifier: custom check failed`) - - if (typeof o.invoice !== 'string') return new Error(`${path}.invoice: is not a string`) - if (opts.invoice_CustomCheck && !opts.invoice_CustomCheck(o.invoice)) return new Error(`${path}.invoice: custom check failed`) + if (typeof o.paid_at_unix !== 'number') return new Error(`${path}.paid_at_unix: is not a number`) + if (opts.paid_at_unix_CustomCheck && !opts.paid_at_unix_CustomCheck(o.paid_at_unix)) return new Error(`${path}.paid_at_unix: custom check failed`) if (typeof o.amount !== 'number') return new Error(`${path}.amount: is not a number`) if (opts.amount_CustomCheck && !opts.amount_CustomCheck(o.amount)) return new Error(`${path}.amount: custom check failed`) + if (typeof o.service_fee !== 'number') return new Error(`${path}.service_fee: is not a number`) + if (opts.service_fee_CustomCheck && !opts.service_fee_CustomCheck(o.service_fee)) return new Error(`${path}.service_fee: custom check failed`) + + if (typeof o.network_fee !== 'number') return new Error(`${path}.network_fee: is not a number`) + if (opts.network_fee_CustomCheck && !opts.network_fee_CustomCheck(o.network_fee)) return new Error(`${path}.network_fee: custom check failed`) + + return null +} + +export type UsersInfo = { + no_balance: number + negative_balance: number + always_been_inactive: number + balance_avg: number + balance_median: number + total: number +} +export const UsersInfoOptionalFields: [] = [] +export type UsersInfoOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + no_balance_CustomCheck?: (v: number) => boolean + negative_balance_CustomCheck?: (v: number) => boolean + always_been_inactive_CustomCheck?: (v: number) => boolean + balance_avg_CustomCheck?: (v: number) => boolean + balance_median_CustomCheck?: (v: number) => boolean + total_CustomCheck?: (v: number) => boolean +} +export const UsersInfoValidate = (o?: UsersInfo, opts: UsersInfoOptions = {}, path: string = 'UsersInfo::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.total !== 'number') return new Error(`${path}.total: is not a number`) + if (opts.total_CustomCheck && !opts.total_CustomCheck(o.total)) return new Error(`${path}.total: custom check failed`) + + if (typeof o.no_balance !== 'number') return new Error(`${path}.no_balance: is not a number`) + if (opts.no_balance_CustomCheck && !opts.no_balance_CustomCheck(o.no_balance)) return new Error(`${path}.no_balance: custom check failed`) + + if (typeof o.negative_balance !== 'number') return new Error(`${path}.negative_balance: is not a number`) + if (opts.negative_balance_CustomCheck && !opts.negative_balance_CustomCheck(o.negative_balance)) return new Error(`${path}.negative_balance: custom check failed`) + + if (typeof o.always_been_inactive !== 'number') return new Error(`${path}.always_been_inactive: is not a number`) + if (opts.always_been_inactive_CustomCheck && !opts.always_been_inactive_CustomCheck(o.always_been_inactive)) return new Error(`${path}.always_been_inactive: custom check failed`) + + if (typeof o.balance_avg !== 'number') return new Error(`${path}.balance_avg: is not a number`) + if (opts.balance_avg_CustomCheck && !opts.balance_avg_CustomCheck(o.balance_avg)) return new Error(`${path}.balance_avg: custom check failed`) + + if (typeof o.balance_median !== 'number') return new Error(`${path}.balance_median: is not a number`) + if (opts.balance_median_CustomCheck && !opts.balance_median_CustomCheck(o.balance_median)) return new Error(`${path}.balance_median: custom check failed`) + + return null +} + +export type LndGetInfoResponse = { + alias: string +} +export const LndGetInfoResponseOptionalFields: [] = [] +export type LndGetInfoResponseOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + alias_CustomCheck?: (v: string) => boolean +} +export const LndGetInfoResponseValidate = (o?: LndGetInfoResponse, opts: LndGetInfoResponseOptions = {}, path: string = 'LndGetInfoResponse::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.alias !== 'string') return new Error(`${path}.alias: is not a string`) + if (opts.alias_CustomCheck && !opts.alias_CustomCheck(o.alias)) return new Error(`${path}.alias: custom check failed`) + + return null +} + +export type LndMetricsRequest = { + from_unix?: number + to_unix?: number +} +export type LndMetricsRequestOptionalField = 'from_unix' | 'to_unix' +export const LndMetricsRequestOptionalFields: LndMetricsRequestOptionalField[] = ['from_unix', 'to_unix'] +export type LndMetricsRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: LndMetricsRequestOptionalField[] + from_unix_CustomCheck?: (v?: number) => boolean + to_unix_CustomCheck?: (v?: number) => boolean +} +export const LndMetricsRequestValidate = (o?: LndMetricsRequest, opts: LndMetricsRequestOptions = {}, path: string = 'LndMetricsRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if ((o.from_unix || opts.allOptionalsAreSet || opts.checkOptionalsAreSet?.includes('from_unix')) && typeof o.from_unix !== 'number') return new Error(`${path}.from_unix: is not a number`) + if (opts.from_unix_CustomCheck && !opts.from_unix_CustomCheck(o.from_unix)) return new Error(`${path}.from_unix: custom check failed`) + + if ((o.to_unix || opts.allOptionalsAreSet || opts.checkOptionalsAreSet?.includes('to_unix')) && typeof o.to_unix !== 'number') return new Error(`${path}.to_unix: is not a number`) + if (opts.to_unix_CustomCheck && !opts.to_unix_CustomCheck(o.to_unix)) return new Error(`${path}.to_unix: custom check failed`) + return null } @@ -1053,10 +847,118 @@ export const SetMockAppUserBalanceRequestValidate = (o?: SetMockAppUserBalanceRe return null } +export type RelaysMigration = { + relays: string[] +} +export const RelaysMigrationOptionalFields: [] = [] +export type RelaysMigrationOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + relays_CustomCheck?: (v: string[]) => boolean +} +export const RelaysMigrationValidate = (o?: RelaysMigration, opts: RelaysMigrationOptions = {}, path: string = 'RelaysMigration::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (!Array.isArray(o.relays)) return new Error(`${path}.relays: is not an array`) + for (let index = 0; index < o.relays.length; index++) { + if (typeof o.relays[index] !== 'string') return new Error(`${path}.relays[${index}]: is not a string`) + } + if (opts.relays_CustomCheck && !opts.relays_CustomCheck(o.relays)) return new Error(`${path}.relays: custom check failed`) + + return null +} + +export type UsageMetric = { + processed_at_ms: number + auth_in_nano: number + rpc_name: string + batch: boolean + nostr: boolean + parsed_in_nano: number + validate_in_nano: number + handle_in_nano: number + batch_size: number +} +export const UsageMetricOptionalFields: [] = [] +export type UsageMetricOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + parsed_in_nano_CustomCheck?: (v: number) => boolean + validate_in_nano_CustomCheck?: (v: number) => boolean + handle_in_nano_CustomCheck?: (v: number) => boolean + batch_size_CustomCheck?: (v: number) => boolean + nostr_CustomCheck?: (v: boolean) => boolean + processed_at_ms_CustomCheck?: (v: number) => boolean + auth_in_nano_CustomCheck?: (v: number) => boolean + rpc_name_CustomCheck?: (v: string) => boolean + batch_CustomCheck?: (v: boolean) => boolean +} +export const UsageMetricValidate = (o?: UsageMetric, opts: UsageMetricOptions = {}, path: string = 'UsageMetric::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.handle_in_nano !== 'number') return new Error(`${path}.handle_in_nano: is not a number`) + if (opts.handle_in_nano_CustomCheck && !opts.handle_in_nano_CustomCheck(o.handle_in_nano)) return new Error(`${path}.handle_in_nano: custom check failed`) + + if (typeof o.batch_size !== 'number') return new Error(`${path}.batch_size: is not a number`) + if (opts.batch_size_CustomCheck && !opts.batch_size_CustomCheck(o.batch_size)) return new Error(`${path}.batch_size: custom check failed`) + + if (typeof o.parsed_in_nano !== 'number') return new Error(`${path}.parsed_in_nano: is not a number`) + if (opts.parsed_in_nano_CustomCheck && !opts.parsed_in_nano_CustomCheck(o.parsed_in_nano)) return new Error(`${path}.parsed_in_nano: custom check failed`) + + if (typeof o.validate_in_nano !== 'number') return new Error(`${path}.validate_in_nano: is not a number`) + if (opts.validate_in_nano_CustomCheck && !opts.validate_in_nano_CustomCheck(o.validate_in_nano)) return new Error(`${path}.validate_in_nano: custom check failed`) + + if (typeof o.rpc_name !== 'string') return new Error(`${path}.rpc_name: is not a string`) + if (opts.rpc_name_CustomCheck && !opts.rpc_name_CustomCheck(o.rpc_name)) return new Error(`${path}.rpc_name: custom check failed`) + + if (typeof o.batch !== 'boolean') return new Error(`${path}.batch: is not a boolean`) + if (opts.batch_CustomCheck && !opts.batch_CustomCheck(o.batch)) return new Error(`${path}.batch: custom check failed`) + + if (typeof o.nostr !== 'boolean') return new Error(`${path}.nostr: is not a boolean`) + if (opts.nostr_CustomCheck && !opts.nostr_CustomCheck(o.nostr)) return new Error(`${path}.nostr: custom check failed`) + + if (typeof o.processed_at_ms !== 'number') return new Error(`${path}.processed_at_ms: is not a number`) + if (opts.processed_at_ms_CustomCheck && !opts.processed_at_ms_CustomCheck(o.processed_at_ms)) return new Error(`${path}.processed_at_ms: custom check failed`) + + if (typeof o.auth_in_nano !== 'number') return new Error(`${path}.auth_in_nano: is not a number`) + if (opts.auth_in_nano_CustomCheck && !opts.auth_in_nano_CustomCheck(o.auth_in_nano)) return new Error(`${path}.auth_in_nano: custom check failed`) + + return null +} + +export type AppUser = { + info: UserInfo + max_withdrawable: number + identifier: string +} +export const AppUserOptionalFields: [] = [] +export type AppUserOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + identifier_CustomCheck?: (v: string) => boolean + info_Options?: UserInfoOptions + max_withdrawable_CustomCheck?: (v: number) => boolean +} +export const AppUserValidate = (o?: AppUser, opts: AppUserOptions = {}, path: string = 'AppUser::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.max_withdrawable !== 'number') return new Error(`${path}.max_withdrawable: is not a number`) + if (opts.max_withdrawable_CustomCheck && !opts.max_withdrawable_CustomCheck(o.max_withdrawable)) return new Error(`${path}.max_withdrawable: custom check failed`) + + if (typeof o.identifier !== 'string') return new Error(`${path}.identifier: is not a string`) + if (opts.identifier_CustomCheck && !opts.identifier_CustomCheck(o.identifier)) return new Error(`${path}.identifier: custom check failed`) + + const infoErr = UserInfoValidate(o.info, opts.info_Options, `${path}.info`) + if (infoErr !== null) return infoErr + + + return null +} + export type PayAddressRequest = { - satsPerVByte: number address: string amoutSats: number + satsPerVByte: number } export const PayAddressRequestOptionalFields: [] = [] export type PayAddressRequestOptions = OptionsBaseMessage & { @@ -1081,91 +983,333 @@ export const PayAddressRequestValidate = (o?: PayAddressRequest, opts: PayAddres return null } -export type GetUserOperationsRequest = { - latestIncomingInvoice: number - latestOutgoingInvoice: number - latestIncomingTx: number - latestOutgoingTx: number - latestIncomingUserToUserPayment: number - latestOutgoingUserToUserPayment: number - max_size: number +export type LnurlLinkResponse = { + lnurl: string + k1: string } -export const GetUserOperationsRequestOptionalFields: [] = [] -export type GetUserOperationsRequestOptions = OptionsBaseMessage & { +export const LnurlLinkResponseOptionalFields: [] = [] +export type LnurlLinkResponseOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - latestIncomingInvoice_CustomCheck?: (v: number) => boolean - latestOutgoingInvoice_CustomCheck?: (v: number) => boolean - latestIncomingTx_CustomCheck?: (v: number) => boolean - latestOutgoingTx_CustomCheck?: (v: number) => boolean - latestIncomingUserToUserPayment_CustomCheck?: (v: number) => boolean - latestOutgoingUserToUserPayment_CustomCheck?: (v: number) => boolean - max_size_CustomCheck?: (v: number) => boolean + lnurl_CustomCheck?: (v: string) => boolean + k1_CustomCheck?: (v: string) => boolean } -export const GetUserOperationsRequestValidate = (o?: GetUserOperationsRequest, opts: GetUserOperationsRequestOptions = {}, path: string = 'GetUserOperationsRequest::root.'): Error | null => { +export const LnurlLinkResponseValidate = (o?: LnurlLinkResponse, opts: LnurlLinkResponseOptions = {}, path: string = 'LnurlLinkResponse::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.latestOutgoingInvoice !== 'number') return new Error(`${path}.latestOutgoingInvoice: is not a number`) - if (opts.latestOutgoingInvoice_CustomCheck && !opts.latestOutgoingInvoice_CustomCheck(o.latestOutgoingInvoice)) return new Error(`${path}.latestOutgoingInvoice: custom check failed`) + if (typeof o.lnurl !== 'string') return new Error(`${path}.lnurl: is not a string`) + if (opts.lnurl_CustomCheck && !opts.lnurl_CustomCheck(o.lnurl)) return new Error(`${path}.lnurl: custom check failed`) - if (typeof o.latestIncomingTx !== 'number') return new Error(`${path}.latestIncomingTx: is not a number`) - if (opts.latestIncomingTx_CustomCheck && !opts.latestIncomingTx_CustomCheck(o.latestIncomingTx)) return new Error(`${path}.latestIncomingTx: custom check failed`) - - if (typeof o.latestOutgoingTx !== 'number') return new Error(`${path}.latestOutgoingTx: is not a number`) - if (opts.latestOutgoingTx_CustomCheck && !opts.latestOutgoingTx_CustomCheck(o.latestOutgoingTx)) return new Error(`${path}.latestOutgoingTx: custom check failed`) - - if (typeof o.latestIncomingUserToUserPayment !== 'number') return new Error(`${path}.latestIncomingUserToUserPayment: is not a number`) - if (opts.latestIncomingUserToUserPayment_CustomCheck && !opts.latestIncomingUserToUserPayment_CustomCheck(o.latestIncomingUserToUserPayment)) return new Error(`${path}.latestIncomingUserToUserPayment: custom check failed`) - - if (typeof o.latestOutgoingUserToUserPayment !== 'number') return new Error(`${path}.latestOutgoingUserToUserPayment: is not a number`) - if (opts.latestOutgoingUserToUserPayment_CustomCheck && !opts.latestOutgoingUserToUserPayment_CustomCheck(o.latestOutgoingUserToUserPayment)) return new Error(`${path}.latestOutgoingUserToUserPayment: custom check failed`) - - if (typeof o.max_size !== 'number') return new Error(`${path}.max_size: is not a number`) - if (opts.max_size_CustomCheck && !opts.max_size_CustomCheck(o.max_size)) return new Error(`${path}.max_size: custom check failed`) - - if (typeof o.latestIncomingInvoice !== 'number') return new Error(`${path}.latestIncomingInvoice: is not a number`) - if (opts.latestIncomingInvoice_CustomCheck && !opts.latestIncomingInvoice_CustomCheck(o.latestIncomingInvoice)) return new Error(`${path}.latestIncomingInvoice: custom check failed`) + if (typeof o.k1 !== 'string') return new Error(`${path}.k1: is not a string`) + if (opts.k1_CustomCheck && !opts.k1_CustomCheck(o.k1)) return new Error(`${path}.k1: custom check failed`) return null } -export type Product = { - id: string - name: string - price_sats: number +export type CreateOneTimeInviteLinkResponse = { + invitation_link: string } -export const ProductOptionalFields: [] = [] -export type ProductOptions = OptionsBaseMessage & { +export const CreateOneTimeInviteLinkResponseOptionalFields: [] = [] +export type CreateOneTimeInviteLinkResponseOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - name_CustomCheck?: (v: string) => boolean - price_sats_CustomCheck?: (v: number) => boolean - id_CustomCheck?: (v: string) => boolean + invitation_link_CustomCheck?: (v: string) => boolean } -export const ProductValidate = (o?: Product, opts: ProductOptions = {}, path: string = 'Product::root.'): Error | null => { +export const CreateOneTimeInviteLinkResponseValidate = (o?: CreateOneTimeInviteLinkResponse, opts: CreateOneTimeInviteLinkResponseOptions = {}, path: string = 'CreateOneTimeInviteLinkResponse::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.price_sats !== 'number') return new Error(`${path}.price_sats: is not a number`) - if (opts.price_sats_CustomCheck && !opts.price_sats_CustomCheck(o.price_sats)) return new Error(`${path}.price_sats: custom check failed`) + if (typeof o.invitation_link !== 'string') return new Error(`${path}.invitation_link: is not a string`) + if (opts.invitation_link_CustomCheck && !opts.invitation_link_CustomCheck(o.invitation_link)) return new Error(`${path}.invitation_link: custom check failed`) - if (typeof o.id !== 'string') return new Error(`${path}.id: is not a string`) - if (opts.id_CustomCheck && !opts.id_CustomCheck(o.id)) return new Error(`${path}.id: custom check failed`) + return null +} + +export type LndSeed = { + seed: string[] +} +export const LndSeedOptionalFields: [] = [] +export type LndSeedOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + seed_CustomCheck?: (v: string[]) => boolean +} +export const LndSeedValidate = (o?: LndSeed, opts: LndSeedOptions = {}, path: string = 'LndSeed::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (!Array.isArray(o.seed)) return new Error(`${path}.seed: is not an array`) + for (let index = 0; index < o.seed.length; index++) { + if (typeof o.seed[index] !== 'string') return new Error(`${path}.seed[${index}]: is not a string`) + } + if (opts.seed_CustomCheck && !opts.seed_CustomCheck(o.seed)) return new Error(`${path}.seed: custom check failed`) + + return null +} + +export type LndChannels = { + open_channels: OpenChannel[] +} +export const LndChannelsOptionalFields: [] = [] +export type LndChannelsOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + open_channels_ItemOptions?: OpenChannelOptions + open_channels_CustomCheck?: (v: OpenChannel[]) => boolean +} +export const LndChannelsValidate = (o?: LndChannels, opts: LndChannelsOptions = {}, path: string = 'LndChannels::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (!Array.isArray(o.open_channels)) return new Error(`${path}.open_channels: is not an array`) + for (let index = 0; index < o.open_channels.length; index++) { + const open_channelsErr = OpenChannelValidate(o.open_channels[index], opts.open_channels_ItemOptions, `${path}.open_channels[${index}]`) + if (open_channelsErr !== null) return open_channelsErr + } + if (opts.open_channels_CustomCheck && !opts.open_channels_CustomCheck(o.open_channels)) return new Error(`${path}.open_channels: custom check failed`) + + return null +} + +export type OpenChannelRequest = { + closeAddress: string + destination: string + fundingAmount: number + pushAmount: number +} +export const OpenChannelRequestOptionalFields: [] = [] +export type OpenChannelRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + pushAmount_CustomCheck?: (v: number) => boolean + closeAddress_CustomCheck?: (v: string) => boolean + destination_CustomCheck?: (v: string) => boolean + fundingAmount_CustomCheck?: (v: number) => boolean +} +export const OpenChannelRequestValidate = (o?: OpenChannelRequest, opts: OpenChannelRequestOptions = {}, path: string = 'OpenChannelRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.destination !== 'string') return new Error(`${path}.destination: is not a string`) + if (opts.destination_CustomCheck && !opts.destination_CustomCheck(o.destination)) return new Error(`${path}.destination: custom check failed`) + + if (typeof o.fundingAmount !== 'number') return new Error(`${path}.fundingAmount: is not a number`) + if (opts.fundingAmount_CustomCheck && !opts.fundingAmount_CustomCheck(o.fundingAmount)) return new Error(`${path}.fundingAmount: custom check failed`) + + if (typeof o.pushAmount !== 'number') return new Error(`${path}.pushAmount: is not a number`) + if (opts.pushAmount_CustomCheck && !opts.pushAmount_CustomCheck(o.pushAmount)) return new Error(`${path}.pushAmount: custom check failed`) + + if (typeof o.closeAddress !== 'string') return new Error(`${path}.closeAddress: is not a string`) + if (opts.closeAddress_CustomCheck && !opts.closeAddress_CustomCheck(o.closeAddress)) return new Error(`${path}.closeAddress: custom check failed`) + + return null +} + +export type UserOperations = { + toIndex: number + operations: UserOperation[] + fromIndex: number +} +export const UserOperationsOptionalFields: [] = [] +export type UserOperationsOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + fromIndex_CustomCheck?: (v: number) => boolean + toIndex_CustomCheck?: (v: number) => boolean + operations_ItemOptions?: UserOperationOptions + operations_CustomCheck?: (v: UserOperation[]) => boolean +} +export const UserOperationsValidate = (o?: UserOperations, opts: UserOperationsOptions = {}, path: string = 'UserOperations::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.fromIndex !== 'number') return new Error(`${path}.fromIndex: is not a number`) + if (opts.fromIndex_CustomCheck && !opts.fromIndex_CustomCheck(o.fromIndex)) return new Error(`${path}.fromIndex: custom check failed`) + + if (typeof o.toIndex !== 'number') return new Error(`${path}.toIndex: is not a number`) + if (opts.toIndex_CustomCheck && !opts.toIndex_CustomCheck(o.toIndex)) return new Error(`${path}.toIndex: custom check failed`) + + if (!Array.isArray(o.operations)) return new Error(`${path}.operations: is not an array`) + for (let index = 0; index < o.operations.length; index++) { + const operationsErr = UserOperationValidate(o.operations[index], opts.operations_ItemOptions, `${path}.operations[${index}]`) + if (operationsErr !== null) return operationsErr + } + if (opts.operations_CustomCheck && !opts.operations_CustomCheck(o.operations)) return new Error(`${path}.operations: custom check failed`) + + return null +} + +export type Empty = { +} +export const EmptyOptionalFields: [] = [] +export type EmptyOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] +} +export const EmptyValidate = (o?: Empty, opts: EmptyOptions = {}, path: string = 'Empty::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + return null +} + +export type SendAppUserToAppUserPaymentRequest = { + from_user_identifier: string + to_user_identifier: string + amount: number +} +export const SendAppUserToAppUserPaymentRequestOptionalFields: [] = [] +export type SendAppUserToAppUserPaymentRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + to_user_identifier_CustomCheck?: (v: string) => boolean + amount_CustomCheck?: (v: number) => boolean + from_user_identifier_CustomCheck?: (v: string) => boolean +} +export const SendAppUserToAppUserPaymentRequestValidate = (o?: SendAppUserToAppUserPaymentRequest, opts: SendAppUserToAppUserPaymentRequestOptions = {}, path: string = 'SendAppUserToAppUserPaymentRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.amount !== 'number') return new Error(`${path}.amount: is not a number`) + if (opts.amount_CustomCheck && !opts.amount_CustomCheck(o.amount)) return new Error(`${path}.amount: custom check failed`) + + if (typeof o.from_user_identifier !== 'string') return new Error(`${path}.from_user_identifier: is not a string`) + if (opts.from_user_identifier_CustomCheck && !opts.from_user_identifier_CustomCheck(o.from_user_identifier)) return new Error(`${path}.from_user_identifier: custom check failed`) + + if (typeof o.to_user_identifier !== 'string') return new Error(`${path}.to_user_identifier: is not a string`) + if (opts.to_user_identifier_CustomCheck && !opts.to_user_identifier_CustomCheck(o.to_user_identifier)) return new Error(`${path}.to_user_identifier: custom check failed`) + + return null +} + +export type LnurlPayInfoResponse = { + metadata: string + allowsNostr: boolean + nostrPubkey: string + tag: string + callback: string + maxSendable: number + minSendable: number +} +export const LnurlPayInfoResponseOptionalFields: [] = [] +export type LnurlPayInfoResponseOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + tag_CustomCheck?: (v: string) => boolean + callback_CustomCheck?: (v: string) => boolean + maxSendable_CustomCheck?: (v: number) => boolean + minSendable_CustomCheck?: (v: number) => boolean + metadata_CustomCheck?: (v: string) => boolean + allowsNostr_CustomCheck?: (v: boolean) => boolean + nostrPubkey_CustomCheck?: (v: string) => boolean +} +export const LnurlPayInfoResponseValidate = (o?: LnurlPayInfoResponse, opts: LnurlPayInfoResponseOptions = {}, path: string = 'LnurlPayInfoResponse::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.tag !== 'string') return new Error(`${path}.tag: is not a string`) + if (opts.tag_CustomCheck && !opts.tag_CustomCheck(o.tag)) return new Error(`${path}.tag: custom check failed`) + + if (typeof o.callback !== 'string') return new Error(`${path}.callback: is not a string`) + if (opts.callback_CustomCheck && !opts.callback_CustomCheck(o.callback)) return new Error(`${path}.callback: custom check failed`) + + if (typeof o.maxSendable !== 'number') return new Error(`${path}.maxSendable: is not a number`) + if (opts.maxSendable_CustomCheck && !opts.maxSendable_CustomCheck(o.maxSendable)) return new Error(`${path}.maxSendable: custom check failed`) + + if (typeof o.minSendable !== 'number') return new Error(`${path}.minSendable: is not a number`) + if (opts.minSendable_CustomCheck && !opts.minSendable_CustomCheck(o.minSendable)) return new Error(`${path}.minSendable: custom check failed`) + + if (typeof o.metadata !== 'string') return new Error(`${path}.metadata: is not a string`) + if (opts.metadata_CustomCheck && !opts.metadata_CustomCheck(o.metadata)) return new Error(`${path}.metadata: custom check failed`) + + if (typeof o.allowsNostr !== 'boolean') return new Error(`${path}.allowsNostr: is not a boolean`) + if (opts.allowsNostr_CustomCheck && !opts.allowsNostr_CustomCheck(o.allowsNostr)) return new Error(`${path}.allowsNostr: custom check failed`) + + if (typeof o.nostrPubkey !== 'string') return new Error(`${path}.nostrPubkey: is not a string`) + if (opts.nostrPubkey_CustomCheck && !opts.nostrPubkey_CustomCheck(o.nostrPubkey)) return new Error(`${path}.nostrPubkey: custom check failed`) + + return null +} + +export type AddProductRequest = { + price_sats: number + name: string +} +export const AddProductRequestOptionalFields: [] = [] +export type AddProductRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + name_CustomCheck?: (v: string) => boolean + price_sats_CustomCheck?: (v: number) => boolean +} +export const AddProductRequestValidate = (o?: AddProductRequest, opts: AddProductRequestOptions = {}, path: string = 'AddProductRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') if (typeof o.name !== 'string') return new Error(`${path}.name: is not a string`) if (opts.name_CustomCheck && !opts.name_CustomCheck(o.name)) return new Error(`${path}.name: custom check failed`) + if (typeof o.price_sats !== 'number') return new Error(`${path}.price_sats: is not a number`) + if (opts.price_sats_CustomCheck && !opts.price_sats_CustomCheck(o.price_sats)) return new Error(`${path}.price_sats: custom check failed`) + return null } -export type UseInviteLinkRequest = { +export type RequestNPubLinkingTokenResponse = { + token: string +} +export const RequestNPubLinkingTokenResponseOptionalFields: [] = [] +export type RequestNPubLinkingTokenResponseOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + token_CustomCheck?: (v: string) => boolean +} +export const RequestNPubLinkingTokenResponseValidate = (o?: RequestNPubLinkingTokenResponse, opts: RequestNPubLinkingTokenResponseOptions = {}, path: string = 'RequestNPubLinkingTokenResponse::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.token !== 'string') return new Error(`${path}.token: is not a string`) + if (opts.token_CustomCheck && !opts.token_CustomCheck(o.token)) return new Error(`${path}.token: custom check failed`) + + return null +} + +export type EnrollAdminTokenRequest = { + admin_token: string +} +export const EnrollAdminTokenRequestOptionalFields: [] = [] +export type EnrollAdminTokenRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + admin_token_CustomCheck?: (v: string) => boolean +} +export const EnrollAdminTokenRequestValidate = (o?: EnrollAdminTokenRequest, opts: EnrollAdminTokenRequestOptions = {}, path: string = 'EnrollAdminTokenRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.admin_token !== 'string') return new Error(`${path}.admin_token: is not a string`) + if (opts.admin_token_CustomCheck && !opts.admin_token_CustomCheck(o.admin_token)) return new Error(`${path}.admin_token: custom check failed`) + + return null +} + +export type CreateOneTimeInviteLinkRequest = { + sats?: number +} +export type CreateOneTimeInviteLinkRequestOptionalField = 'sats' +export const CreateOneTimeInviteLinkRequestOptionalFields: CreateOneTimeInviteLinkRequestOptionalField[] = ['sats'] +export type CreateOneTimeInviteLinkRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: CreateOneTimeInviteLinkRequestOptionalField[] + sats_CustomCheck?: (v?: number) => boolean +} +export const CreateOneTimeInviteLinkRequestValidate = (o?: CreateOneTimeInviteLinkRequest, opts: CreateOneTimeInviteLinkRequestOptions = {}, path: string = 'CreateOneTimeInviteLinkRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if ((o.sats || opts.allOptionalsAreSet || opts.checkOptionalsAreSet?.includes('sats')) && typeof o.sats !== 'number') return new Error(`${path}.sats: is not a number`) + if (opts.sats_CustomCheck && !opts.sats_CustomCheck(o.sats)) return new Error(`${path}.sats: custom check failed`) + + return null +} + +export type GetInviteTokenStateRequest = { invite_token: string } -export const UseInviteLinkRequestOptionalFields: [] = [] -export type UseInviteLinkRequestOptions = OptionsBaseMessage & { +export const GetInviteTokenStateRequestOptionalFields: [] = [] +export type GetInviteTokenStateRequestOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] invite_token_CustomCheck?: (v: string) => boolean } -export const UseInviteLinkRequestValidate = (o?: UseInviteLinkRequest, opts: UseInviteLinkRequestOptions = {}, path: string = 'UseInviteLinkRequest::root.'): Error | null => { +export const GetInviteTokenStateRequestValidate = (o?: GetInviteTokenStateRequest, opts: GetInviteTokenStateRequestOptions = {}, path: string = 'GetInviteTokenStateRequest::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') @@ -1175,66 +1319,75 @@ export const UseInviteLinkRequestValidate = (o?: UseInviteLinkRequest, opts: Use return null } -export type AppsMetrics = { - apps: AppMetrics[] +export type RoutingEvent = { + settled: boolean + offchain: boolean + forward_fail_event: boolean + incoming_channel_id: number + incoming_htlc_id: number + event_type: string + incoming_amt_msat: number + failure_string: string + outgoing_channel_id: number + outgoing_htlc_id: number + timestamp_ns: number + outgoing_amt_msat: number } -export const AppsMetricsOptionalFields: [] = [] -export type AppsMetricsOptions = OptionsBaseMessage & { +export const RoutingEventOptionalFields: [] = [] +export type RoutingEventOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - apps_ItemOptions?: AppMetricsOptions - apps_CustomCheck?: (v: AppMetrics[]) => boolean + outgoing_htlc_id_CustomCheck?: (v: number) => boolean + timestamp_ns_CustomCheck?: (v: number) => boolean + outgoing_amt_msat_CustomCheck?: (v: number) => boolean + outgoing_channel_id_CustomCheck?: (v: number) => boolean + incoming_htlc_id_CustomCheck?: (v: number) => boolean + event_type_CustomCheck?: (v: string) => boolean + incoming_amt_msat_CustomCheck?: (v: number) => boolean + failure_string_CustomCheck?: (v: string) => boolean + settled_CustomCheck?: (v: boolean) => boolean + offchain_CustomCheck?: (v: boolean) => boolean + forward_fail_event_CustomCheck?: (v: boolean) => boolean + incoming_channel_id_CustomCheck?: (v: number) => boolean } -export const AppsMetricsValidate = (o?: AppsMetrics, opts: AppsMetricsOptions = {}, path: string = 'AppsMetrics::root.'): Error | null => { +export const RoutingEventValidate = (o?: RoutingEvent, opts: RoutingEventOptions = {}, path: string = 'RoutingEvent::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (!Array.isArray(o.apps)) return new Error(`${path}.apps: is not an array`) - for (let index = 0; index < o.apps.length; index++) { - const appsErr = AppMetricsValidate(o.apps[index], opts.apps_ItemOptions, `${path}.apps[${index}]`) - if (appsErr !== null) return appsErr - } - if (opts.apps_CustomCheck && !opts.apps_CustomCheck(o.apps)) return new Error(`${path}.apps: custom check failed`) + if (typeof o.incoming_amt_msat !== 'number') return new Error(`${path}.incoming_amt_msat: is not a number`) + if (opts.incoming_amt_msat_CustomCheck && !opts.incoming_amt_msat_CustomCheck(o.incoming_amt_msat)) return new Error(`${path}.incoming_amt_msat: custom check failed`) - return null -} + if (typeof o.failure_string !== 'string') return new Error(`${path}.failure_string: is not a string`) + if (opts.failure_string_CustomCheck && !opts.failure_string_CustomCheck(o.failure_string)) return new Error(`${path}.failure_string: custom check failed`) -export type SetMockInvoiceAsPaidRequest = { - invoice: string - amount: number -} -export const SetMockInvoiceAsPaidRequestOptionalFields: [] = [] -export type SetMockInvoiceAsPaidRequestOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - amount_CustomCheck?: (v: number) => boolean - invoice_CustomCheck?: (v: string) => boolean -} -export const SetMockInvoiceAsPaidRequestValidate = (o?: SetMockInvoiceAsPaidRequest, opts: SetMockInvoiceAsPaidRequestOptions = {}, path: string = 'SetMockInvoiceAsPaidRequest::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + if (typeof o.settled !== 'boolean') return new Error(`${path}.settled: is not a boolean`) + if (opts.settled_CustomCheck && !opts.settled_CustomCheck(o.settled)) return new Error(`${path}.settled: custom check failed`) - if (typeof o.invoice !== 'string') return new Error(`${path}.invoice: is not a string`) - if (opts.invoice_CustomCheck && !opts.invoice_CustomCheck(o.invoice)) return new Error(`${path}.invoice: custom check failed`) + if (typeof o.offchain !== 'boolean') return new Error(`${path}.offchain: is not a boolean`) + if (opts.offchain_CustomCheck && !opts.offchain_CustomCheck(o.offchain)) return new Error(`${path}.offchain: custom check failed`) - if (typeof o.amount !== 'number') return new Error(`${path}.amount: is not a number`) - if (opts.amount_CustomCheck && !opts.amount_CustomCheck(o.amount)) return new Error(`${path}.amount: custom check failed`) + if (typeof o.forward_fail_event !== 'boolean') return new Error(`${path}.forward_fail_event: is not a boolean`) + if (opts.forward_fail_event_CustomCheck && !opts.forward_fail_event_CustomCheck(o.forward_fail_event)) return new Error(`${path}.forward_fail_event: custom check failed`) - return null -} + if (typeof o.incoming_channel_id !== 'number') return new Error(`${path}.incoming_channel_id: is not a number`) + if (opts.incoming_channel_id_CustomCheck && !opts.incoming_channel_id_CustomCheck(o.incoming_channel_id)) return new Error(`${path}.incoming_channel_id: custom check failed`) -export type BanUserRequest = { - user_id: string -} -export const BanUserRequestOptionalFields: [] = [] -export type BanUserRequestOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - user_id_CustomCheck?: (v: string) => boolean -} -export const BanUserRequestValidate = (o?: BanUserRequest, opts: BanUserRequestOptions = {}, path: string = 'BanUserRequest::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + if (typeof o.incoming_htlc_id !== 'number') return new Error(`${path}.incoming_htlc_id: is not a number`) + if (opts.incoming_htlc_id_CustomCheck && !opts.incoming_htlc_id_CustomCheck(o.incoming_htlc_id)) return new Error(`${path}.incoming_htlc_id: custom check failed`) - if (typeof o.user_id !== 'string') return new Error(`${path}.user_id: is not a string`) - if (opts.user_id_CustomCheck && !opts.user_id_CustomCheck(o.user_id)) return new Error(`${path}.user_id: custom check failed`) + if (typeof o.event_type !== 'string') return new Error(`${path}.event_type: is not a string`) + if (opts.event_type_CustomCheck && !opts.event_type_CustomCheck(o.event_type)) return new Error(`${path}.event_type: custom check failed`) + + if (typeof o.outgoing_amt_msat !== 'number') return new Error(`${path}.outgoing_amt_msat: is not a number`) + if (opts.outgoing_amt_msat_CustomCheck && !opts.outgoing_amt_msat_CustomCheck(o.outgoing_amt_msat)) return new Error(`${path}.outgoing_amt_msat: custom check failed`) + + if (typeof o.outgoing_channel_id !== 'number') return new Error(`${path}.outgoing_channel_id: is not a number`) + if (opts.outgoing_channel_id_CustomCheck && !opts.outgoing_channel_id_CustomCheck(o.outgoing_channel_id)) return new Error(`${path}.outgoing_channel_id: custom check failed`) + + if (typeof o.outgoing_htlc_id !== 'number') return new Error(`${path}.outgoing_htlc_id: is not a number`) + if (opts.outgoing_htlc_id_CustomCheck && !opts.outgoing_htlc_id_CustomCheck(o.outgoing_htlc_id)) return new Error(`${path}.outgoing_htlc_id: custom check failed`) + + if (typeof o.timestamp_ns !== 'number') return new Error(`${path}.timestamp_ns: is not a number`) + if (opts.timestamp_ns_CustomCheck && !opts.timestamp_ns_CustomCheck(o.timestamp_ns)) return new Error(`${path}.timestamp_ns: custom check failed`) return null } @@ -1257,31 +1410,36 @@ export const GetAppUserRequestValidate = (o?: GetAppUserRequest, opts: GetAppUse return null } -export type NewInvoiceResponse = { +export type PayInvoiceRequest = { invoice: string + amount: number } -export const NewInvoiceResponseOptionalFields: [] = [] -export type NewInvoiceResponseOptions = OptionsBaseMessage & { +export const PayInvoiceRequestOptionalFields: [] = [] +export type PayInvoiceRequestOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] + amount_CustomCheck?: (v: number) => boolean invoice_CustomCheck?: (v: string) => boolean } -export const NewInvoiceResponseValidate = (o?: NewInvoiceResponse, opts: NewInvoiceResponseOptions = {}, path: string = 'NewInvoiceResponse::root.'): Error | null => { +export const PayInvoiceRequestValidate = (o?: PayInvoiceRequest, opts: PayInvoiceRequestOptions = {}, path: string = 'PayInvoiceRequest::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') if (typeof o.invoice !== 'string') return new Error(`${path}.invoice: is not a string`) if (opts.invoice_CustomCheck && !opts.invoice_CustomCheck(o.invoice)) return new Error(`${path}.invoice: custom check failed`) + if (typeof o.amount !== 'number') return new Error(`${path}.amount: is not a number`) + if (opts.amount_CustomCheck && !opts.amount_CustomCheck(o.amount)) return new Error(`${path}.amount: custom check failed`) + return null } export type GetUserOperationsResponse = { + latestIncomingUserToUserPayemnts: UserOperations latestOutgoingInvoiceOperations: UserOperations latestIncomingInvoiceOperations: UserOperations latestOutgoingTxOperations: UserOperations latestIncomingTxOperations: UserOperations latestOutgoingUserToUserPayemnts: UserOperations - latestIncomingUserToUserPayemnts: UserOperations } export const GetUserOperationsResponseOptionalFields: [] = [] export type GetUserOperationsResponseOptions = OptionsBaseMessage & { @@ -1324,309 +1482,172 @@ export const GetUserOperationsResponseValidate = (o?: GetUserOperationsResponse, return null } -export type LndMetricsRequest = { - from_unix?: number - to_unix?: number +export type UsageMetrics = { + metrics: UsageMetric[] } -export type LndMetricsRequestOptionalField = 'from_unix' | 'to_unix' -export const LndMetricsRequestOptionalFields: LndMetricsRequestOptionalField[] = ['from_unix', 'to_unix'] -export type LndMetricsRequestOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: LndMetricsRequestOptionalField[] - from_unix_CustomCheck?: (v?: number) => boolean - to_unix_CustomCheck?: (v?: number) => boolean +export const UsageMetricsOptionalFields: [] = [] +export type UsageMetricsOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + metrics_ItemOptions?: UsageMetricOptions + metrics_CustomCheck?: (v: UsageMetric[]) => boolean } -export const LndMetricsRequestValidate = (o?: LndMetricsRequest, opts: LndMetricsRequestOptions = {}, path: string = 'LndMetricsRequest::root.'): Error | null => { +export const UsageMetricsValidate = (o?: UsageMetrics, opts: UsageMetricsOptions = {}, path: string = 'UsageMetrics::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if ((o.from_unix || opts.allOptionalsAreSet || opts.checkOptionalsAreSet?.includes('from_unix')) && typeof o.from_unix !== 'number') return new Error(`${path}.from_unix: is not a number`) - if (opts.from_unix_CustomCheck && !opts.from_unix_CustomCheck(o.from_unix)) return new Error(`${path}.from_unix: custom check failed`) - - if ((o.to_unix || opts.allOptionalsAreSet || opts.checkOptionalsAreSet?.includes('to_unix')) && typeof o.to_unix !== 'number') return new Error(`${path}.to_unix: is not a number`) - if (opts.to_unix_CustomCheck && !opts.to_unix_CustomCheck(o.to_unix)) return new Error(`${path}.to_unix: custom check failed`) + if (!Array.isArray(o.metrics)) return new Error(`${path}.metrics: is not an array`) + for (let index = 0; index < o.metrics.length; index++) { + const metricsErr = UsageMetricValidate(o.metrics[index], opts.metrics_ItemOptions, `${path}.metrics[${index}]`) + if (metricsErr !== null) return metricsErr + } + if (opts.metrics_CustomCheck && !opts.metrics_CustomCheck(o.metrics)) return new Error(`${path}.metrics: custom check failed`) return null } -export type AuthApp = { - auth_token: string - app: Application +export type NewAddressRequest = { + addressType: AddressType } -export const AuthAppOptionalFields: [] = [] -export type AuthAppOptions = OptionsBaseMessage & { +export const NewAddressRequestOptionalFields: [] = [] +export type NewAddressRequestOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - auth_token_CustomCheck?: (v: string) => boolean - app_Options?: ApplicationOptions + addressType_CustomCheck?: (v: AddressType) => boolean } -export const AuthAppValidate = (o?: AuthApp, opts: AuthAppOptions = {}, path: string = 'AuthApp::root.'): Error | null => { +export const NewAddressRequestValidate = (o?: NewAddressRequest, opts: NewAddressRequestOptions = {}, path: string = 'NewAddressRequest::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.auth_token !== 'string') return new Error(`${path}.auth_token: is not a string`) - if (opts.auth_token_CustomCheck && !opts.auth_token_CustomCheck(o.auth_token)) return new Error(`${path}.auth_token: custom check failed`) - - const appErr = ApplicationValidate(o.app, opts.app_Options, `${path}.app`) - if (appErr !== null) return appErr - + if (!enumCheckAddressType(o.addressType)) return new Error(`${path}.addressType: is not a valid AddressType`) + if (opts.addressType_CustomCheck && !opts.addressType_CustomCheck(o.addressType)) return new Error(`${path}.addressType: custom check failed`) return null } -export type DecodeInvoiceRequest = { - invoice: string +export type ClosedChannel = { + capacity: number + closed_height: number + channel_id: string } -export const DecodeInvoiceRequestOptionalFields: [] = [] -export type DecodeInvoiceRequestOptions = OptionsBaseMessage & { +export const ClosedChannelOptionalFields: [] = [] +export type ClosedChannelOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - invoice_CustomCheck?: (v: string) => boolean + channel_id_CustomCheck?: (v: string) => boolean + capacity_CustomCheck?: (v: number) => boolean + closed_height_CustomCheck?: (v: number) => boolean } -export const DecodeInvoiceRequestValidate = (o?: DecodeInvoiceRequest, opts: DecodeInvoiceRequestOptions = {}, path: string = 'DecodeInvoiceRequest::root.'): Error | null => { +export const ClosedChannelValidate = (o?: ClosedChannel, opts: ClosedChannelOptions = {}, path: string = 'ClosedChannel::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.invoice !== 'string') return new Error(`${path}.invoice: is not a string`) - if (opts.invoice_CustomCheck && !opts.invoice_CustomCheck(o.invoice)) return new Error(`${path}.invoice: custom check failed`) + if (typeof o.channel_id !== 'string') return new Error(`${path}.channel_id: is not a string`) + if (opts.channel_id_CustomCheck && !opts.channel_id_CustomCheck(o.channel_id)) return new Error(`${path}.channel_id: custom check failed`) + + if (typeof o.capacity !== 'number') return new Error(`${path}.capacity: is not a number`) + if (opts.capacity_CustomCheck && !opts.capacity_CustomCheck(o.capacity)) return new Error(`${path}.capacity: custom check failed`) + + if (typeof o.closed_height !== 'number') return new Error(`${path}.closed_height: is not a number`) + if (opts.closed_height_CustomCheck && !opts.closed_height_CustomCheck(o.closed_height)) return new Error(`${path}.closed_height: custom check failed`) return null } -export type LnurlLinkResponse = { - lnurl: string - k1: string +export type LndNodeMetrics = { + channels_balance_events: ChannelBalanceEvent[] + chain_balance_events: ChainBalanceEvent[] + closed_channels: ClosedChannel[] + channel_routing: ChannelRouting[] + offline_channels: number + online_channels: number + pending_channels: number + closing_channels: number + open_channels: OpenChannel[] } -export const LnurlLinkResponseOptionalFields: [] = [] -export type LnurlLinkResponseOptions = OptionsBaseMessage & { +export const LndNodeMetricsOptionalFields: [] = [] +export type LndNodeMetricsOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - lnurl_CustomCheck?: (v: string) => boolean - k1_CustomCheck?: (v: string) => boolean + open_channels_ItemOptions?: OpenChannelOptions + open_channels_CustomCheck?: (v: OpenChannel[]) => boolean + offline_channels_CustomCheck?: (v: number) => boolean + online_channels_CustomCheck?: (v: number) => boolean + pending_channels_CustomCheck?: (v: number) => boolean + closing_channels_CustomCheck?: (v: number) => boolean + channels_balance_events_ItemOptions?: ChannelBalanceEventOptions + channels_balance_events_CustomCheck?: (v: ChannelBalanceEvent[]) => boolean + chain_balance_events_ItemOptions?: ChainBalanceEventOptions + chain_balance_events_CustomCheck?: (v: ChainBalanceEvent[]) => boolean + closed_channels_ItemOptions?: ClosedChannelOptions + closed_channels_CustomCheck?: (v: ClosedChannel[]) => boolean + channel_routing_ItemOptions?: ChannelRoutingOptions + channel_routing_CustomCheck?: (v: ChannelRouting[]) => boolean } -export const LnurlLinkResponseValidate = (o?: LnurlLinkResponse, opts: LnurlLinkResponseOptions = {}, path: string = 'LnurlLinkResponse::root.'): Error | null => { +export const LndNodeMetricsValidate = (o?: LndNodeMetrics, opts: LndNodeMetricsOptions = {}, path: string = 'LndNodeMetrics::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.lnurl !== 'string') return new Error(`${path}.lnurl: is not a string`) - if (opts.lnurl_CustomCheck && !opts.lnurl_CustomCheck(o.lnurl)) return new Error(`${path}.lnurl: custom check failed`) + if (typeof o.offline_channels !== 'number') return new Error(`${path}.offline_channels: is not a number`) + if (opts.offline_channels_CustomCheck && !opts.offline_channels_CustomCheck(o.offline_channels)) return new Error(`${path}.offline_channels: custom check failed`) - if (typeof o.k1 !== 'string') return new Error(`${path}.k1: is not a string`) - if (opts.k1_CustomCheck && !opts.k1_CustomCheck(o.k1)) return new Error(`${path}.k1: custom check failed`) + if (typeof o.online_channels !== 'number') return new Error(`${path}.online_channels: is not a number`) + if (opts.online_channels_CustomCheck && !opts.online_channels_CustomCheck(o.online_channels)) return new Error(`${path}.online_channels: custom check failed`) + + if (typeof o.pending_channels !== 'number') return new Error(`${path}.pending_channels: is not a number`) + if (opts.pending_channels_CustomCheck && !opts.pending_channels_CustomCheck(o.pending_channels)) return new Error(`${path}.pending_channels: custom check failed`) + + if (typeof o.closing_channels !== 'number') return new Error(`${path}.closing_channels: is not a number`) + if (opts.closing_channels_CustomCheck && !opts.closing_channels_CustomCheck(o.closing_channels)) return new Error(`${path}.closing_channels: custom check failed`) + + if (!Array.isArray(o.open_channels)) return new Error(`${path}.open_channels: is not an array`) + for (let index = 0; index < o.open_channels.length; index++) { + const open_channelsErr = OpenChannelValidate(o.open_channels[index], opts.open_channels_ItemOptions, `${path}.open_channels[${index}]`) + if (open_channelsErr !== null) return open_channelsErr + } + if (opts.open_channels_CustomCheck && !opts.open_channels_CustomCheck(o.open_channels)) return new Error(`${path}.open_channels: custom check failed`) + + if (!Array.isArray(o.channels_balance_events)) return new Error(`${path}.channels_balance_events: is not an array`) + for (let index = 0; index < o.channels_balance_events.length; index++) { + const channels_balance_eventsErr = ChannelBalanceEventValidate(o.channels_balance_events[index], opts.channels_balance_events_ItemOptions, `${path}.channels_balance_events[${index}]`) + if (channels_balance_eventsErr !== null) return channels_balance_eventsErr + } + if (opts.channels_balance_events_CustomCheck && !opts.channels_balance_events_CustomCheck(o.channels_balance_events)) return new Error(`${path}.channels_balance_events: custom check failed`) + + if (!Array.isArray(o.chain_balance_events)) return new Error(`${path}.chain_balance_events: is not an array`) + for (let index = 0; index < o.chain_balance_events.length; index++) { + const chain_balance_eventsErr = ChainBalanceEventValidate(o.chain_balance_events[index], opts.chain_balance_events_ItemOptions, `${path}.chain_balance_events[${index}]`) + if (chain_balance_eventsErr !== null) return chain_balance_eventsErr + } + if (opts.chain_balance_events_CustomCheck && !opts.chain_balance_events_CustomCheck(o.chain_balance_events)) return new Error(`${path}.chain_balance_events: custom check failed`) + + if (!Array.isArray(o.closed_channels)) return new Error(`${path}.closed_channels: is not an array`) + for (let index = 0; index < o.closed_channels.length; index++) { + const closed_channelsErr = ClosedChannelValidate(o.closed_channels[index], opts.closed_channels_ItemOptions, `${path}.closed_channels[${index}]`) + if (closed_channelsErr !== null) return closed_channelsErr + } + if (opts.closed_channels_CustomCheck && !opts.closed_channels_CustomCheck(o.closed_channels)) return new Error(`${path}.closed_channels: custom check failed`) + + if (!Array.isArray(o.channel_routing)) return new Error(`${path}.channel_routing: is not an array`) + for (let index = 0; index < o.channel_routing.length; index++) { + const channel_routingErr = ChannelRoutingValidate(o.channel_routing[index], opts.channel_routing_ItemOptions, `${path}.channel_routing[${index}]`) + if (channel_routingErr !== null) return channel_routingErr + } + if (opts.channel_routing_CustomCheck && !opts.channel_routing_CustomCheck(o.channel_routing)) return new Error(`${path}.channel_routing: custom check failed`) return null } -export type RequestNPubLinkingTokenResponse = { - token: string +export type BanUserRequest = { + user_id: string } -export const RequestNPubLinkingTokenResponseOptionalFields: [] = [] -export type RequestNPubLinkingTokenResponseOptions = OptionsBaseMessage & { +export const BanUserRequestOptionalFields: [] = [] +export type BanUserRequestOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - token_CustomCheck?: (v: string) => boolean + user_id_CustomCheck?: (v: string) => boolean } -export const RequestNPubLinkingTokenResponseValidate = (o?: RequestNPubLinkingTokenResponse, opts: RequestNPubLinkingTokenResponseOptions = {}, path: string = 'RequestNPubLinkingTokenResponse::root.'): Error | null => { +export const BanUserRequestValidate = (o?: BanUserRequest, opts: BanUserRequestOptions = {}, path: string = 'BanUserRequest::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.token !== 'string') return new Error(`${path}.token: is not a string`) - if (opts.token_CustomCheck && !opts.token_CustomCheck(o.token)) return new Error(`${path}.token: custom check failed`) - - return null -} - -export type CreateOneTimeInviteLinkResponse = { - invitation_link: string -} -export const CreateOneTimeInviteLinkResponseOptionalFields: [] = [] -export type CreateOneTimeInviteLinkResponseOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - invitation_link_CustomCheck?: (v: string) => boolean -} -export const CreateOneTimeInviteLinkResponseValidate = (o?: CreateOneTimeInviteLinkResponse, opts: CreateOneTimeInviteLinkResponseOptions = {}, path: string = 'CreateOneTimeInviteLinkResponse::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.invitation_link !== 'string') return new Error(`${path}.invitation_link: is not a string`) - if (opts.invitation_link_CustomCheck && !opts.invitation_link_CustomCheck(o.invitation_link)) return new Error(`${path}.invitation_link: custom check failed`) - - return null -} - -export type UsersInfo = { - no_balance: number - negative_balance: number - always_been_inactive: number - balance_avg: number - balance_median: number - total: number -} -export const UsersInfoOptionalFields: [] = [] -export type UsersInfoOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - total_CustomCheck?: (v: number) => boolean - no_balance_CustomCheck?: (v: number) => boolean - negative_balance_CustomCheck?: (v: number) => boolean - always_been_inactive_CustomCheck?: (v: number) => boolean - balance_avg_CustomCheck?: (v: number) => boolean - balance_median_CustomCheck?: (v: number) => boolean -} -export const UsersInfoValidate = (o?: UsersInfo, opts: UsersInfoOptions = {}, path: string = 'UsersInfo::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.total !== 'number') return new Error(`${path}.total: is not a number`) - if (opts.total_CustomCheck && !opts.total_CustomCheck(o.total)) return new Error(`${path}.total: custom check failed`) - - if (typeof o.no_balance !== 'number') return new Error(`${path}.no_balance: is not a number`) - if (opts.no_balance_CustomCheck && !opts.no_balance_CustomCheck(o.no_balance)) return new Error(`${path}.no_balance: custom check failed`) - - if (typeof o.negative_balance !== 'number') return new Error(`${path}.negative_balance: is not a number`) - if (opts.negative_balance_CustomCheck && !opts.negative_balance_CustomCheck(o.negative_balance)) return new Error(`${path}.negative_balance: custom check failed`) - - if (typeof o.always_been_inactive !== 'number') return new Error(`${path}.always_been_inactive: is not a number`) - if (opts.always_been_inactive_CustomCheck && !opts.always_been_inactive_CustomCheck(o.always_been_inactive)) return new Error(`${path}.always_been_inactive: custom check failed`) - - if (typeof o.balance_avg !== 'number') return new Error(`${path}.balance_avg: is not a number`) - if (opts.balance_avg_CustomCheck && !opts.balance_avg_CustomCheck(o.balance_avg)) return new Error(`${path}.balance_avg: custom check failed`) - - if (typeof o.balance_median !== 'number') return new Error(`${path}.balance_median: is not a number`) - if (opts.balance_median_CustomCheck && !opts.balance_median_CustomCheck(o.balance_median)) return new Error(`${path}.balance_median: custom check failed`) - - return null -} - -export type RoutingEvent = { - outgoing_channel_id: number - incoming_amt_msat: number - settled: boolean - offchain: boolean - incoming_channel_id: number - incoming_htlc_id: number - outgoing_htlc_id: number - timestamp_ns: number - event_type: string - outgoing_amt_msat: number - failure_string: string - forward_fail_event: boolean -} -export const RoutingEventOptionalFields: [] = [] -export type RoutingEventOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - event_type_CustomCheck?: (v: string) => boolean - outgoing_amt_msat_CustomCheck?: (v: number) => boolean - failure_string_CustomCheck?: (v: string) => boolean - offchain_CustomCheck?: (v: boolean) => boolean - incoming_channel_id_CustomCheck?: (v: number) => boolean - incoming_htlc_id_CustomCheck?: (v: number) => boolean - outgoing_htlc_id_CustomCheck?: (v: number) => boolean - timestamp_ns_CustomCheck?: (v: number) => boolean - forward_fail_event_CustomCheck?: (v: boolean) => boolean - outgoing_channel_id_CustomCheck?: (v: number) => boolean - incoming_amt_msat_CustomCheck?: (v: number) => boolean - settled_CustomCheck?: (v: boolean) => boolean -} -export const RoutingEventValidate = (o?: RoutingEvent, opts: RoutingEventOptions = {}, path: string = 'RoutingEvent::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.incoming_channel_id !== 'number') return new Error(`${path}.incoming_channel_id: is not a number`) - if (opts.incoming_channel_id_CustomCheck && !opts.incoming_channel_id_CustomCheck(o.incoming_channel_id)) return new Error(`${path}.incoming_channel_id: custom check failed`) - - if (typeof o.incoming_htlc_id !== 'number') return new Error(`${path}.incoming_htlc_id: is not a number`) - if (opts.incoming_htlc_id_CustomCheck && !opts.incoming_htlc_id_CustomCheck(o.incoming_htlc_id)) return new Error(`${path}.incoming_htlc_id: custom check failed`) - - if (typeof o.outgoing_htlc_id !== 'number') return new Error(`${path}.outgoing_htlc_id: is not a number`) - if (opts.outgoing_htlc_id_CustomCheck && !opts.outgoing_htlc_id_CustomCheck(o.outgoing_htlc_id)) return new Error(`${path}.outgoing_htlc_id: custom check failed`) - - if (typeof o.timestamp_ns !== 'number') return new Error(`${path}.timestamp_ns: is not a number`) - if (opts.timestamp_ns_CustomCheck && !opts.timestamp_ns_CustomCheck(o.timestamp_ns)) return new Error(`${path}.timestamp_ns: custom check failed`) - - if (typeof o.event_type !== 'string') return new Error(`${path}.event_type: is not a string`) - if (opts.event_type_CustomCheck && !opts.event_type_CustomCheck(o.event_type)) return new Error(`${path}.event_type: custom check failed`) - - if (typeof o.outgoing_amt_msat !== 'number') return new Error(`${path}.outgoing_amt_msat: is not a number`) - if (opts.outgoing_amt_msat_CustomCheck && !opts.outgoing_amt_msat_CustomCheck(o.outgoing_amt_msat)) return new Error(`${path}.outgoing_amt_msat: custom check failed`) - - if (typeof o.failure_string !== 'string') return new Error(`${path}.failure_string: is not a string`) - if (opts.failure_string_CustomCheck && !opts.failure_string_CustomCheck(o.failure_string)) return new Error(`${path}.failure_string: custom check failed`) - - if (typeof o.offchain !== 'boolean') return new Error(`${path}.offchain: is not a boolean`) - if (opts.offchain_CustomCheck && !opts.offchain_CustomCheck(o.offchain)) return new Error(`${path}.offchain: custom check failed`) - - if (typeof o.forward_fail_event !== 'boolean') return new Error(`${path}.forward_fail_event: is not a boolean`) - if (opts.forward_fail_event_CustomCheck && !opts.forward_fail_event_CustomCheck(o.forward_fail_event)) return new Error(`${path}.forward_fail_event: custom check failed`) - - if (typeof o.outgoing_channel_id !== 'number') return new Error(`${path}.outgoing_channel_id: is not a number`) - if (opts.outgoing_channel_id_CustomCheck && !opts.outgoing_channel_id_CustomCheck(o.outgoing_channel_id)) return new Error(`${path}.outgoing_channel_id: custom check failed`) - - if (typeof o.incoming_amt_msat !== 'number') return new Error(`${path}.incoming_amt_msat: is not a number`) - if (opts.incoming_amt_msat_CustomCheck && !opts.incoming_amt_msat_CustomCheck(o.incoming_amt_msat)) return new Error(`${path}.incoming_amt_msat: custom check failed`) - - if (typeof o.settled !== 'boolean') return new Error(`${path}.settled: is not a boolean`) - if (opts.settled_CustomCheck && !opts.settled_CustomCheck(o.settled)) return new Error(`${path}.settled: custom check failed`) - - return null -} - -export type UserInfo = { - user_identifier: string - service_fee_bps: number - network_max_fee_bps: number - network_max_fee_fixed: number - userId: string - balance: number - max_withdrawable: number -} -export const UserInfoOptionalFields: [] = [] -export type UserInfoOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - network_max_fee_fixed_CustomCheck?: (v: number) => boolean - userId_CustomCheck?: (v: string) => boolean - balance_CustomCheck?: (v: number) => boolean - max_withdrawable_CustomCheck?: (v: number) => boolean - user_identifier_CustomCheck?: (v: string) => boolean - service_fee_bps_CustomCheck?: (v: number) => boolean - network_max_fee_bps_CustomCheck?: (v: number) => boolean -} -export const UserInfoValidate = (o?: UserInfo, opts: UserInfoOptions = {}, path: string = 'UserInfo::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.userId !== 'string') return new Error(`${path}.userId: is not a string`) - if (opts.userId_CustomCheck && !opts.userId_CustomCheck(o.userId)) return new Error(`${path}.userId: custom check failed`) - - if (typeof o.balance !== 'number') return new Error(`${path}.balance: is not a number`) - if (opts.balance_CustomCheck && !opts.balance_CustomCheck(o.balance)) return new Error(`${path}.balance: custom check failed`) - - if (typeof o.max_withdrawable !== 'number') return new Error(`${path}.max_withdrawable: is not a number`) - if (opts.max_withdrawable_CustomCheck && !opts.max_withdrawable_CustomCheck(o.max_withdrawable)) return new Error(`${path}.max_withdrawable: custom check failed`) - - if (typeof o.user_identifier !== 'string') return new Error(`${path}.user_identifier: is not a string`) - if (opts.user_identifier_CustomCheck && !opts.user_identifier_CustomCheck(o.user_identifier)) return new Error(`${path}.user_identifier: custom check failed`) - - if (typeof o.service_fee_bps !== 'number') return new Error(`${path}.service_fee_bps: is not a number`) - if (opts.service_fee_bps_CustomCheck && !opts.service_fee_bps_CustomCheck(o.service_fee_bps)) return new Error(`${path}.service_fee_bps: custom check failed`) - - if (typeof o.network_max_fee_bps !== 'number') return new Error(`${path}.network_max_fee_bps: is not a number`) - if (opts.network_max_fee_bps_CustomCheck && !opts.network_max_fee_bps_CustomCheck(o.network_max_fee_bps)) return new Error(`${path}.network_max_fee_bps: custom check failed`) - - if (typeof o.network_max_fee_fixed !== 'number') return new Error(`${path}.network_max_fee_fixed: is not a number`) - if (opts.network_max_fee_fixed_CustomCheck && !opts.network_max_fee_fixed_CustomCheck(o.network_max_fee_fixed)) return new Error(`${path}.network_max_fee_fixed: custom check failed`) - - return null -} - -export type LndGetInfoRequest = { - nodeId: number -} -export const LndGetInfoRequestOptionalFields: [] = [] -export type LndGetInfoRequestOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - nodeId_CustomCheck?: (v: number) => boolean -} -export const LndGetInfoRequestValidate = (o?: LndGetInfoRequest, opts: LndGetInfoRequestOptions = {}, path: string = 'LndGetInfoRequest::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.nodeId !== 'number') return new Error(`${path}.nodeId: is not a number`) - if (opts.nodeId_CustomCheck && !opts.nodeId_CustomCheck(o.nodeId)) return new Error(`${path}.nodeId: custom check failed`) + if (typeof o.user_id !== 'string') return new Error(`${path}.user_id: is not a string`) + if (opts.user_id_CustomCheck && !opts.user_id_CustomCheck(o.user_id)) return new Error(`${path}.user_id: custom check failed`) return null } @@ -1655,10 +1676,10 @@ export const AddAppRequestValidate = (o?: AddAppRequest, opts: AddAppRequestOpti } export type AddAppUserInvoiceRequest = { - receiver_identifier: string - payer_identifier: string http_callback_url: string invoice_req: NewInvoiceRequest + receiver_identifier: string + payer_identifier: string } export const AddAppUserInvoiceRequestOptionalFields: [] = [] export type AddAppUserInvoiceRequestOptions = OptionsBaseMessage & { @@ -1672,6 +1693,12 @@ export const AddAppUserInvoiceRequestValidate = (o?: AddAppUserInvoiceRequest, o if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + if (typeof o.payer_identifier !== 'string') return new Error(`${path}.payer_identifier: is not a string`) + if (opts.payer_identifier_CustomCheck && !opts.payer_identifier_CustomCheck(o.payer_identifier)) return new Error(`${path}.payer_identifier: custom check failed`) + + if (typeof o.http_callback_url !== 'string') return new Error(`${path}.http_callback_url: is not a string`) + if (opts.http_callback_url_CustomCheck && !opts.http_callback_url_CustomCheck(o.http_callback_url)) return new Error(`${path}.http_callback_url: custom check failed`) + const invoice_reqErr = NewInvoiceRequestValidate(o.invoice_req, opts.invoice_req_Options, `${path}.invoice_req`) if (invoice_reqErr !== null) return invoice_reqErr @@ -1679,115 +1706,111 @@ export const AddAppUserInvoiceRequestValidate = (o?: AddAppUserInvoiceRequest, o if (typeof o.receiver_identifier !== 'string') return new Error(`${path}.receiver_identifier: is not a string`) if (opts.receiver_identifier_CustomCheck && !opts.receiver_identifier_CustomCheck(o.receiver_identifier)) return new Error(`${path}.receiver_identifier: custom check failed`) - if (typeof o.payer_identifier !== 'string') return new Error(`${path}.payer_identifier: is not a string`) - if (opts.payer_identifier_CustomCheck && !opts.payer_identifier_CustomCheck(o.payer_identifier)) return new Error(`${path}.payer_identifier: custom check failed`) + return null +} - if (typeof o.http_callback_url !== 'string') return new Error(`${path}.http_callback_url: is not a string`) - if (opts.http_callback_url_CustomCheck && !opts.http_callback_url_CustomCheck(o.http_callback_url)) return new Error(`${path}.http_callback_url: custom check failed`) +export type SetMockAppBalanceRequest = { + amount: number +} +export const SetMockAppBalanceRequestOptionalFields: [] = [] +export type SetMockAppBalanceRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + amount_CustomCheck?: (v: number) => boolean +} +export const SetMockAppBalanceRequestValidate = (o?: SetMockAppBalanceRequest, opts: SetMockAppBalanceRequestOptions = {}, path: string = 'SetMockAppBalanceRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.amount !== 'number') return new Error(`${path}.amount: is not a number`) + if (opts.amount_CustomCheck && !opts.amount_CustomCheck(o.amount)) return new Error(`${path}.amount: custom check failed`) return null } -export type LinkNPubThroughTokenRequest = { - token: string +export type AppMetrics = { + fees: number + invoices: number + spent: number + available: number + received: number + total_fees: number + operations: UserOperation[] + app: Application + users: UsersInfo } -export const LinkNPubThroughTokenRequestOptionalFields: [] = [] -export type LinkNPubThroughTokenRequestOptions = OptionsBaseMessage & { +export const AppMetricsOptionalFields: [] = [] +export type AppMetricsOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - token_CustomCheck?: (v: string) => boolean + app_Options?: ApplicationOptions + users_Options?: UsersInfoOptions + received_CustomCheck?: (v: number) => boolean + total_fees_CustomCheck?: (v: number) => boolean + operations_ItemOptions?: UserOperationOptions + operations_CustomCheck?: (v: UserOperation[]) => boolean + spent_CustomCheck?: (v: number) => boolean + available_CustomCheck?: (v: number) => boolean + fees_CustomCheck?: (v: number) => boolean + invoices_CustomCheck?: (v: number) => boolean } -export const LinkNPubThroughTokenRequestValidate = (o?: LinkNPubThroughTokenRequest, opts: LinkNPubThroughTokenRequestOptions = {}, path: string = 'LinkNPubThroughTokenRequest::root.'): Error | null => { +export const AppMetricsValidate = (o?: AppMetrics, opts: AppMetricsOptions = {}, path: string = 'AppMetrics::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.token !== 'string') return new Error(`${path}.token: is not a string`) - if (opts.token_CustomCheck && !opts.token_CustomCheck(o.token)) return new Error(`${path}.token: custom check failed`) + const appErr = ApplicationValidate(o.app, opts.app_Options, `${path}.app`) + if (appErr !== null) return appErr + + + const usersErr = UsersInfoValidate(o.users, opts.users_Options, `${path}.users`) + if (usersErr !== null) return usersErr + + + if (typeof o.received !== 'number') return new Error(`${path}.received: is not a number`) + if (opts.received_CustomCheck && !opts.received_CustomCheck(o.received)) return new Error(`${path}.received: custom check failed`) + + if (typeof o.total_fees !== 'number') return new Error(`${path}.total_fees: is not a number`) + if (opts.total_fees_CustomCheck && !opts.total_fees_CustomCheck(o.total_fees)) return new Error(`${path}.total_fees: custom check failed`) + + if (!Array.isArray(o.operations)) return new Error(`${path}.operations: is not an array`) + for (let index = 0; index < o.operations.length; index++) { + const operationsErr = UserOperationValidate(o.operations[index], opts.operations_ItemOptions, `${path}.operations[${index}]`) + if (operationsErr !== null) return operationsErr + } + if (opts.operations_CustomCheck && !opts.operations_CustomCheck(o.operations)) return new Error(`${path}.operations: custom check failed`) + + if (typeof o.spent !== 'number') return new Error(`${path}.spent: is not a number`) + if (opts.spent_CustomCheck && !opts.spent_CustomCheck(o.spent)) return new Error(`${path}.spent: custom check failed`) + + if (typeof o.available !== 'number') return new Error(`${path}.available: is not a number`) + if (opts.available_CustomCheck && !opts.available_CustomCheck(o.available)) return new Error(`${path}.available: custom check failed`) + + if (typeof o.fees !== 'number') return new Error(`${path}.fees: is not a number`) + if (opts.fees_CustomCheck && !opts.fees_CustomCheck(o.fees)) return new Error(`${path}.fees: custom check failed`) + + if (typeof o.invoices !== 'number') return new Error(`${path}.invoices: is not a number`) + if (opts.invoices_CustomCheck && !opts.invoices_CustomCheck(o.invoices)) return new Error(`${path}.invoices: custom check failed`) return null } -export type PayInvoiceResponse = { - preimage: string - amount_paid: number - operation_id: string - service_fee: number - network_fee: number +export type AppsMetrics = { + apps: AppMetrics[] } -export const PayInvoiceResponseOptionalFields: [] = [] -export type PayInvoiceResponseOptions = OptionsBaseMessage & { +export const AppsMetricsOptionalFields: [] = [] +export type AppsMetricsOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - preimage_CustomCheck?: (v: string) => boolean - amount_paid_CustomCheck?: (v: number) => boolean - operation_id_CustomCheck?: (v: string) => boolean - service_fee_CustomCheck?: (v: number) => boolean - network_fee_CustomCheck?: (v: number) => boolean + apps_ItemOptions?: AppMetricsOptions + apps_CustomCheck?: (v: AppMetrics[]) => boolean } -export const PayInvoiceResponseValidate = (o?: PayInvoiceResponse, opts: PayInvoiceResponseOptions = {}, path: string = 'PayInvoiceResponse::root.'): Error | null => { +export const AppsMetricsValidate = (o?: AppsMetrics, opts: AppsMetricsOptions = {}, path: string = 'AppsMetrics::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.preimage !== 'string') return new Error(`${path}.preimage: is not a string`) - if (opts.preimage_CustomCheck && !opts.preimage_CustomCheck(o.preimage)) return new Error(`${path}.preimage: custom check failed`) - - if (typeof o.amount_paid !== 'number') return new Error(`${path}.amount_paid: is not a number`) - if (opts.amount_paid_CustomCheck && !opts.amount_paid_CustomCheck(o.amount_paid)) return new Error(`${path}.amount_paid: custom check failed`) - - if (typeof o.operation_id !== 'string') return new Error(`${path}.operation_id: is not a string`) - if (opts.operation_id_CustomCheck && !opts.operation_id_CustomCheck(o.operation_id)) return new Error(`${path}.operation_id: custom check failed`) - - if (typeof o.service_fee !== 'number') return new Error(`${path}.service_fee: is not a number`) - if (opts.service_fee_CustomCheck && !opts.service_fee_CustomCheck(o.service_fee)) return new Error(`${path}.service_fee: custom check failed`) - - if (typeof o.network_fee !== 'number') return new Error(`${path}.network_fee: is not a number`) - if (opts.network_fee_CustomCheck && !opts.network_fee_CustomCheck(o.network_fee)) return new Error(`${path}.network_fee: custom check failed`) - - return null -} - -export type LnurlPayInfoResponse = { - tag: string - callback: string - maxSendable: number - minSendable: number - metadata: string - allowsNostr: boolean - nostrPubkey: string -} -export const LnurlPayInfoResponseOptionalFields: [] = [] -export type LnurlPayInfoResponseOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - callback_CustomCheck?: (v: string) => boolean - maxSendable_CustomCheck?: (v: number) => boolean - minSendable_CustomCheck?: (v: number) => boolean - metadata_CustomCheck?: (v: string) => boolean - allowsNostr_CustomCheck?: (v: boolean) => boolean - nostrPubkey_CustomCheck?: (v: string) => boolean - tag_CustomCheck?: (v: string) => boolean -} -export const LnurlPayInfoResponseValidate = (o?: LnurlPayInfoResponse, opts: LnurlPayInfoResponseOptions = {}, path: string = 'LnurlPayInfoResponse::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.tag !== 'string') return new Error(`${path}.tag: is not a string`) - if (opts.tag_CustomCheck && !opts.tag_CustomCheck(o.tag)) return new Error(`${path}.tag: custom check failed`) - - if (typeof o.callback !== 'string') return new Error(`${path}.callback: is not a string`) - if (opts.callback_CustomCheck && !opts.callback_CustomCheck(o.callback)) return new Error(`${path}.callback: custom check failed`) - - if (typeof o.maxSendable !== 'number') return new Error(`${path}.maxSendable: is not a number`) - if (opts.maxSendable_CustomCheck && !opts.maxSendable_CustomCheck(o.maxSendable)) return new Error(`${path}.maxSendable: custom check failed`) - - if (typeof o.minSendable !== 'number') return new Error(`${path}.minSendable: is not a number`) - if (opts.minSendable_CustomCheck && !opts.minSendable_CustomCheck(o.minSendable)) return new Error(`${path}.minSendable: custom check failed`) - - if (typeof o.metadata !== 'string') return new Error(`${path}.metadata: is not a string`) - if (opts.metadata_CustomCheck && !opts.metadata_CustomCheck(o.metadata)) return new Error(`${path}.metadata: custom check failed`) - - if (typeof o.allowsNostr !== 'boolean') return new Error(`${path}.allowsNostr: is not a boolean`) - if (opts.allowsNostr_CustomCheck && !opts.allowsNostr_CustomCheck(o.allowsNostr)) return new Error(`${path}.allowsNostr: custom check failed`) - - if (typeof o.nostrPubkey !== 'string') return new Error(`${path}.nostrPubkey: is not a string`) - if (opts.nostrPubkey_CustomCheck && !opts.nostrPubkey_CustomCheck(o.nostrPubkey)) return new Error(`${path}.nostrPubkey: custom check failed`) + if (!Array.isArray(o.apps)) return new Error(`${path}.apps: is not an array`) + for (let index = 0; index < o.apps.length; index++) { + const appsErr = AppMetricsValidate(o.apps[index], opts.apps_ItemOptions, `${path}.apps[${index}]`) + if (appsErr !== null) return appsErr + } + if (opts.apps_CustomCheck && !opts.apps_CustomCheck(o.apps)) return new Error(`${path}.apps: custom check failed`) return null } @@ -1810,240 +1833,303 @@ export const ClosureMigrationValidate = (o?: ClosureMigration, opts: ClosureMigr return null } -export type ChainBalanceEvent = { - block_height: number - confirmed_balance: number - unconfirmed_balance: number - total_balance: number +export type PayAppUserInvoiceRequest = { + amount: number + user_identifier: string + invoice: string } -export const ChainBalanceEventOptionalFields: [] = [] -export type ChainBalanceEventOptions = OptionsBaseMessage & { +export const PayAppUserInvoiceRequestOptionalFields: [] = [] +export type PayAppUserInvoiceRequestOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - unconfirmed_balance_CustomCheck?: (v: number) => boolean - total_balance_CustomCheck?: (v: number) => boolean - block_height_CustomCheck?: (v: number) => boolean - confirmed_balance_CustomCheck?: (v: number) => boolean + invoice_CustomCheck?: (v: string) => boolean + amount_CustomCheck?: (v: number) => boolean + user_identifier_CustomCheck?: (v: string) => boolean } -export const ChainBalanceEventValidate = (o?: ChainBalanceEvent, opts: ChainBalanceEventOptions = {}, path: string = 'ChainBalanceEvent::root.'): Error | null => { +export const PayAppUserInvoiceRequestValidate = (o?: PayAppUserInvoiceRequest, opts: PayAppUserInvoiceRequestOptions = {}, path: string = 'PayAppUserInvoiceRequest::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.total_balance !== 'number') return new Error(`${path}.total_balance: is not a number`) - if (opts.total_balance_CustomCheck && !opts.total_balance_CustomCheck(o.total_balance)) return new Error(`${path}.total_balance: custom check failed`) + if (typeof o.user_identifier !== 'string') return new Error(`${path}.user_identifier: is not a string`) + if (opts.user_identifier_CustomCheck && !opts.user_identifier_CustomCheck(o.user_identifier)) return new Error(`${path}.user_identifier: custom check failed`) - if (typeof o.block_height !== 'number') return new Error(`${path}.block_height: is not a number`) - if (opts.block_height_CustomCheck && !opts.block_height_CustomCheck(o.block_height)) return new Error(`${path}.block_height: custom check failed`) + if (typeof o.invoice !== 'string') return new Error(`${path}.invoice: is not a string`) + if (opts.invoice_CustomCheck && !opts.invoice_CustomCheck(o.invoice)) return new Error(`${path}.invoice: custom check failed`) - if (typeof o.confirmed_balance !== 'number') return new Error(`${path}.confirmed_balance: is not a number`) - if (opts.confirmed_balance_CustomCheck && !opts.confirmed_balance_CustomCheck(o.confirmed_balance)) return new Error(`${path}.confirmed_balance: custom check failed`) - - if (typeof o.unconfirmed_balance !== 'number') return new Error(`${path}.unconfirmed_balance: is not a number`) - if (opts.unconfirmed_balance_CustomCheck && !opts.unconfirmed_balance_CustomCheck(o.unconfirmed_balance)) return new Error(`${path}.unconfirmed_balance: custom check failed`) + if (typeof o.amount !== 'number') return new Error(`${path}.amount: is not a number`) + if (opts.amount_CustomCheck && !opts.amount_CustomCheck(o.amount)) return new Error(`${path}.amount: custom check failed`) return null } -export type LndNodeMetrics = { - open_channels: OpenChannel[] - closed_channels: ClosedChannel[] - chain_balance_events: ChainBalanceEvent[] - offline_channels: number - online_channels: number - pending_channels: number - closing_channels: number - channels_balance_events: ChannelBalanceEvent[] - channel_routing: ChannelRouting[] +export type NewAddressResponse = { + address: string } -export const LndNodeMetricsOptionalFields: [] = [] -export type LndNodeMetricsOptions = OptionsBaseMessage & { +export const NewAddressResponseOptionalFields: [] = [] +export type NewAddressResponseOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - channels_balance_events_ItemOptions?: ChannelBalanceEventOptions - channels_balance_events_CustomCheck?: (v: ChannelBalanceEvent[]) => boolean - channel_routing_ItemOptions?: ChannelRoutingOptions - channel_routing_CustomCheck?: (v: ChannelRouting[]) => boolean - pending_channels_CustomCheck?: (v: number) => boolean - closing_channels_CustomCheck?: (v: number) => boolean - open_channels_ItemOptions?: OpenChannelOptions - open_channels_CustomCheck?: (v: OpenChannel[]) => boolean - closed_channels_ItemOptions?: ClosedChannelOptions - closed_channels_CustomCheck?: (v: ClosedChannel[]) => boolean - chain_balance_events_ItemOptions?: ChainBalanceEventOptions - chain_balance_events_CustomCheck?: (v: ChainBalanceEvent[]) => boolean - offline_channels_CustomCheck?: (v: number) => boolean - online_channels_CustomCheck?: (v: number) => boolean + address_CustomCheck?: (v: string) => boolean } -export const LndNodeMetricsValidate = (o?: LndNodeMetrics, opts: LndNodeMetricsOptions = {}, path: string = 'LndNodeMetrics::root.'): Error | null => { +export const NewAddressResponseValidate = (o?: NewAddressResponse, opts: NewAddressResponseOptions = {}, path: string = 'NewAddressResponse::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (!Array.isArray(o.channels_balance_events)) return new Error(`${path}.channels_balance_events: is not an array`) - for (let index = 0; index < o.channels_balance_events.length; index++) { - const channels_balance_eventsErr = ChannelBalanceEventValidate(o.channels_balance_events[index], opts.channels_balance_events_ItemOptions, `${path}.channels_balance_events[${index}]`) - if (channels_balance_eventsErr !== null) return channels_balance_eventsErr - } - if (opts.channels_balance_events_CustomCheck && !opts.channels_balance_events_CustomCheck(o.channels_balance_events)) return new Error(`${path}.channels_balance_events: custom check failed`) + if (typeof o.address !== 'string') return new Error(`${path}.address: is not a string`) + if (opts.address_CustomCheck && !opts.address_CustomCheck(o.address)) return new Error(`${path}.address: custom check failed`) - if (!Array.isArray(o.channel_routing)) return new Error(`${path}.channel_routing: is not an array`) - for (let index = 0; index < o.channel_routing.length; index++) { - const channel_routingErr = ChannelRoutingValidate(o.channel_routing[index], opts.channel_routing_ItemOptions, `${path}.channel_routing[${index}]`) - if (channel_routingErr !== null) return channel_routingErr - } - if (opts.channel_routing_CustomCheck && !opts.channel_routing_CustomCheck(o.channel_routing)) return new Error(`${path}.channel_routing: custom check failed`) + return null +} - if (!Array.isArray(o.open_channels)) return new Error(`${path}.open_channels: is not an array`) - for (let index = 0; index < o.open_channels.length; index++) { - const open_channelsErr = OpenChannelValidate(o.open_channels[index], opts.open_channels_ItemOptions, `${path}.open_channels[${index}]`) - if (open_channelsErr !== null) return open_channelsErr - } - if (opts.open_channels_CustomCheck && !opts.open_channels_CustomCheck(o.open_channels)) return new Error(`${path}.open_channels: custom check failed`) +export type NewInvoiceResponse = { + invoice: string +} +export const NewInvoiceResponseOptionalFields: [] = [] +export type NewInvoiceResponseOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + invoice_CustomCheck?: (v: string) => boolean +} +export const NewInvoiceResponseValidate = (o?: NewInvoiceResponse, opts: NewInvoiceResponseOptions = {}, path: string = 'NewInvoiceResponse::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (!Array.isArray(o.closed_channels)) return new Error(`${path}.closed_channels: is not an array`) - for (let index = 0; index < o.closed_channels.length; index++) { - const closed_channelsErr = ClosedChannelValidate(o.closed_channels[index], opts.closed_channels_ItemOptions, `${path}.closed_channels[${index}]`) - if (closed_channelsErr !== null) return closed_channelsErr - } - if (opts.closed_channels_CustomCheck && !opts.closed_channels_CustomCheck(o.closed_channels)) return new Error(`${path}.closed_channels: custom check failed`) - - if (!Array.isArray(o.chain_balance_events)) return new Error(`${path}.chain_balance_events: is not an array`) - for (let index = 0; index < o.chain_balance_events.length; index++) { - const chain_balance_eventsErr = ChainBalanceEventValidate(o.chain_balance_events[index], opts.chain_balance_events_ItemOptions, `${path}.chain_balance_events[${index}]`) - if (chain_balance_eventsErr !== null) return chain_balance_eventsErr - } - if (opts.chain_balance_events_CustomCheck && !opts.chain_balance_events_CustomCheck(o.chain_balance_events)) return new Error(`${path}.chain_balance_events: custom check failed`) - - if (typeof o.offline_channels !== 'number') return new Error(`${path}.offline_channels: is not a number`) - if (opts.offline_channels_CustomCheck && !opts.offline_channels_CustomCheck(o.offline_channels)) return new Error(`${path}.offline_channels: custom check failed`) - - if (typeof o.online_channels !== 'number') return new Error(`${path}.online_channels: is not a number`) - if (opts.online_channels_CustomCheck && !opts.online_channels_CustomCheck(o.online_channels)) return new Error(`${path}.online_channels: custom check failed`) - - if (typeof o.pending_channels !== 'number') return new Error(`${path}.pending_channels: is not a number`) - if (opts.pending_channels_CustomCheck && !opts.pending_channels_CustomCheck(o.pending_channels)) return new Error(`${path}.pending_channels: custom check failed`) - - if (typeof o.closing_channels !== 'number') return new Error(`${path}.closing_channels: is not a number`) - if (opts.closing_channels_CustomCheck && !opts.closing_channels_CustomCheck(o.closing_channels)) return new Error(`${path}.closing_channels: custom check failed`) + if (typeof o.invoice !== 'string') return new Error(`${path}.invoice: is not a string`) + if (opts.invoice_CustomCheck && !opts.invoice_CustomCheck(o.invoice)) return new Error(`${path}.invoice: custom check failed`) return null } export type UserOperation = { - tx_hash: string - internal: boolean - paidAtUnix: number - inbound: boolean - amount: number - operationId: string - confirmed: boolean type: UserOperationType + amount: number identifier: string - service_fee: number + operationId: string network_fee: number + confirmed: boolean + tx_hash: string + paidAtUnix: number + internal: boolean + service_fee: number + inbound: boolean } export const UserOperationOptionalFields: [] = [] export type UserOperationOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - type_CustomCheck?: (v: UserOperationType) => boolean - identifier_CustomCheck?: (v: string) => boolean - service_fee_CustomCheck?: (v: number) => boolean - network_fee_CustomCheck?: (v: number) => boolean - paidAtUnix_CustomCheck?: (v: number) => boolean - inbound_CustomCheck?: (v: boolean) => boolean amount_CustomCheck?: (v: number) => boolean + identifier_CustomCheck?: (v: string) => boolean operationId_CustomCheck?: (v: string) => boolean + network_fee_CustomCheck?: (v: number) => boolean confirmed_CustomCheck?: (v: boolean) => boolean tx_hash_CustomCheck?: (v: string) => boolean + paidAtUnix_CustomCheck?: (v: number) => boolean + type_CustomCheck?: (v: UserOperationType) => boolean internal_CustomCheck?: (v: boolean) => boolean + inbound_CustomCheck?: (v: boolean) => boolean + service_fee_CustomCheck?: (v: number) => boolean } export const UserOperationValidate = (o?: UserOperation, opts: UserOperationOptions = {}, path: string = 'UserOperation::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.internal !== 'boolean') return new Error(`${path}.internal: is not a boolean`) - if (opts.internal_CustomCheck && !opts.internal_CustomCheck(o.internal)) return new Error(`${path}.internal: custom check failed`) - - if (typeof o.paidAtUnix !== 'number') return new Error(`${path}.paidAtUnix: is not a number`) - if (opts.paidAtUnix_CustomCheck && !opts.paidAtUnix_CustomCheck(o.paidAtUnix)) return new Error(`${path}.paidAtUnix: custom check failed`) - if (typeof o.inbound !== 'boolean') return new Error(`${path}.inbound: is not a boolean`) if (opts.inbound_CustomCheck && !opts.inbound_CustomCheck(o.inbound)) return new Error(`${path}.inbound: custom check failed`) - if (typeof o.amount !== 'number') return new Error(`${path}.amount: is not a number`) - if (opts.amount_CustomCheck && !opts.amount_CustomCheck(o.amount)) return new Error(`${path}.amount: custom check failed`) - - if (typeof o.operationId !== 'string') return new Error(`${path}.operationId: is not a string`) - if (opts.operationId_CustomCheck && !opts.operationId_CustomCheck(o.operationId)) return new Error(`${path}.operationId: custom check failed`) - - if (typeof o.confirmed !== 'boolean') return new Error(`${path}.confirmed: is not a boolean`) - if (opts.confirmed_CustomCheck && !opts.confirmed_CustomCheck(o.confirmed)) return new Error(`${path}.confirmed: custom check failed`) - - if (typeof o.tx_hash !== 'string') return new Error(`${path}.tx_hash: is not a string`) - if (opts.tx_hash_CustomCheck && !opts.tx_hash_CustomCheck(o.tx_hash)) return new Error(`${path}.tx_hash: custom check failed`) - - if (!enumCheckUserOperationType(o.type)) return new Error(`${path}.type: is not a valid UserOperationType`) - if (opts.type_CustomCheck && !opts.type_CustomCheck(o.type)) return new Error(`${path}.type: custom check failed`) - - if (typeof o.identifier !== 'string') return new Error(`${path}.identifier: is not a string`) - if (opts.identifier_CustomCheck && !opts.identifier_CustomCheck(o.identifier)) return new Error(`${path}.identifier: custom check failed`) - if (typeof o.service_fee !== 'number') return new Error(`${path}.service_fee: is not a number`) if (opts.service_fee_CustomCheck && !opts.service_fee_CustomCheck(o.service_fee)) return new Error(`${path}.service_fee: custom check failed`) if (typeof o.network_fee !== 'number') return new Error(`${path}.network_fee: is not a number`) if (opts.network_fee_CustomCheck && !opts.network_fee_CustomCheck(o.network_fee)) return new Error(`${path}.network_fee: custom check failed`) + if (typeof o.confirmed !== 'boolean') return new Error(`${path}.confirmed: is not a boolean`) + if (opts.confirmed_CustomCheck && !opts.confirmed_CustomCheck(o.confirmed)) return new Error(`${path}.confirmed: custom check failed`) + + if (typeof o.tx_hash !== 'string') return new Error(`${path}.tx_hash: is not a string`) + if (opts.tx_hash_CustomCheck && !opts.tx_hash_CustomCheck(o.tx_hash)) return new Error(`${path}.tx_hash: custom check failed`) + + if (typeof o.paidAtUnix !== 'number') return new Error(`${path}.paidAtUnix: is not a number`) + if (opts.paidAtUnix_CustomCheck && !opts.paidAtUnix_CustomCheck(o.paidAtUnix)) return new Error(`${path}.paidAtUnix: custom check failed`) + + if (!enumCheckUserOperationType(o.type)) return new Error(`${path}.type: is not a valid UserOperationType`) + if (opts.type_CustomCheck && !opts.type_CustomCheck(o.type)) return new Error(`${path}.type: custom check failed`) + + if (typeof o.amount !== 'number') return new Error(`${path}.amount: is not a number`) + if (opts.amount_CustomCheck && !opts.amount_CustomCheck(o.amount)) return new Error(`${path}.amount: custom check failed`) + + if (typeof o.identifier !== 'string') return new Error(`${path}.identifier: is not a string`) + if (opts.identifier_CustomCheck && !opts.identifier_CustomCheck(o.identifier)) return new Error(`${path}.identifier: custom check failed`) + + if (typeof o.operationId !== 'string') return new Error(`${path}.operationId: is not a string`) + if (opts.operationId_CustomCheck && !opts.operationId_CustomCheck(o.operationId)) return new Error(`${path}.operationId: custom check failed`) + + if (typeof o.internal !== 'boolean') return new Error(`${path}.internal: is not a boolean`) + if (opts.internal_CustomCheck && !opts.internal_CustomCheck(o.internal)) return new Error(`${path}.internal: custom check failed`) + return null } -export type ChannelBalanceEvent = { - channel_id: string - local_balance_sats: number - remote_balance_sats: number - block_height: number +export type UseInviteLinkRequest = { + invite_token: string } -export const ChannelBalanceEventOptionalFields: [] = [] -export type ChannelBalanceEventOptions = OptionsBaseMessage & { +export const UseInviteLinkRequestOptionalFields: [] = [] +export type UseInviteLinkRequestOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - block_height_CustomCheck?: (v: number) => boolean - channel_id_CustomCheck?: (v: string) => boolean - local_balance_sats_CustomCheck?: (v: number) => boolean - remote_balance_sats_CustomCheck?: (v: number) => boolean + invite_token_CustomCheck?: (v: string) => boolean } -export const ChannelBalanceEventValidate = (o?: ChannelBalanceEvent, opts: ChannelBalanceEventOptions = {}, path: string = 'ChannelBalanceEvent::root.'): Error | null => { +export const UseInviteLinkRequestValidate = (o?: UseInviteLinkRequest, opts: UseInviteLinkRequestOptions = {}, path: string = 'UseInviteLinkRequest::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.remote_balance_sats !== 'number') return new Error(`${path}.remote_balance_sats: is not a number`) - if (opts.remote_balance_sats_CustomCheck && !opts.remote_balance_sats_CustomCheck(o.remote_balance_sats)) return new Error(`${path}.remote_balance_sats: custom check failed`) + if (typeof o.invite_token !== 'string') return new Error(`${path}.invite_token: is not a string`) + if (opts.invite_token_CustomCheck && !opts.invite_token_CustomCheck(o.invite_token)) return new Error(`${path}.invite_token: custom check failed`) - if (typeof o.block_height !== 'number') return new Error(`${path}.block_height: is not a number`) - if (opts.block_height_CustomCheck && !opts.block_height_CustomCheck(o.block_height)) return new Error(`${path}.block_height: custom check failed`) + return null +} - if (typeof o.channel_id !== 'string') return new Error(`${path}.channel_id: is not a string`) - if (opts.channel_id_CustomCheck && !opts.channel_id_CustomCheck(o.channel_id)) return new Error(`${path}.channel_id: custom check failed`) +export type AuthApp = { + app: Application + auth_token: string +} +export const AuthAppOptionalFields: [] = [] +export type AuthAppOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + auth_token_CustomCheck?: (v: string) => boolean + app_Options?: ApplicationOptions +} +export const AuthAppValidate = (o?: AuthApp, opts: AuthAppOptions = {}, path: string = 'AuthApp::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.local_balance_sats !== 'number') return new Error(`${path}.local_balance_sats: is not a number`) - if (opts.local_balance_sats_CustomCheck && !opts.local_balance_sats_CustomCheck(o.local_balance_sats)) return new Error(`${path}.local_balance_sats: custom check failed`) + if (typeof o.auth_token !== 'string') return new Error(`${path}.auth_token: is not a string`) + if (opts.auth_token_CustomCheck && !opts.auth_token_CustomCheck(o.auth_token)) return new Error(`${path}.auth_token: custom check failed`) + + const appErr = ApplicationValidate(o.app, opts.app_Options, `${path}.app`) + if (appErr !== null) return appErr + + + return null +} + +export type AddAppInvoiceRequest = { + payer_identifier: string + http_callback_url: string + invoice_req: NewInvoiceRequest +} +export const AddAppInvoiceRequestOptionalFields: [] = [] +export type AddAppInvoiceRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + payer_identifier_CustomCheck?: (v: string) => boolean + http_callback_url_CustomCheck?: (v: string) => boolean + invoice_req_Options?: NewInvoiceRequestOptions +} +export const AddAppInvoiceRequestValidate = (o?: AddAppInvoiceRequest, opts: AddAppInvoiceRequestOptions = {}, path: string = 'AddAppInvoiceRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.http_callback_url !== 'string') return new Error(`${path}.http_callback_url: is not a string`) + if (opts.http_callback_url_CustomCheck && !opts.http_callback_url_CustomCheck(o.http_callback_url)) return new Error(`${path}.http_callback_url: custom check failed`) + + const invoice_reqErr = NewInvoiceRequestValidate(o.invoice_req, opts.invoice_req_Options, `${path}.invoice_req`) + if (invoice_reqErr !== null) return invoice_reqErr + + + if (typeof o.payer_identifier !== 'string') return new Error(`${path}.payer_identifier: is not a string`) + if (opts.payer_identifier_CustomCheck && !opts.payer_identifier_CustomCheck(o.payer_identifier)) return new Error(`${path}.payer_identifier: custom check failed`) + + return null +} + +export type AuthAppRequest = { + name: string + allow_user_creation?: boolean +} +export type AuthAppRequestOptionalField = 'allow_user_creation' +export const AuthAppRequestOptionalFields: AuthAppRequestOptionalField[] = ['allow_user_creation'] +export type AuthAppRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: AuthAppRequestOptionalField[] + name_CustomCheck?: (v: string) => boolean + allow_user_creation_CustomCheck?: (v?: boolean) => boolean +} +export const AuthAppRequestValidate = (o?: AuthAppRequest, opts: AuthAppRequestOptions = {}, path: string = 'AuthAppRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.name !== 'string') return new Error(`${path}.name: is not a string`) + if (opts.name_CustomCheck && !opts.name_CustomCheck(o.name)) return new Error(`${path}.name: custom check failed`) + + if ((o.allow_user_creation || opts.allOptionalsAreSet || opts.checkOptionalsAreSet?.includes('allow_user_creation')) && typeof o.allow_user_creation !== 'boolean') return new Error(`${path}.allow_user_creation: is not a boolean`) + if (opts.allow_user_creation_CustomCheck && !opts.allow_user_creation_CustomCheck(o.allow_user_creation)) return new Error(`${path}.allow_user_creation: custom check failed`) + + return null +} + +export type Application = { + npub: string + name: string + id: string + balance: number +} +export const ApplicationOptionalFields: [] = [] +export type ApplicationOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + name_CustomCheck?: (v: string) => boolean + id_CustomCheck?: (v: string) => boolean + balance_CustomCheck?: (v: number) => boolean + npub_CustomCheck?: (v: string) => boolean +} +export const ApplicationValidate = (o?: Application, opts: ApplicationOptions = {}, path: string = 'Application::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.name !== 'string') return new Error(`${path}.name: is not a string`) + if (opts.name_CustomCheck && !opts.name_CustomCheck(o.name)) return new Error(`${path}.name: custom check failed`) + + if (typeof o.id !== 'string') return new Error(`${path}.id: is not a string`) + if (opts.id_CustomCheck && !opts.id_CustomCheck(o.id)) return new Error(`${path}.id: custom check failed`) + + if (typeof o.balance !== 'number') return new Error(`${path}.balance: is not a number`) + if (opts.balance_CustomCheck && !opts.balance_CustomCheck(o.balance)) return new Error(`${path}.balance: custom check failed`) + + if (typeof o.npub !== 'string') return new Error(`${path}.npub: is not a string`) + if (opts.npub_CustomCheck && !opts.npub_CustomCheck(o.npub)) return new Error(`${path}.npub: custom check failed`) + + return null +} + +export type DecodeInvoiceRequest = { + invoice: string +} +export const DecodeInvoiceRequestOptionalFields: [] = [] +export type DecodeInvoiceRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + invoice_CustomCheck?: (v: string) => boolean +} +export const DecodeInvoiceRequestValidate = (o?: DecodeInvoiceRequest, opts: DecodeInvoiceRequestOptions = {}, path: string = 'DecodeInvoiceRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.invoice !== 'string') return new Error(`${path}.invoice: is not a string`) + if (opts.invoice_CustomCheck && !opts.invoice_CustomCheck(o.invoice)) return new Error(`${path}.invoice: custom check failed`) return null } export type OpenChannel = { - active: boolean lifetime: number local_balance: number remote_balance: number + label: string channel_id: string capacity: number + active: boolean } export const OpenChannelOptionalFields: [] = [] export type OpenChannelOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] + capacity_CustomCheck?: (v: number) => boolean active_CustomCheck?: (v: boolean) => boolean lifetime_CustomCheck?: (v: number) => boolean local_balance_CustomCheck?: (v: number) => boolean remote_balance_CustomCheck?: (v: number) => boolean + label_CustomCheck?: (v: string) => boolean channel_id_CustomCheck?: (v: string) => boolean - capacity_CustomCheck?: (v: number) => boolean } export const OpenChannelValidate = (o?: OpenChannel, opts: OpenChannelOptions = {}, path: string = 'OpenChannel::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') @@ -2067,125 +2153,243 @@ export const OpenChannelValidate = (o?: OpenChannel, opts: OpenChannelOptions = if (typeof o.remote_balance !== 'number') return new Error(`${path}.remote_balance: is not a number`) if (opts.remote_balance_CustomCheck && !opts.remote_balance_CustomCheck(o.remote_balance)) return new Error(`${path}.remote_balance: custom check failed`) + if (typeof o.label !== 'string') return new Error(`${path}.label: is not a string`) + if (opts.label_CustomCheck && !opts.label_CustomCheck(o.label)) return new Error(`${path}.label: custom check failed`) + return null } -export type BanUserResponse = { - balance_sats: number - banned_app_users: BannedAppUser[] +export type ChannelRouting = { + missed_forward_fee_as_output: number + events_number: number + send_errors: number + receive_errors: number + forward_errors_as_output: number + missed_forward_fee_as_input: number + forward_fee_as_input: number + forward_fee_as_output: number + channel_id: string + forward_errors_as_input: number } -export const BanUserResponseOptionalFields: [] = [] -export type BanUserResponseOptions = OptionsBaseMessage & { +export const ChannelRoutingOptionalFields: [] = [] +export type ChannelRoutingOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - balance_sats_CustomCheck?: (v: number) => boolean - banned_app_users_ItemOptions?: BannedAppUserOptions - banned_app_users_CustomCheck?: (v: BannedAppUser[]) => boolean + send_errors_CustomCheck?: (v: number) => boolean + receive_errors_CustomCheck?: (v: number) => boolean + missed_forward_fee_as_output_CustomCheck?: (v: number) => boolean + events_number_CustomCheck?: (v: number) => boolean + channel_id_CustomCheck?: (v: string) => boolean + forward_errors_as_input_CustomCheck?: (v: number) => boolean + forward_errors_as_output_CustomCheck?: (v: number) => boolean + missed_forward_fee_as_input_CustomCheck?: (v: number) => boolean + forward_fee_as_input_CustomCheck?: (v: number) => boolean + forward_fee_as_output_CustomCheck?: (v: number) => boolean } -export const BanUserResponseValidate = (o?: BanUserResponse, opts: BanUserResponseOptions = {}, path: string = 'BanUserResponse::root.'): Error | null => { +export const ChannelRoutingValidate = (o?: ChannelRouting, opts: ChannelRoutingOptions = {}, path: string = 'ChannelRouting::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.balance_sats !== 'number') return new Error(`${path}.balance_sats: is not a number`) - if (opts.balance_sats_CustomCheck && !opts.balance_sats_CustomCheck(o.balance_sats)) return new Error(`${path}.balance_sats: custom check failed`) + if (typeof o.forward_fee_as_output !== 'number') return new Error(`${path}.forward_fee_as_output: is not a number`) + if (opts.forward_fee_as_output_CustomCheck && !opts.forward_fee_as_output_CustomCheck(o.forward_fee_as_output)) return new Error(`${path}.forward_fee_as_output: custom check failed`) - if (!Array.isArray(o.banned_app_users)) return new Error(`${path}.banned_app_users: is not an array`) - for (let index = 0; index < o.banned_app_users.length; index++) { - const banned_app_usersErr = BannedAppUserValidate(o.banned_app_users[index], opts.banned_app_users_ItemOptions, `${path}.banned_app_users[${index}]`) - if (banned_app_usersErr !== null) return banned_app_usersErr + if (typeof o.channel_id !== 'string') return new Error(`${path}.channel_id: is not a string`) + if (opts.channel_id_CustomCheck && !opts.channel_id_CustomCheck(o.channel_id)) return new Error(`${path}.channel_id: custom check failed`) + + if (typeof o.forward_errors_as_input !== 'number') return new Error(`${path}.forward_errors_as_input: is not a number`) + if (opts.forward_errors_as_input_CustomCheck && !opts.forward_errors_as_input_CustomCheck(o.forward_errors_as_input)) return new Error(`${path}.forward_errors_as_input: custom check failed`) + + if (typeof o.forward_errors_as_output !== 'number') return new Error(`${path}.forward_errors_as_output: is not a number`) + if (opts.forward_errors_as_output_CustomCheck && !opts.forward_errors_as_output_CustomCheck(o.forward_errors_as_output)) return new Error(`${path}.forward_errors_as_output: custom check failed`) + + if (typeof o.missed_forward_fee_as_input !== 'number') return new Error(`${path}.missed_forward_fee_as_input: is not a number`) + if (opts.missed_forward_fee_as_input_CustomCheck && !opts.missed_forward_fee_as_input_CustomCheck(o.missed_forward_fee_as_input)) return new Error(`${path}.missed_forward_fee_as_input: custom check failed`) + + if (typeof o.forward_fee_as_input !== 'number') return new Error(`${path}.forward_fee_as_input: is not a number`) + if (opts.forward_fee_as_input_CustomCheck && !opts.forward_fee_as_input_CustomCheck(o.forward_fee_as_input)) return new Error(`${path}.forward_fee_as_input: custom check failed`) + + if (typeof o.send_errors !== 'number') return new Error(`${path}.send_errors: is not a number`) + if (opts.send_errors_CustomCheck && !opts.send_errors_CustomCheck(o.send_errors)) return new Error(`${path}.send_errors: custom check failed`) + + if (typeof o.receive_errors !== 'number') return new Error(`${path}.receive_errors: is not a number`) + if (opts.receive_errors_CustomCheck && !opts.receive_errors_CustomCheck(o.receive_errors)) return new Error(`${path}.receive_errors: custom check failed`) + + if (typeof o.missed_forward_fee_as_output !== 'number') return new Error(`${path}.missed_forward_fee_as_output: is not a number`) + if (opts.missed_forward_fee_as_output_CustomCheck && !opts.missed_forward_fee_as_output_CustomCheck(o.missed_forward_fee_as_output)) return new Error(`${path}.missed_forward_fee_as_output: custom check failed`) + + if (typeof o.events_number !== 'number') return new Error(`${path}.events_number: is not a number`) + if (opts.events_number_CustomCheck && !opts.events_number_CustomCheck(o.events_number)) return new Error(`${path}.events_number: custom check failed`) + + return null +} + +export type ChainBalanceEvent = { + block_height: number + confirmed_balance: number + unconfirmed_balance: number + total_balance: number +} +export const ChainBalanceEventOptionalFields: [] = [] +export type ChainBalanceEventOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + confirmed_balance_CustomCheck?: (v: number) => boolean + unconfirmed_balance_CustomCheck?: (v: number) => boolean + total_balance_CustomCheck?: (v: number) => boolean + block_height_CustomCheck?: (v: number) => boolean +} +export const ChainBalanceEventValidate = (o?: ChainBalanceEvent, opts: ChainBalanceEventOptions = {}, path: string = 'ChainBalanceEvent::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.block_height !== 'number') return new Error(`${path}.block_height: is not a number`) + if (opts.block_height_CustomCheck && !opts.block_height_CustomCheck(o.block_height)) return new Error(`${path}.block_height: custom check failed`) + + if (typeof o.confirmed_balance !== 'number') return new Error(`${path}.confirmed_balance: is not a number`) + if (opts.confirmed_balance_CustomCheck && !opts.confirmed_balance_CustomCheck(o.confirmed_balance)) return new Error(`${path}.confirmed_balance: custom check failed`) + + if (typeof o.unconfirmed_balance !== 'number') return new Error(`${path}.unconfirmed_balance: is not a number`) + if (opts.unconfirmed_balance_CustomCheck && !opts.unconfirmed_balance_CustomCheck(o.unconfirmed_balance)) return new Error(`${path}.unconfirmed_balance: custom check failed`) + + if (typeof o.total_balance !== 'number') return new Error(`${path}.total_balance: is not a number`) + if (opts.total_balance_CustomCheck && !opts.total_balance_CustomCheck(o.total_balance)) return new Error(`${path}.total_balance: custom check failed`) + + return null +} + +export type GetPaymentStateRequest = { + invoice: string +} +export const GetPaymentStateRequestOptionalFields: [] = [] +export type GetPaymentStateRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + invoice_CustomCheck?: (v: string) => boolean +} +export const GetPaymentStateRequestValidate = (o?: GetPaymentStateRequest, opts: GetPaymentStateRequestOptions = {}, path: string = 'GetPaymentStateRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.invoice !== 'string') return new Error(`${path}.invoice: is not a string`) + if (opts.invoice_CustomCheck && !opts.invoice_CustomCheck(o.invoice)) return new Error(`${path}.invoice: custom check failed`) + + return null +} + +export type EncryptionExchangeRequest = { + deviceId: string + publicKey: string +} +export const EncryptionExchangeRequestOptionalFields: [] = [] +export type EncryptionExchangeRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + deviceId_CustomCheck?: (v: string) => boolean + publicKey_CustomCheck?: (v: string) => boolean +} +export const EncryptionExchangeRequestValidate = (o?: EncryptionExchangeRequest, opts: EncryptionExchangeRequestOptions = {}, path: string = 'EncryptionExchangeRequest::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.deviceId !== 'string') return new Error(`${path}.deviceId: is not a string`) + if (opts.deviceId_CustomCheck && !opts.deviceId_CustomCheck(o.deviceId)) return new Error(`${path}.deviceId: custom check failed`) + + if (typeof o.publicKey !== 'string') return new Error(`${path}.publicKey: is not a string`) + if (opts.publicKey_CustomCheck && !opts.publicKey_CustomCheck(o.publicKey)) return new Error(`${path}.publicKey: custom check failed`) + + return null +} + +export type ChannelBalanceEvent = { + block_height: number + channel_id: string + local_balance_sats: number + remote_balance_sats: number +} +export const ChannelBalanceEventOptionalFields: [] = [] +export type ChannelBalanceEventOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + remote_balance_sats_CustomCheck?: (v: number) => boolean + block_height_CustomCheck?: (v: number) => boolean + channel_id_CustomCheck?: (v: string) => boolean + local_balance_sats_CustomCheck?: (v: number) => boolean +} +export const ChannelBalanceEventValidate = (o?: ChannelBalanceEvent, opts: ChannelBalanceEventOptions = {}, path: string = 'ChannelBalanceEvent::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.block_height !== 'number') return new Error(`${path}.block_height: is not a number`) + if (opts.block_height_CustomCheck && !opts.block_height_CustomCheck(o.block_height)) return new Error(`${path}.block_height: custom check failed`) + + if (typeof o.channel_id !== 'string') return new Error(`${path}.channel_id: is not a string`) + if (opts.channel_id_CustomCheck && !opts.channel_id_CustomCheck(o.channel_id)) return new Error(`${path}.channel_id: custom check failed`) + + if (typeof o.local_balance_sats !== 'number') return new Error(`${path}.local_balance_sats: is not a number`) + if (opts.local_balance_sats_CustomCheck && !opts.local_balance_sats_CustomCheck(o.local_balance_sats)) return new Error(`${path}.local_balance_sats: custom check failed`) + + if (typeof o.remote_balance_sats !== 'number') return new Error(`${path}.remote_balance_sats: is not a number`) + if (opts.remote_balance_sats_CustomCheck && !opts.remote_balance_sats_CustomCheck(o.remote_balance_sats)) return new Error(`${path}.remote_balance_sats: custom check failed`) + + return null +} + +export type HandleLnurlPayResponse = { + pr: string + routes: Empty[] +} +export const HandleLnurlPayResponseOptionalFields: [] = [] +export type HandleLnurlPayResponseOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + pr_CustomCheck?: (v: string) => boolean + routes_ItemOptions?: EmptyOptions + routes_CustomCheck?: (v: Empty[]) => boolean +} +export const HandleLnurlPayResponseValidate = (o?: HandleLnurlPayResponse, opts: HandleLnurlPayResponseOptions = {}, path: string = 'HandleLnurlPayResponse::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (!Array.isArray(o.routes)) return new Error(`${path}.routes: is not an array`) + for (let index = 0; index < o.routes.length; index++) { + const routesErr = EmptyValidate(o.routes[index], opts.routes_ItemOptions, `${path}.routes[${index}]`) + if (routesErr !== null) return routesErr } - if (opts.banned_app_users_CustomCheck && !opts.banned_app_users_CustomCheck(o.banned_app_users)) return new Error(`${path}.banned_app_users: custom check failed`) + if (opts.routes_CustomCheck && !opts.routes_CustomCheck(o.routes)) return new Error(`${path}.routes: custom check failed`) + + if (typeof o.pr !== 'string') return new Error(`${path}.pr: is not a string`) + if (opts.pr_CustomCheck && !opts.pr_CustomCheck(o.pr)) return new Error(`${path}.pr: custom check failed`) return null } -export type AppUser = { - identifier: string - info: UserInfo - max_withdrawable: number +export type LiveUserOperation = { + operation: UserOperation } -export const AppUserOptionalFields: [] = [] -export type AppUserOptions = OptionsBaseMessage & { +export const LiveUserOperationOptionalFields: [] = [] +export type LiveUserOperationOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - identifier_CustomCheck?: (v: string) => boolean - info_Options?: UserInfoOptions - max_withdrawable_CustomCheck?: (v: number) => boolean + operation_Options?: UserOperationOptions } -export const AppUserValidate = (o?: AppUser, opts: AppUserOptions = {}, path: string = 'AppUser::root.'): Error | null => { +export const LiveUserOperationValidate = (o?: LiveUserOperation, opts: LiveUserOperationOptions = {}, path: string = 'LiveUserOperation::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.identifier !== 'string') return new Error(`${path}.identifier: is not a string`) - if (opts.identifier_CustomCheck && !opts.identifier_CustomCheck(o.identifier)) return new Error(`${path}.identifier: custom check failed`) - - const infoErr = UserInfoValidate(o.info, opts.info_Options, `${path}.info`) - if (infoErr !== null) return infoErr + const operationErr = UserOperationValidate(o.operation, opts.operation_Options, `${path}.operation`) + if (operationErr !== null) return operationErr - if (typeof o.max_withdrawable !== 'number') return new Error(`${path}.max_withdrawable: is not a number`) - if (opts.max_withdrawable_CustomCheck && !opts.max_withdrawable_CustomCheck(o.max_withdrawable)) return new Error(`${path}.max_withdrawable: custom check failed`) - return null } -export type PaymentState = { - amount: number - service_fee: number - network_fee: number - paid_at_unix: number +export type RequestNPubLinkingTokenRequest = { + user_identifier: string } -export const PaymentStateOptionalFields: [] = [] -export type PaymentStateOptions = OptionsBaseMessage & { +export const RequestNPubLinkingTokenRequestOptionalFields: [] = [] +export type RequestNPubLinkingTokenRequestOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - paid_at_unix_CustomCheck?: (v: number) => boolean - amount_CustomCheck?: (v: number) => boolean - service_fee_CustomCheck?: (v: number) => boolean - network_fee_CustomCheck?: (v: number) => boolean + user_identifier_CustomCheck?: (v: string) => boolean } -export const PaymentStateValidate = (o?: PaymentState, opts: PaymentStateOptions = {}, path: string = 'PaymentState::root.'): Error | null => { +export const RequestNPubLinkingTokenRequestValidate = (o?: RequestNPubLinkingTokenRequest, opts: RequestNPubLinkingTokenRequestOptions = {}, path: string = 'RequestNPubLinkingTokenRequest::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.paid_at_unix !== 'number') return new Error(`${path}.paid_at_unix: is not a number`) - if (opts.paid_at_unix_CustomCheck && !opts.paid_at_unix_CustomCheck(o.paid_at_unix)) return new Error(`${path}.paid_at_unix: custom check failed`) - - if (typeof o.amount !== 'number') return new Error(`${path}.amount: is not a number`) - if (opts.amount_CustomCheck && !opts.amount_CustomCheck(o.amount)) return new Error(`${path}.amount: custom check failed`) - - if (typeof o.service_fee !== 'number') return new Error(`${path}.service_fee: is not a number`) - if (opts.service_fee_CustomCheck && !opts.service_fee_CustomCheck(o.service_fee)) return new Error(`${path}.service_fee: custom check failed`) - - if (typeof o.network_fee !== 'number') return new Error(`${path}.network_fee: is not a number`) - if (opts.network_fee_CustomCheck && !opts.network_fee_CustomCheck(o.network_fee)) return new Error(`${path}.network_fee: custom check failed`) - - return null -} - -export type MigrationUpdate = { - closure?: ClosureMigration - relays?: RelaysMigration -} -export type MigrationUpdateOptionalField = 'closure' | 'relays' -export const MigrationUpdateOptionalFields: MigrationUpdateOptionalField[] = ['closure', 'relays'] -export type MigrationUpdateOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: MigrationUpdateOptionalField[] - closure_Options?: ClosureMigrationOptions - relays_Options?: RelaysMigrationOptions -} -export const MigrationUpdateValidate = (o?: MigrationUpdate, opts: MigrationUpdateOptions = {}, path: string = 'MigrationUpdate::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.relays === 'object' || opts.allOptionalsAreSet || opts.checkOptionalsAreSet?.includes('relays')) { - const relaysErr = RelaysMigrationValidate(o.relays, opts.relays_Options, `${path}.relays`) - if (relaysErr !== null) return relaysErr - } - - - if (typeof o.closure === 'object' || opts.allOptionalsAreSet || opts.checkOptionalsAreSet?.includes('closure')) { - const closureErr = ClosureMigrationValidate(o.closure, opts.closure_Options, `${path}.closure`) - if (closureErr !== null) return closureErr - } - + if (typeof o.user_identifier !== 'string') return new Error(`${path}.user_identifier: is not a string`) + if (opts.user_identifier_CustomCheck && !opts.user_identifier_CustomCheck(o.user_identifier)) return new Error(`${path}.user_identifier: custom check failed`) return null } @@ -2213,81 +2417,188 @@ export const HttpCredsValidate = (o?: HttpCreds, opts: HttpCredsOptions = {}, pa return null } -export type GetInviteTokenStateRequest = { - invite_token: string +export type AppsMetricsRequest = { + from_unix?: number + to_unix?: number + include_operations?: boolean } -export const GetInviteTokenStateRequestOptionalFields: [] = [] -export type GetInviteTokenStateRequestOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - invite_token_CustomCheck?: (v: string) => boolean +export type AppsMetricsRequestOptionalField = 'from_unix' | 'to_unix' | 'include_operations' +export const AppsMetricsRequestOptionalFields: AppsMetricsRequestOptionalField[] = ['from_unix', 'to_unix', 'include_operations'] +export type AppsMetricsRequestOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: AppsMetricsRequestOptionalField[] + from_unix_CustomCheck?: (v?: number) => boolean + to_unix_CustomCheck?: (v?: number) => boolean + include_operations_CustomCheck?: (v?: boolean) => boolean } -export const GetInviteTokenStateRequestValidate = (o?: GetInviteTokenStateRequest, opts: GetInviteTokenStateRequestOptions = {}, path: string = 'GetInviteTokenStateRequest::root.'): Error | null => { +export const AppsMetricsRequestValidate = (o?: AppsMetricsRequest, opts: AppsMetricsRequestOptions = {}, path: string = 'AppsMetricsRequest::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.invite_token !== 'string') return new Error(`${path}.invite_token: is not a string`) - if (opts.invite_token_CustomCheck && !opts.invite_token_CustomCheck(o.invite_token)) return new Error(`${path}.invite_token: custom check failed`) + if ((o.from_unix || opts.allOptionalsAreSet || opts.checkOptionalsAreSet?.includes('from_unix')) && typeof o.from_unix !== 'number') return new Error(`${path}.from_unix: is not a number`) + if (opts.from_unix_CustomCheck && !opts.from_unix_CustomCheck(o.from_unix)) return new Error(`${path}.from_unix: custom check failed`) + + if ((o.to_unix || opts.allOptionalsAreSet || opts.checkOptionalsAreSet?.includes('to_unix')) && typeof o.to_unix !== 'number') return new Error(`${path}.to_unix: is not a number`) + if (opts.to_unix_CustomCheck && !opts.to_unix_CustomCheck(o.to_unix)) return new Error(`${path}.to_unix: custom check failed`) + + if ((o.include_operations || opts.allOptionalsAreSet || opts.checkOptionalsAreSet?.includes('include_operations')) && typeof o.include_operations !== 'boolean') return new Error(`${path}.include_operations: is not a boolean`) + if (opts.include_operations_CustomCheck && !opts.include_operations_CustomCheck(o.include_operations)) return new Error(`${path}.include_operations: custom check failed`) return null } -export type ClosedChannel = { - closed_height: number - channel_id: string - capacity: number +export type LnurlWithdrawInfoResponse = { + balanceCheck: string + payLink: string + tag: string + callback: string + k1: string + defaultDescription: string + minWithdrawable: number + maxWithdrawable: number } -export const ClosedChannelOptionalFields: [] = [] -export type ClosedChannelOptions = OptionsBaseMessage & { +export const LnurlWithdrawInfoResponseOptionalFields: [] = [] +export type LnurlWithdrawInfoResponseOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - channel_id_CustomCheck?: (v: string) => boolean - capacity_CustomCheck?: (v: number) => boolean - closed_height_CustomCheck?: (v: number) => boolean + tag_CustomCheck?: (v: string) => boolean + callback_CustomCheck?: (v: string) => boolean + k1_CustomCheck?: (v: string) => boolean + defaultDescription_CustomCheck?: (v: string) => boolean + minWithdrawable_CustomCheck?: (v: number) => boolean + maxWithdrawable_CustomCheck?: (v: number) => boolean + balanceCheck_CustomCheck?: (v: string) => boolean + payLink_CustomCheck?: (v: string) => boolean } -export const ClosedChannelValidate = (o?: ClosedChannel, opts: ClosedChannelOptions = {}, path: string = 'ClosedChannel::root.'): Error | null => { +export const LnurlWithdrawInfoResponseValidate = (o?: LnurlWithdrawInfoResponse, opts: LnurlWithdrawInfoResponseOptions = {}, path: string = 'LnurlWithdrawInfoResponse::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.channel_id !== 'string') return new Error(`${path}.channel_id: is not a string`) - if (opts.channel_id_CustomCheck && !opts.channel_id_CustomCheck(o.channel_id)) return new Error(`${path}.channel_id: custom check failed`) + if (typeof o.maxWithdrawable !== 'number') return new Error(`${path}.maxWithdrawable: is not a number`) + if (opts.maxWithdrawable_CustomCheck && !opts.maxWithdrawable_CustomCheck(o.maxWithdrawable)) return new Error(`${path}.maxWithdrawable: custom check failed`) - if (typeof o.capacity !== 'number') return new Error(`${path}.capacity: is not a number`) - if (opts.capacity_CustomCheck && !opts.capacity_CustomCheck(o.capacity)) return new Error(`${path}.capacity: custom check failed`) + if (typeof o.balanceCheck !== 'string') return new Error(`${path}.balanceCheck: is not a string`) + if (opts.balanceCheck_CustomCheck && !opts.balanceCheck_CustomCheck(o.balanceCheck)) return new Error(`${path}.balanceCheck: custom check failed`) - if (typeof o.closed_height !== 'number') return new Error(`${path}.closed_height: is not a number`) - if (opts.closed_height_CustomCheck && !opts.closed_height_CustomCheck(o.closed_height)) return new Error(`${path}.closed_height: custom check failed`) + if (typeof o.payLink !== 'string') return new Error(`${path}.payLink: is not a string`) + if (opts.payLink_CustomCheck && !opts.payLink_CustomCheck(o.payLink)) return new Error(`${path}.payLink: custom check failed`) + + if (typeof o.tag !== 'string') return new Error(`${path}.tag: is not a string`) + if (opts.tag_CustomCheck && !opts.tag_CustomCheck(o.tag)) return new Error(`${path}.tag: custom check failed`) + + if (typeof o.callback !== 'string') return new Error(`${path}.callback: is not a string`) + if (opts.callback_CustomCheck && !opts.callback_CustomCheck(o.callback)) return new Error(`${path}.callback: custom check failed`) + + if (typeof o.k1 !== 'string') return new Error(`${path}.k1: is not a string`) + if (opts.k1_CustomCheck && !opts.k1_CustomCheck(o.k1)) return new Error(`${path}.k1: custom check failed`) + + if (typeof o.defaultDescription !== 'string') return new Error(`${path}.defaultDescription: is not a string`) + if (opts.defaultDescription_CustomCheck && !opts.defaultDescription_CustomCheck(o.defaultDescription)) return new Error(`${path}.defaultDescription: custom check failed`) + + if (typeof o.minWithdrawable !== 'number') return new Error(`${path}.minWithdrawable: is not a number`) + if (opts.minWithdrawable_CustomCheck && !opts.minWithdrawable_CustomCheck(o.minWithdrawable)) return new Error(`${path}.minWithdrawable: custom check failed`) return null } -export type LndGetInfoResponse = { - alias: string +export type NewInvoiceRequest = { + amountSats: number + memo: string } -export const LndGetInfoResponseOptionalFields: [] = [] -export type LndGetInfoResponseOptions = OptionsBaseMessage & { +export const NewInvoiceRequestOptionalFields: [] = [] +export type NewInvoiceRequestOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] - alias_CustomCheck?: (v: string) => boolean + amountSats_CustomCheck?: (v: number) => boolean + memo_CustomCheck?: (v: string) => boolean } -export const LndGetInfoResponseValidate = (o?: LndGetInfoResponse, opts: LndGetInfoResponseOptions = {}, path: string = 'LndGetInfoResponse::root.'): Error | null => { +export const NewInvoiceRequestValidate = (o?: NewInvoiceRequest, opts: NewInvoiceRequestOptions = {}, path: string = 'NewInvoiceRequest::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - if (typeof o.alias !== 'string') return new Error(`${path}.alias: is not a string`) - if (opts.alias_CustomCheck && !opts.alias_CustomCheck(o.alias)) return new Error(`${path}.alias: custom check failed`) + if (typeof o.amountSats !== 'number') return new Error(`${path}.amountSats: is not a number`) + if (opts.amountSats_CustomCheck && !opts.amountSats_CustomCheck(o.amountSats)) return new Error(`${path}.amountSats: custom check failed`) + + if (typeof o.memo !== 'string') return new Error(`${path}.memo: is not a string`) + if (opts.memo_CustomCheck && !opts.memo_CustomCheck(o.memo)) return new Error(`${path}.memo: custom check failed`) return null } -export type PayInvoiceRequest = { +export type DecodeInvoiceResponse = { + amount: number +} +export const DecodeInvoiceResponseOptionalFields: [] = [] +export type DecodeInvoiceResponseOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + amount_CustomCheck?: (v: number) => boolean +} +export const DecodeInvoiceResponseValidate = (o?: DecodeInvoiceResponse, opts: DecodeInvoiceResponseOptions = {}, path: string = 'DecodeInvoiceResponse::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.amount !== 'number') return new Error(`${path}.amount: is not a number`) + if (opts.amount_CustomCheck && !opts.amount_CustomCheck(o.amount)) return new Error(`${path}.amount: custom check failed`) + + return null +} + +export type UserInfo = { + userId: string + balance: number + max_withdrawable: number + user_identifier: string + service_fee_bps: number + network_max_fee_bps: number + network_max_fee_fixed: number +} +export const UserInfoOptionalFields: [] = [] +export type UserInfoOptions = OptionsBaseMessage & { + checkOptionalsAreSet?: [] + user_identifier_CustomCheck?: (v: string) => boolean + service_fee_bps_CustomCheck?: (v: number) => boolean + network_max_fee_bps_CustomCheck?: (v: number) => boolean + network_max_fee_fixed_CustomCheck?: (v: number) => boolean + userId_CustomCheck?: (v: string) => boolean + balance_CustomCheck?: (v: number) => boolean + max_withdrawable_CustomCheck?: (v: number) => boolean +} +export const UserInfoValidate = (o?: UserInfo, opts: UserInfoOptions = {}, path: string = 'UserInfo::root.'): Error | null => { + if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') + if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') + + if (typeof o.network_max_fee_bps !== 'number') return new Error(`${path}.network_max_fee_bps: is not a number`) + if (opts.network_max_fee_bps_CustomCheck && !opts.network_max_fee_bps_CustomCheck(o.network_max_fee_bps)) return new Error(`${path}.network_max_fee_bps: custom check failed`) + + if (typeof o.network_max_fee_fixed !== 'number') return new Error(`${path}.network_max_fee_fixed: is not a number`) + if (opts.network_max_fee_fixed_CustomCheck && !opts.network_max_fee_fixed_CustomCheck(o.network_max_fee_fixed)) return new Error(`${path}.network_max_fee_fixed: custom check failed`) + + if (typeof o.userId !== 'string') return new Error(`${path}.userId: is not a string`) + if (opts.userId_CustomCheck && !opts.userId_CustomCheck(o.userId)) return new Error(`${path}.userId: custom check failed`) + + if (typeof o.balance !== 'number') return new Error(`${path}.balance: is not a number`) + if (opts.balance_CustomCheck && !opts.balance_CustomCheck(o.balance)) return new Error(`${path}.balance: custom check failed`) + + if (typeof o.max_withdrawable !== 'number') return new Error(`${path}.max_withdrawable: is not a number`) + if (opts.max_withdrawable_CustomCheck && !opts.max_withdrawable_CustomCheck(o.max_withdrawable)) return new Error(`${path}.max_withdrawable: custom check failed`) + + if (typeof o.user_identifier !== 'string') return new Error(`${path}.user_identifier: is not a string`) + if (opts.user_identifier_CustomCheck && !opts.user_identifier_CustomCheck(o.user_identifier)) return new Error(`${path}.user_identifier: custom check failed`) + + if (typeof o.service_fee_bps !== 'number') return new Error(`${path}.service_fee_bps: is not a number`) + if (opts.service_fee_bps_CustomCheck && !opts.service_fee_bps_CustomCheck(o.service_fee_bps)) return new Error(`${path}.service_fee_bps: custom check failed`) + + return null +} + +export type SetMockInvoiceAsPaidRequest = { invoice: string amount: number } -export const PayInvoiceRequestOptionalFields: [] = [] -export type PayInvoiceRequestOptions = OptionsBaseMessage & { +export const SetMockInvoiceAsPaidRequestOptionalFields: [] = [] +export type SetMockInvoiceAsPaidRequestOptions = OptionsBaseMessage & { checkOptionalsAreSet?: [] invoice_CustomCheck?: (v: string) => boolean amount_CustomCheck?: (v: number) => boolean } -export const PayInvoiceRequestValidate = (o?: PayInvoiceRequest, opts: PayInvoiceRequestOptions = {}, path: string = 'PayInvoiceRequest::root.'): Error | null => { +export const SetMockInvoiceAsPaidRequestValidate = (o?: SetMockInvoiceAsPaidRequest, opts: SetMockInvoiceAsPaidRequestOptions = {}, path: string = 'SetMockInvoiceAsPaidRequest::root.'): Error | null => { if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') @@ -2323,282 +2634,3 @@ export const SendAppUserToAppPaymentRequestValidate = (o?: SendAppUserToAppPayme return null } -export type OpenChannelRequest = { - destination: string - fundingAmount: number - pushAmount: number - closeAddress: string -} -export const OpenChannelRequestOptionalFields: [] = [] -export type OpenChannelRequestOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - destination_CustomCheck?: (v: string) => boolean - fundingAmount_CustomCheck?: (v: number) => boolean - pushAmount_CustomCheck?: (v: number) => boolean - closeAddress_CustomCheck?: (v: string) => boolean -} -export const OpenChannelRequestValidate = (o?: OpenChannelRequest, opts: OpenChannelRequestOptions = {}, path: string = 'OpenChannelRequest::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.destination !== 'string') return new Error(`${path}.destination: is not a string`) - if (opts.destination_CustomCheck && !opts.destination_CustomCheck(o.destination)) return new Error(`${path}.destination: custom check failed`) - - if (typeof o.fundingAmount !== 'number') return new Error(`${path}.fundingAmount: is not a number`) - if (opts.fundingAmount_CustomCheck && !opts.fundingAmount_CustomCheck(o.fundingAmount)) return new Error(`${path}.fundingAmount: custom check failed`) - - if (typeof o.pushAmount !== 'number') return new Error(`${path}.pushAmount: is not a number`) - if (opts.pushAmount_CustomCheck && !opts.pushAmount_CustomCheck(o.pushAmount)) return new Error(`${path}.pushAmount: custom check failed`) - - if (typeof o.closeAddress !== 'string') return new Error(`${path}.closeAddress: is not a string`) - if (opts.closeAddress_CustomCheck && !opts.closeAddress_CustomCheck(o.closeAddress)) return new Error(`${path}.closeAddress: custom check failed`) - - return null -} - -export type EnrollAdminTokenRequest = { - admin_token: string -} -export const EnrollAdminTokenRequestOptionalFields: [] = [] -export type EnrollAdminTokenRequestOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - admin_token_CustomCheck?: (v: string) => boolean -} -export const EnrollAdminTokenRequestValidate = (o?: EnrollAdminTokenRequest, opts: EnrollAdminTokenRequestOptions = {}, path: string = 'EnrollAdminTokenRequest::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.admin_token !== 'string') return new Error(`${path}.admin_token: is not a string`) - if (opts.admin_token_CustomCheck && !opts.admin_token_CustomCheck(o.admin_token)) return new Error(`${path}.admin_token: custom check failed`) - - return null -} - -export type Empty = { -} -export const EmptyOptionalFields: [] = [] -export type EmptyOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] -} -export const EmptyValidate = (o?: Empty, opts: EmptyOptions = {}, path: string = 'Empty::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - return null -} - -export type NewAddressRequest = { - addressType: AddressType -} -export const NewAddressRequestOptionalFields: [] = [] -export type NewAddressRequestOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - addressType_CustomCheck?: (v: AddressType) => boolean -} -export const NewAddressRequestValidate = (o?: NewAddressRequest, opts: NewAddressRequestOptions = {}, path: string = 'NewAddressRequest::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (!enumCheckAddressType(o.addressType)) return new Error(`${path}.addressType: is not a valid AddressType`) - if (opts.addressType_CustomCheck && !opts.addressType_CustomCheck(o.addressType)) return new Error(`${path}.addressType: custom check failed`) - - return null -} - -export type AddProductRequest = { - name: string - price_sats: number -} -export const AddProductRequestOptionalFields: [] = [] -export type AddProductRequestOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - name_CustomCheck?: (v: string) => boolean - price_sats_CustomCheck?: (v: number) => boolean -} -export const AddProductRequestValidate = (o?: AddProductRequest, opts: AddProductRequestOptions = {}, path: string = 'AddProductRequest::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.name !== 'string') return new Error(`${path}.name: is not a string`) - if (opts.name_CustomCheck && !opts.name_CustomCheck(o.name)) return new Error(`${path}.name: custom check failed`) - - if (typeof o.price_sats !== 'number') return new Error(`${path}.price_sats: is not a number`) - if (opts.price_sats_CustomCheck && !opts.price_sats_CustomCheck(o.price_sats)) return new Error(`${path}.price_sats: custom check failed`) - - return null -} - -export type EncryptionExchangeRequest = { - deviceId: string - publicKey: string -} -export const EncryptionExchangeRequestOptionalFields: [] = [] -export type EncryptionExchangeRequestOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - publicKey_CustomCheck?: (v: string) => boolean - deviceId_CustomCheck?: (v: string) => boolean -} -export const EncryptionExchangeRequestValidate = (o?: EncryptionExchangeRequest, opts: EncryptionExchangeRequestOptions = {}, path: string = 'EncryptionExchangeRequest::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.publicKey !== 'string') return new Error(`${path}.publicKey: is not a string`) - if (opts.publicKey_CustomCheck && !opts.publicKey_CustomCheck(o.publicKey)) return new Error(`${path}.publicKey: custom check failed`) - - if (typeof o.deviceId !== 'string') return new Error(`${path}.deviceId: is not a string`) - if (opts.deviceId_CustomCheck && !opts.deviceId_CustomCheck(o.deviceId)) return new Error(`${path}.deviceId: custom check failed`) - - return null -} - -export type UsageMetrics = { - metrics: UsageMetric[] -} -export const UsageMetricsOptionalFields: [] = [] -export type UsageMetricsOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - metrics_ItemOptions?: UsageMetricOptions - metrics_CustomCheck?: (v: UsageMetric[]) => boolean -} -export const UsageMetricsValidate = (o?: UsageMetrics, opts: UsageMetricsOptions = {}, path: string = 'UsageMetrics::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (!Array.isArray(o.metrics)) return new Error(`${path}.metrics: is not an array`) - for (let index = 0; index < o.metrics.length; index++) { - const metricsErr = UsageMetricValidate(o.metrics[index], opts.metrics_ItemOptions, `${path}.metrics[${index}]`) - if (metricsErr !== null) return metricsErr - } - if (opts.metrics_CustomCheck && !opts.metrics_CustomCheck(o.metrics)) return new Error(`${path}.metrics: custom check failed`) - - return null -} - -export type AuthAppRequest = { - allow_user_creation?: boolean - name: string -} -export type AuthAppRequestOptionalField = 'allow_user_creation' -export const AuthAppRequestOptionalFields: AuthAppRequestOptionalField[] = ['allow_user_creation'] -export type AuthAppRequestOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: AuthAppRequestOptionalField[] - name_CustomCheck?: (v: string) => boolean - allow_user_creation_CustomCheck?: (v?: boolean) => boolean -} -export const AuthAppRequestValidate = (o?: AuthAppRequest, opts: AuthAppRequestOptions = {}, path: string = 'AuthAppRequest::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.name !== 'string') return new Error(`${path}.name: is not a string`) - if (opts.name_CustomCheck && !opts.name_CustomCheck(o.name)) return new Error(`${path}.name: custom check failed`) - - if ((o.allow_user_creation || opts.allOptionalsAreSet || opts.checkOptionalsAreSet?.includes('allow_user_creation')) && typeof o.allow_user_creation !== 'boolean') return new Error(`${path}.allow_user_creation: is not a boolean`) - if (opts.allow_user_creation_CustomCheck && !opts.allow_user_creation_CustomCheck(o.allow_user_creation)) return new Error(`${path}.allow_user_creation: custom check failed`) - - return null -} - -export type AddAppUserRequest = { - identifier: string - fail_if_exists: boolean - balance: number -} -export const AddAppUserRequestOptionalFields: [] = [] -export type AddAppUserRequestOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - balance_CustomCheck?: (v: number) => boolean - identifier_CustomCheck?: (v: string) => boolean - fail_if_exists_CustomCheck?: (v: boolean) => boolean -} -export const AddAppUserRequestValidate = (o?: AddAppUserRequest, opts: AddAppUserRequestOptions = {}, path: string = 'AddAppUserRequest::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.identifier !== 'string') return new Error(`${path}.identifier: is not a string`) - if (opts.identifier_CustomCheck && !opts.identifier_CustomCheck(o.identifier)) return new Error(`${path}.identifier: custom check failed`) - - if (typeof o.fail_if_exists !== 'boolean') return new Error(`${path}.fail_if_exists: is not a boolean`) - if (opts.fail_if_exists_CustomCheck && !opts.fail_if_exists_CustomCheck(o.fail_if_exists)) return new Error(`${path}.fail_if_exists: custom check failed`) - - if (typeof o.balance !== 'number') return new Error(`${path}.balance: is not a number`) - if (opts.balance_CustomCheck && !opts.balance_CustomCheck(o.balance)) return new Error(`${path}.balance: custom check failed`) - - return null -} - -export type DecodeInvoiceResponse = { - amount: number -} -export const DecodeInvoiceResponseOptionalFields: [] = [] -export type DecodeInvoiceResponseOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - amount_CustomCheck?: (v: number) => boolean -} -export const DecodeInvoiceResponseValidate = (o?: DecodeInvoiceResponse, opts: DecodeInvoiceResponseOptions = {}, path: string = 'DecodeInvoiceResponse::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.amount !== 'number') return new Error(`${path}.amount: is not a number`) - if (opts.amount_CustomCheck && !opts.amount_CustomCheck(o.amount)) return new Error(`${path}.amount: custom check failed`) - - return null -} - -export type RelaysMigration = { - relays: string[] -} -export const RelaysMigrationOptionalFields: [] = [] -export type RelaysMigrationOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - relays_CustomCheck?: (v: string[]) => boolean -} -export const RelaysMigrationValidate = (o?: RelaysMigration, opts: RelaysMigrationOptions = {}, path: string = 'RelaysMigration::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (!Array.isArray(o.relays)) return new Error(`${path}.relays: is not an array`) - for (let index = 0; index < o.relays.length; index++) { - if (typeof o.relays[index] !== 'string') return new Error(`${path}.relays[${index}]: is not a string`) - } - if (opts.relays_CustomCheck && !opts.relays_CustomCheck(o.relays)) return new Error(`${path}.relays: custom check failed`) - - return null -} - -export type CreateOneTimeInviteLinkRequest = { - sats?: number -} -export type CreateOneTimeInviteLinkRequestOptionalField = 'sats' -export const CreateOneTimeInviteLinkRequestOptionalFields: CreateOneTimeInviteLinkRequestOptionalField[] = ['sats'] -export type CreateOneTimeInviteLinkRequestOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: CreateOneTimeInviteLinkRequestOptionalField[] - sats_CustomCheck?: (v?: number) => boolean -} -export const CreateOneTimeInviteLinkRequestValidate = (o?: CreateOneTimeInviteLinkRequest, opts: CreateOneTimeInviteLinkRequestOptions = {}, path: string = 'CreateOneTimeInviteLinkRequest::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if ((o.sats || opts.allOptionalsAreSet || opts.checkOptionalsAreSet?.includes('sats')) && typeof o.sats !== 'number') return new Error(`${path}.sats: is not a number`) - if (opts.sats_CustomCheck && !opts.sats_CustomCheck(o.sats)) return new Error(`${path}.sats: custom check failed`) - - return null -} - -export type GetInviteTokenStateResponse = { - used: boolean -} -export const GetInviteTokenStateResponseOptionalFields: [] = [] -export type GetInviteTokenStateResponseOptions = OptionsBaseMessage & { - checkOptionalsAreSet?: [] - used_CustomCheck?: (v: boolean) => boolean -} -export const GetInviteTokenStateResponseValidate = (o?: GetInviteTokenStateResponse, opts: GetInviteTokenStateResponseOptions = {}, path: string = 'GetInviteTokenStateResponse::root.'): Error | null => { - if (opts.checkOptionalsAreSet && opts.allOptionalsAreSet) return new Error(path + ': only one of checkOptionalsAreSet or allOptionalNonDefault can be set for each message') - if (typeof o !== 'object' || o === null) return new Error(path + ': object is not an instance of an object or is null') - - if (typeof o.used !== 'boolean') return new Error(`${path}.used: is not a boolean`) - if (opts.used_CustomCheck && !opts.used_CustomCheck(o.used)) return new Error(`${path}.used: custom check failed`) - - return null -} - diff --git a/proto/lnd/chainnotifier.client.ts b/proto/lnd/chainnotifier.client.ts index 2fe3a8bb..23bc340e 100644 --- a/proto/lnd/chainnotifier.client.ts +++ b/proto/lnd/chainnotifier.client.ts @@ -1,128 +1,128 @@ -// @generated by protobuf-ts 2.8.1 -// @generated from protobuf file "chainnotifier.proto" (package "chainrpc", syntax proto3) -// tslint:disable -import type { RpcTransport } from "@protobuf-ts/runtime-rpc"; -import type { ServiceInfo } from "@protobuf-ts/runtime-rpc"; -import { ChainNotifier } from "./chainnotifier.js"; -import type { BlockEpoch } from "./chainnotifier.js"; -import type { SpendEvent } from "./chainnotifier.js"; -import type { SpendRequest } from "./chainnotifier.js"; -import { stackIntercept } from "@protobuf-ts/runtime-rpc"; -import type { ConfEvent } from "./chainnotifier.js"; -import type { ConfRequest } from "./chainnotifier.js"; -import type { ServerStreamingCall } from "@protobuf-ts/runtime-rpc"; -import type { RpcOptions } from "@protobuf-ts/runtime-rpc"; -/** - * ChainNotifier is a service that can be used to get information about the - * chain backend by registering notifiers for chain events. - * - * @generated from protobuf service chainrpc.ChainNotifier - */ -export interface IChainNotifierClient { - /** - * - * RegisterConfirmationsNtfn is a synchronous response-streaming RPC that - * registers an intent for a client to be notified once a confirmation request - * has reached its required number of confirmations on-chain. - * - * A confirmation request must have a valid output script. It is also possible - * to give a transaction ID. If the transaction ID is not set, a notification - * is sent once the output script confirms. If the transaction ID is also set, - * a notification is sent once the output script confirms in the given - * transaction. - * - * @generated from protobuf rpc: RegisterConfirmationsNtfn(chainrpc.ConfRequest) returns (stream chainrpc.ConfEvent); - */ - registerConfirmationsNtfn(input: ConfRequest, options?: RpcOptions): ServerStreamingCall; - /** - * - * RegisterSpendNtfn is a synchronous response-streaming RPC that registers an - * intent for a client to be notification once a spend request has been spent - * by a transaction that has confirmed on-chain. - * - * A client can specify whether the spend request should be for a particular - * outpoint or for an output script by specifying a zero outpoint. - * - * @generated from protobuf rpc: RegisterSpendNtfn(chainrpc.SpendRequest) returns (stream chainrpc.SpendEvent); - */ - registerSpendNtfn(input: SpendRequest, options?: RpcOptions): ServerStreamingCall; - /** - * - * RegisterBlockEpochNtfn is a synchronous response-streaming RPC that - * registers an intent for a client to be notified of blocks in the chain. The - * stream will return a hash and height tuple of a block for each new/stale - * block in the chain. It is the client's responsibility to determine whether - * the tuple returned is for a new or stale block in the chain. - * - * A client can also request a historical backlog of blocks from a particular - * point. This allows clients to be idempotent by ensuring that they do not - * missing processing a single block within the chain. - * - * @generated from protobuf rpc: RegisterBlockEpochNtfn(chainrpc.BlockEpoch) returns (stream chainrpc.BlockEpoch); - */ - registerBlockEpochNtfn(input: BlockEpoch, options?: RpcOptions): ServerStreamingCall; -} -/** - * ChainNotifier is a service that can be used to get information about the - * chain backend by registering notifiers for chain events. - * - * @generated from protobuf service chainrpc.ChainNotifier - */ -export class ChainNotifierClient implements IChainNotifierClient, ServiceInfo { - typeName = ChainNotifier.typeName; - methods = ChainNotifier.methods; - options = ChainNotifier.options; - constructor(private readonly _transport: RpcTransport) { - } - /** - * - * RegisterConfirmationsNtfn is a synchronous response-streaming RPC that - * registers an intent for a client to be notified once a confirmation request - * has reached its required number of confirmations on-chain. - * - * A confirmation request must have a valid output script. It is also possible - * to give a transaction ID. If the transaction ID is not set, a notification - * is sent once the output script confirms. If the transaction ID is also set, - * a notification is sent once the output script confirms in the given - * transaction. - * - * @generated from protobuf rpc: RegisterConfirmationsNtfn(chainrpc.ConfRequest) returns (stream chainrpc.ConfEvent); - */ - registerConfirmationsNtfn(input: ConfRequest, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[0], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } - /** - * - * RegisterSpendNtfn is a synchronous response-streaming RPC that registers an - * intent for a client to be notification once a spend request has been spent - * by a transaction that has confirmed on-chain. - * - * A client can specify whether the spend request should be for a particular - * outpoint or for an output script by specifying a zero outpoint. - * - * @generated from protobuf rpc: RegisterSpendNtfn(chainrpc.SpendRequest) returns (stream chainrpc.SpendEvent); - */ - registerSpendNtfn(input: SpendRequest, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[1], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } - /** - * - * RegisterBlockEpochNtfn is a synchronous response-streaming RPC that - * registers an intent for a client to be notified of blocks in the chain. The - * stream will return a hash and height tuple of a block for each new/stale - * block in the chain. It is the client's responsibility to determine whether - * the tuple returned is for a new or stale block in the chain. - * - * A client can also request a historical backlog of blocks from a particular - * point. This allows clients to be idempotent by ensuring that they do not - * missing processing a single block within the chain. - * - * @generated from protobuf rpc: RegisterBlockEpochNtfn(chainrpc.BlockEpoch) returns (stream chainrpc.BlockEpoch); - */ - registerBlockEpochNtfn(input: BlockEpoch, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[2], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } -} +// @generated by protobuf-ts 2.8.1 +// @generated from protobuf file "chainnotifier.proto" (package "chainrpc", syntax proto3) +// tslint:disable +import type { RpcTransport } from "@protobuf-ts/runtime-rpc"; +import type { ServiceInfo } from "@protobuf-ts/runtime-rpc"; +import { ChainNotifier } from "./chainnotifier.js"; +import type { BlockEpoch } from "./chainnotifier.js"; +import type { SpendEvent } from "./chainnotifier.js"; +import type { SpendRequest } from "./chainnotifier.js"; +import { stackIntercept } from "@protobuf-ts/runtime-rpc"; +import type { ConfEvent } from "./chainnotifier"; +import type { ConfRequest } from "./chainnotifier"; +import type { ServerStreamingCall } from "@protobuf-ts/runtime-rpc"; +import type { RpcOptions } from "@protobuf-ts/runtime-rpc"; +/** + * ChainNotifier is a service that can be used to get information about the + * chain backend by registering notifiers for chain events. + * + * @generated from protobuf service chainrpc.ChainNotifier + */ +export interface IChainNotifierClient { + /** + * + * RegisterConfirmationsNtfn is a synchronous response-streaming RPC that + * registers an intent for a client to be notified once a confirmation request + * has reached its required number of confirmations on-chain. + * + * A confirmation request must have a valid output script. It is also possible + * to give a transaction ID. If the transaction ID is not set, a notification + * is sent once the output script confirms. If the transaction ID is also set, + * a notification is sent once the output script confirms in the given + * transaction. + * + * @generated from protobuf rpc: RegisterConfirmationsNtfn(chainrpc.ConfRequest) returns (stream chainrpc.ConfEvent); + */ + registerConfirmationsNtfn(input: ConfRequest, options?: RpcOptions): ServerStreamingCall; + /** + * + * RegisterSpendNtfn is a synchronous response-streaming RPC that registers an + * intent for a client to be notification once a spend request has been spent + * by a transaction that has confirmed on-chain. + * + * A client can specify whether the spend request should be for a particular + * outpoint or for an output script by specifying a zero outpoint. + * + * @generated from protobuf rpc: RegisterSpendNtfn(chainrpc.SpendRequest) returns (stream chainrpc.SpendEvent); + */ + registerSpendNtfn(input: SpendRequest, options?: RpcOptions): ServerStreamingCall; + /** + * + * RegisterBlockEpochNtfn is a synchronous response-streaming RPC that + * registers an intent for a client to be notified of blocks in the chain. The + * stream will return a hash and height tuple of a block for each new/stale + * block in the chain. It is the client's responsibility to determine whether + * the tuple returned is for a new or stale block in the chain. + * + * A client can also request a historical backlog of blocks from a particular + * point. This allows clients to be idempotent by ensuring that they do not + * missing processing a single block within the chain. + * + * @generated from protobuf rpc: RegisterBlockEpochNtfn(chainrpc.BlockEpoch) returns (stream chainrpc.BlockEpoch); + */ + registerBlockEpochNtfn(input: BlockEpoch, options?: RpcOptions): ServerStreamingCall; +} +/** + * ChainNotifier is a service that can be used to get information about the + * chain backend by registering notifiers for chain events. + * + * @generated from protobuf service chainrpc.ChainNotifier + */ +export class ChainNotifierClient implements IChainNotifierClient, ServiceInfo { + typeName = ChainNotifier.typeName; + methods = ChainNotifier.methods; + options = ChainNotifier.options; + constructor(private readonly _transport: RpcTransport) { + } + /** + * + * RegisterConfirmationsNtfn is a synchronous response-streaming RPC that + * registers an intent for a client to be notified once a confirmation request + * has reached its required number of confirmations on-chain. + * + * A confirmation request must have a valid output script. It is also possible + * to give a transaction ID. If the transaction ID is not set, a notification + * is sent once the output script confirms. If the transaction ID is also set, + * a notification is sent once the output script confirms in the given + * transaction. + * + * @generated from protobuf rpc: RegisterConfirmationsNtfn(chainrpc.ConfRequest) returns (stream chainrpc.ConfEvent); + */ + registerConfirmationsNtfn(input: ConfRequest, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[0], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } + /** + * + * RegisterSpendNtfn is a synchronous response-streaming RPC that registers an + * intent for a client to be notification once a spend request has been spent + * by a transaction that has confirmed on-chain. + * + * A client can specify whether the spend request should be for a particular + * outpoint or for an output script by specifying a zero outpoint. + * + * @generated from protobuf rpc: RegisterSpendNtfn(chainrpc.SpendRequest) returns (stream chainrpc.SpendEvent); + */ + registerSpendNtfn(input: SpendRequest, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[1], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } + /** + * + * RegisterBlockEpochNtfn is a synchronous response-streaming RPC that + * registers an intent for a client to be notified of blocks in the chain. The + * stream will return a hash and height tuple of a block for each new/stale + * block in the chain. It is the client's responsibility to determine whether + * the tuple returned is for a new or stale block in the chain. + * + * A client can also request a historical backlog of blocks from a particular + * point. This allows clients to be idempotent by ensuring that they do not + * missing processing a single block within the chain. + * + * @generated from protobuf rpc: RegisterBlockEpochNtfn(chainrpc.BlockEpoch) returns (stream chainrpc.BlockEpoch); + */ + registerBlockEpochNtfn(input: BlockEpoch, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[2], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } +} diff --git a/proto/lnd/chainnotifier.ts b/proto/lnd/chainnotifier.ts index 63c4b385..326fa968 100644 --- a/proto/lnd/chainnotifier.ts +++ b/proto/lnd/chainnotifier.ts @@ -1,823 +1,823 @@ -// @generated by protobuf-ts 2.8.1 -// @generated from protobuf file "chainnotifier.proto" (package "chainrpc", syntax proto3) -// tslint:disable -import { ServiceType } from "@protobuf-ts/runtime-rpc"; -import type { BinaryWriteOptions } from "@protobuf-ts/runtime"; -import type { IBinaryWriter } from "@protobuf-ts/runtime"; -import { WireType } from "@protobuf-ts/runtime"; -import type { BinaryReadOptions } from "@protobuf-ts/runtime"; -import type { IBinaryReader } from "@protobuf-ts/runtime"; -import { UnknownFieldHandler } from "@protobuf-ts/runtime"; -import type { PartialMessage } from "@protobuf-ts/runtime"; -import { reflectionMergePartial } from "@protobuf-ts/runtime"; -import { MESSAGE_TYPE } from "@protobuf-ts/runtime"; -import { MessageType } from "@protobuf-ts/runtime"; -/** - * @generated from protobuf message chainrpc.ConfRequest - */ -export interface ConfRequest { - /** - * - * The transaction hash for which we should request a confirmation notification - * for. If set to a hash of all zeros, then the confirmation notification will - * be requested for the script instead. - * - * @generated from protobuf field: bytes txid = 1; - */ - txid: Uint8Array; - /** - * - * An output script within a transaction with the hash above which will be used - * by light clients to match block filters. If the transaction hash is set to a - * hash of all zeros, then a confirmation notification will be requested for - * this script instead. - * - * @generated from protobuf field: bytes script = 2; - */ - script: Uint8Array; - /** - * - * The number of desired confirmations the transaction/output script should - * reach before dispatching a confirmation notification. - * - * @generated from protobuf field: uint32 num_confs = 3; - */ - numConfs: number; - /** - * - * The earliest height in the chain for which the transaction/output script - * could have been included in a block. This should in most cases be set to the - * broadcast height of the transaction/output script. - * - * @generated from protobuf field: uint32 height_hint = 4; - */ - heightHint: number; - /** - * - * If true, then the block that mines the specified txid/script will be - * included in eventual the notification event. - * - * @generated from protobuf field: bool include_block = 5; - */ - includeBlock: boolean; -} -/** - * @generated from protobuf message chainrpc.ConfDetails - */ -export interface ConfDetails { - /** - * The raw bytes of the confirmed transaction. - * - * @generated from protobuf field: bytes raw_tx = 1; - */ - rawTx: Uint8Array; - /** - * The hash of the block in which the confirmed transaction was included in. - * - * @generated from protobuf field: bytes block_hash = 2; - */ - blockHash: Uint8Array; - /** - * The height of the block in which the confirmed transaction was included - * in. - * - * @generated from protobuf field: uint32 block_height = 3; - */ - blockHeight: number; - /** - * The index of the confirmed transaction within the block. - * - * @generated from protobuf field: uint32 tx_index = 4; - */ - txIndex: number; - /** - * - * The raw bytes of the block that mined the transaction. Only included if - * include_block was set in the request. - * - * @generated from protobuf field: bytes raw_block = 5; - */ - rawBlock: Uint8Array; -} -/** - * TODO(wilmer): need to know how the client will use this first. - * - * @generated from protobuf message chainrpc.Reorg - */ -export interface Reorg { -} -/** - * @generated from protobuf message chainrpc.ConfEvent - */ -export interface ConfEvent { - /** - * @generated from protobuf oneof: event - */ - event: { - oneofKind: "conf"; - /** - * - * An event that includes the confirmation details of the request - * (txid/ouput script). - * - * @generated from protobuf field: chainrpc.ConfDetails conf = 1; - */ - conf: ConfDetails; - } | { - oneofKind: "reorg"; - /** - * - * An event send when the transaction of the request is reorged out of the - * chain. - * - * @generated from protobuf field: chainrpc.Reorg reorg = 2; - */ - reorg: Reorg; - } | { - oneofKind: undefined; - }; -} -/** - * @generated from protobuf message chainrpc.Outpoint - */ -export interface Outpoint { - /** - * The hash of the transaction. - * - * @generated from protobuf field: bytes hash = 1; - */ - hash: Uint8Array; - /** - * The index of the output within the transaction. - * - * @generated from protobuf field: uint32 index = 2; - */ - index: number; -} -/** - * @generated from protobuf message chainrpc.SpendRequest - */ -export interface SpendRequest { - /** - * - * The outpoint for which we should request a spend notification for. If set to - * a zero outpoint, then the spend notification will be requested for the - * script instead. A zero or nil outpoint is not supported for Taproot spends - * because the output script cannot reliably be computed from the witness alone - * and the spent output script is not always available in the rescan context. - * So an outpoint must _always_ be specified when registering a spend - * notification for a Taproot output. - * - * @generated from protobuf field: chainrpc.Outpoint outpoint = 1; - */ - outpoint?: Outpoint; - /** - * - * The output script for the outpoint above. This will be used by light clients - * to match block filters. If the outpoint is set to a zero outpoint, then a - * spend notification will be requested for this script instead. - * - * @generated from protobuf field: bytes script = 2; - */ - script: Uint8Array; - /** - * - * The earliest height in the chain for which the outpoint/output script could - * have been spent. This should in most cases be set to the broadcast height of - * the outpoint/output script. - * - * @generated from protobuf field: uint32 height_hint = 3; - */ - heightHint: number; -} -/** - * @generated from protobuf message chainrpc.SpendDetails - */ -export interface SpendDetails { - /** - * The outpoint was that spent. - * - * @generated from protobuf field: chainrpc.Outpoint spending_outpoint = 1; - */ - spendingOutpoint?: Outpoint; - /** - * The raw bytes of the spending transaction. - * - * @generated from protobuf field: bytes raw_spending_tx = 2; - */ - rawSpendingTx: Uint8Array; - /** - * The hash of the spending transaction. - * - * @generated from protobuf field: bytes spending_tx_hash = 3; - */ - spendingTxHash: Uint8Array; - /** - * The input of the spending transaction that fulfilled the spend request. - * - * @generated from protobuf field: uint32 spending_input_index = 4; - */ - spendingInputIndex: number; - /** - * The height at which the spending transaction was included in a block. - * - * @generated from protobuf field: uint32 spending_height = 5; - */ - spendingHeight: number; -} -/** - * @generated from protobuf message chainrpc.SpendEvent - */ -export interface SpendEvent { - /** - * @generated from protobuf oneof: event - */ - event: { - oneofKind: "spend"; - /** - * - * An event that includes the details of the spending transaction of the - * request (outpoint/output script). - * - * @generated from protobuf field: chainrpc.SpendDetails spend = 1; - */ - spend: SpendDetails; - } | { - oneofKind: "reorg"; - /** - * - * An event sent when the spending transaction of the request was - * reorged out of the chain. - * - * @generated from protobuf field: chainrpc.Reorg reorg = 2; - */ - reorg: Reorg; - } | { - oneofKind: undefined; - }; -} -/** - * @generated from protobuf message chainrpc.BlockEpoch - */ -export interface BlockEpoch { - /** - * The hash of the block. - * - * @generated from protobuf field: bytes hash = 1; - */ - hash: Uint8Array; - /** - * The height of the block. - * - * @generated from protobuf field: uint32 height = 2; - */ - height: number; -} -// @generated message type with reflection information, may provide speed optimized methods -class ConfRequest$Type extends MessageType { - constructor() { - super("chainrpc.ConfRequest", [ - { no: 1, name: "txid", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "script", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "num_confs", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 4, name: "height_hint", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "include_block", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): ConfRequest { - const message = { txid: new Uint8Array(0), script: new Uint8Array(0), numConfs: 0, heightHint: 0, includeBlock: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ConfRequest): ConfRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes txid */ 1: - message.txid = reader.bytes(); - break; - case /* bytes script */ 2: - message.script = reader.bytes(); - break; - case /* uint32 num_confs */ 3: - message.numConfs = reader.uint32(); - break; - case /* uint32 height_hint */ 4: - message.heightHint = reader.uint32(); - break; - case /* bool include_block */ 5: - message.includeBlock = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ConfRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes txid = 1; */ - if (message.txid.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.txid); - /* bytes script = 2; */ - if (message.script.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.script); - /* uint32 num_confs = 3; */ - if (message.numConfs !== 0) - writer.tag(3, WireType.Varint).uint32(message.numConfs); - /* uint32 height_hint = 4; */ - if (message.heightHint !== 0) - writer.tag(4, WireType.Varint).uint32(message.heightHint); - /* bool include_block = 5; */ - if (message.includeBlock !== false) - writer.tag(5, WireType.Varint).bool(message.includeBlock); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message chainrpc.ConfRequest - */ -export const ConfRequest = new ConfRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ConfDetails$Type extends MessageType { - constructor() { - super("chainrpc.ConfDetails", [ - { no: 1, name: "raw_tx", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "block_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "block_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 4, name: "tx_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "raw_block", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): ConfDetails { - const message = { rawTx: new Uint8Array(0), blockHash: new Uint8Array(0), blockHeight: 0, txIndex: 0, rawBlock: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ConfDetails): ConfDetails { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes raw_tx */ 1: - message.rawTx = reader.bytes(); - break; - case /* bytes block_hash */ 2: - message.blockHash = reader.bytes(); - break; - case /* uint32 block_height */ 3: - message.blockHeight = reader.uint32(); - break; - case /* uint32 tx_index */ 4: - message.txIndex = reader.uint32(); - break; - case /* bytes raw_block */ 5: - message.rawBlock = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ConfDetails, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes raw_tx = 1; */ - if (message.rawTx.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.rawTx); - /* bytes block_hash = 2; */ - if (message.blockHash.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.blockHash); - /* uint32 block_height = 3; */ - if (message.blockHeight !== 0) - writer.tag(3, WireType.Varint).uint32(message.blockHeight); - /* uint32 tx_index = 4; */ - if (message.txIndex !== 0) - writer.tag(4, WireType.Varint).uint32(message.txIndex); - /* bytes raw_block = 5; */ - if (message.rawBlock.length) - writer.tag(5, WireType.LengthDelimited).bytes(message.rawBlock); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message chainrpc.ConfDetails - */ -export const ConfDetails = new ConfDetails$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Reorg$Type extends MessageType { - constructor() { - super("chainrpc.Reorg", []); - } - create(value?: PartialMessage): Reorg { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Reorg): Reorg { - return target ?? this.create(); - } - internalBinaryWrite(message: Reorg, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message chainrpc.Reorg - */ -export const Reorg = new Reorg$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ConfEvent$Type extends MessageType { - constructor() { - super("chainrpc.ConfEvent", [ - { no: 1, name: "conf", kind: "message", oneof: "event", T: () => ConfDetails }, - { no: 2, name: "reorg", kind: "message", oneof: "event", T: () => Reorg } - ]); - } - create(value?: PartialMessage): ConfEvent { - const message = { event: { oneofKind: undefined } }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ConfEvent): ConfEvent { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* chainrpc.ConfDetails conf */ 1: - message.event = { - oneofKind: "conf", - conf: ConfDetails.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).conf) - }; - break; - case /* chainrpc.Reorg reorg */ 2: - message.event = { - oneofKind: "reorg", - reorg: Reorg.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).reorg) - }; - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ConfEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* chainrpc.ConfDetails conf = 1; */ - if (message.event.oneofKind === "conf") - ConfDetails.internalBinaryWrite(message.event.conf, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* chainrpc.Reorg reorg = 2; */ - if (message.event.oneofKind === "reorg") - Reorg.internalBinaryWrite(message.event.reorg, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message chainrpc.ConfEvent - */ -export const ConfEvent = new ConfEvent$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Outpoint$Type extends MessageType { - constructor() { - super("chainrpc.Outpoint", [ - { no: 1, name: "hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value?: PartialMessage): Outpoint { - const message = { hash: new Uint8Array(0), index: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Outpoint): Outpoint { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes hash */ 1: - message.hash = reader.bytes(); - break; - case /* uint32 index */ 2: - message.index = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: Outpoint, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes hash = 1; */ - if (message.hash.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.hash); - /* uint32 index = 2; */ - if (message.index !== 0) - writer.tag(2, WireType.Varint).uint32(message.index); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message chainrpc.Outpoint - */ -export const Outpoint = new Outpoint$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SpendRequest$Type extends MessageType { - constructor() { - super("chainrpc.SpendRequest", [ - { no: 1, name: "outpoint", kind: "message", T: () => Outpoint }, - { no: 2, name: "script", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "height_hint", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value?: PartialMessage): SpendRequest { - const message = { script: new Uint8Array(0), heightHint: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SpendRequest): SpendRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* chainrpc.Outpoint outpoint */ 1: - message.outpoint = Outpoint.internalBinaryRead(reader, reader.uint32(), options, message.outpoint); - break; - case /* bytes script */ 2: - message.script = reader.bytes(); - break; - case /* uint32 height_hint */ 3: - message.heightHint = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: SpendRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* chainrpc.Outpoint outpoint = 1; */ - if (message.outpoint) - Outpoint.internalBinaryWrite(message.outpoint, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* bytes script = 2; */ - if (message.script.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.script); - /* uint32 height_hint = 3; */ - if (message.heightHint !== 0) - writer.tag(3, WireType.Varint).uint32(message.heightHint); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message chainrpc.SpendRequest - */ -export const SpendRequest = new SpendRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SpendDetails$Type extends MessageType { - constructor() { - super("chainrpc.SpendDetails", [ - { no: 1, name: "spending_outpoint", kind: "message", T: () => Outpoint }, - { no: 2, name: "raw_spending_tx", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "spending_tx_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 4, name: "spending_input_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "spending_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value?: PartialMessage): SpendDetails { - const message = { rawSpendingTx: new Uint8Array(0), spendingTxHash: new Uint8Array(0), spendingInputIndex: 0, spendingHeight: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SpendDetails): SpendDetails { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* chainrpc.Outpoint spending_outpoint */ 1: - message.spendingOutpoint = Outpoint.internalBinaryRead(reader, reader.uint32(), options, message.spendingOutpoint); - break; - case /* bytes raw_spending_tx */ 2: - message.rawSpendingTx = reader.bytes(); - break; - case /* bytes spending_tx_hash */ 3: - message.spendingTxHash = reader.bytes(); - break; - case /* uint32 spending_input_index */ 4: - message.spendingInputIndex = reader.uint32(); - break; - case /* uint32 spending_height */ 5: - message.spendingHeight = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: SpendDetails, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* chainrpc.Outpoint spending_outpoint = 1; */ - if (message.spendingOutpoint) - Outpoint.internalBinaryWrite(message.spendingOutpoint, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* bytes raw_spending_tx = 2; */ - if (message.rawSpendingTx.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.rawSpendingTx); - /* bytes spending_tx_hash = 3; */ - if (message.spendingTxHash.length) - writer.tag(3, WireType.LengthDelimited).bytes(message.spendingTxHash); - /* uint32 spending_input_index = 4; */ - if (message.spendingInputIndex !== 0) - writer.tag(4, WireType.Varint).uint32(message.spendingInputIndex); - /* uint32 spending_height = 5; */ - if (message.spendingHeight !== 0) - writer.tag(5, WireType.Varint).uint32(message.spendingHeight); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message chainrpc.SpendDetails - */ -export const SpendDetails = new SpendDetails$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SpendEvent$Type extends MessageType { - constructor() { - super("chainrpc.SpendEvent", [ - { no: 1, name: "spend", kind: "message", oneof: "event", T: () => SpendDetails }, - { no: 2, name: "reorg", kind: "message", oneof: "event", T: () => Reorg } - ]); - } - create(value?: PartialMessage): SpendEvent { - const message = { event: { oneofKind: undefined } }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SpendEvent): SpendEvent { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* chainrpc.SpendDetails spend */ 1: - message.event = { - oneofKind: "spend", - spend: SpendDetails.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).spend) - }; - break; - case /* chainrpc.Reorg reorg */ 2: - message.event = { - oneofKind: "reorg", - reorg: Reorg.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).reorg) - }; - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: SpendEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* chainrpc.SpendDetails spend = 1; */ - if (message.event.oneofKind === "spend") - SpendDetails.internalBinaryWrite(message.event.spend, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* chainrpc.Reorg reorg = 2; */ - if (message.event.oneofKind === "reorg") - Reorg.internalBinaryWrite(message.event.reorg, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message chainrpc.SpendEvent - */ -export const SpendEvent = new SpendEvent$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class BlockEpoch$Type extends MessageType { - constructor() { - super("chainrpc.BlockEpoch", [ - { no: 1, name: "hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value?: PartialMessage): BlockEpoch { - const message = { hash: new Uint8Array(0), height: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BlockEpoch): BlockEpoch { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes hash */ 1: - message.hash = reader.bytes(); - break; - case /* uint32 height */ 2: - message.height = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: BlockEpoch, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes hash = 1; */ - if (message.hash.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.hash); - /* uint32 height = 2; */ - if (message.height !== 0) - writer.tag(2, WireType.Varint).uint32(message.height); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message chainrpc.BlockEpoch - */ -export const BlockEpoch = new BlockEpoch$Type(); -/** - * @generated ServiceType for protobuf service chainrpc.ChainNotifier - */ -export const ChainNotifier = new ServiceType("chainrpc.ChainNotifier", [ - { name: "RegisterConfirmationsNtfn", serverStreaming: true, options: {}, I: ConfRequest, O: ConfEvent }, - { name: "RegisterSpendNtfn", serverStreaming: true, options: {}, I: SpendRequest, O: SpendEvent }, - { name: "RegisterBlockEpochNtfn", serverStreaming: true, options: {}, I: BlockEpoch, O: BlockEpoch } -]); +// @generated by protobuf-ts 2.8.1 +// @generated from protobuf file "chainnotifier.proto" (package "chainrpc", syntax proto3) +// tslint:disable +import { ServiceType } from "@protobuf-ts/runtime-rpc"; +import type { BinaryWriteOptions } from "@protobuf-ts/runtime"; +import type { IBinaryWriter } from "@protobuf-ts/runtime"; +import { WireType } from "@protobuf-ts/runtime"; +import type { BinaryReadOptions } from "@protobuf-ts/runtime"; +import type { IBinaryReader } from "@protobuf-ts/runtime"; +import { UnknownFieldHandler } from "@protobuf-ts/runtime"; +import type { PartialMessage } from "@protobuf-ts/runtime"; +import { reflectionMergePartial } from "@protobuf-ts/runtime"; +import { MESSAGE_TYPE } from "@protobuf-ts/runtime"; +import { MessageType } from "@protobuf-ts/runtime"; +/** + * @generated from protobuf message chainrpc.ConfRequest + */ +export interface ConfRequest { + /** + * + * The transaction hash for which we should request a confirmation notification + * for. If set to a hash of all zeros, then the confirmation notification will + * be requested for the script instead. + * + * @generated from protobuf field: bytes txid = 1; + */ + txid: Uint8Array; + /** + * + * An output script within a transaction with the hash above which will be used + * by light clients to match block filters. If the transaction hash is set to a + * hash of all zeros, then a confirmation notification will be requested for + * this script instead. + * + * @generated from protobuf field: bytes script = 2; + */ + script: Uint8Array; + /** + * + * The number of desired confirmations the transaction/output script should + * reach before dispatching a confirmation notification. + * + * @generated from protobuf field: uint32 num_confs = 3; + */ + numConfs: number; + /** + * + * The earliest height in the chain for which the transaction/output script + * could have been included in a block. This should in most cases be set to the + * broadcast height of the transaction/output script. + * + * @generated from protobuf field: uint32 height_hint = 4; + */ + heightHint: number; + /** + * + * If true, then the block that mines the specified txid/script will be + * included in eventual the notification event. + * + * @generated from protobuf field: bool include_block = 5; + */ + includeBlock: boolean; +} +/** + * @generated from protobuf message chainrpc.ConfDetails + */ +export interface ConfDetails { + /** + * The raw bytes of the confirmed transaction. + * + * @generated from protobuf field: bytes raw_tx = 1; + */ + rawTx: Uint8Array; + /** + * The hash of the block in which the confirmed transaction was included in. + * + * @generated from protobuf field: bytes block_hash = 2; + */ + blockHash: Uint8Array; + /** + * The height of the block in which the confirmed transaction was included + * in. + * + * @generated from protobuf field: uint32 block_height = 3; + */ + blockHeight: number; + /** + * The index of the confirmed transaction within the block. + * + * @generated from protobuf field: uint32 tx_index = 4; + */ + txIndex: number; + /** + * + * The raw bytes of the block that mined the transaction. Only included if + * include_block was set in the request. + * + * @generated from protobuf field: bytes raw_block = 5; + */ + rawBlock: Uint8Array; +} +/** + * TODO(wilmer): need to know how the client will use this first. + * + * @generated from protobuf message chainrpc.Reorg + */ +export interface Reorg { +} +/** + * @generated from protobuf message chainrpc.ConfEvent + */ +export interface ConfEvent { + /** + * @generated from protobuf oneof: event + */ + event: { + oneofKind: "conf"; + /** + * + * An event that includes the confirmation details of the request + * (txid/ouput script). + * + * @generated from protobuf field: chainrpc.ConfDetails conf = 1; + */ + conf: ConfDetails; + } | { + oneofKind: "reorg"; + /** + * + * An event send when the transaction of the request is reorged out of the + * chain. + * + * @generated from protobuf field: chainrpc.Reorg reorg = 2; + */ + reorg: Reorg; + } | { + oneofKind: undefined; + }; +} +/** + * @generated from protobuf message chainrpc.Outpoint + */ +export interface Outpoint { + /** + * The hash of the transaction. + * + * @generated from protobuf field: bytes hash = 1; + */ + hash: Uint8Array; + /** + * The index of the output within the transaction. + * + * @generated from protobuf field: uint32 index = 2; + */ + index: number; +} +/** + * @generated from protobuf message chainrpc.SpendRequest + */ +export interface SpendRequest { + /** + * + * The outpoint for which we should request a spend notification for. If set to + * a zero outpoint, then the spend notification will be requested for the + * script instead. A zero or nil outpoint is not supported for Taproot spends + * because the output script cannot reliably be computed from the witness alone + * and the spent output script is not always available in the rescan context. + * So an outpoint must _always_ be specified when registering a spend + * notification for a Taproot output. + * + * @generated from protobuf field: chainrpc.Outpoint outpoint = 1; + */ + outpoint?: Outpoint; + /** + * + * The output script for the outpoint above. This will be used by light clients + * to match block filters. If the outpoint is set to a zero outpoint, then a + * spend notification will be requested for this script instead. + * + * @generated from protobuf field: bytes script = 2; + */ + script: Uint8Array; + /** + * + * The earliest height in the chain for which the outpoint/output script could + * have been spent. This should in most cases be set to the broadcast height of + * the outpoint/output script. + * + * @generated from protobuf field: uint32 height_hint = 3; + */ + heightHint: number; +} +/** + * @generated from protobuf message chainrpc.SpendDetails + */ +export interface SpendDetails { + /** + * The outpoint was that spent. + * + * @generated from protobuf field: chainrpc.Outpoint spending_outpoint = 1; + */ + spendingOutpoint?: Outpoint; + /** + * The raw bytes of the spending transaction. + * + * @generated from protobuf field: bytes raw_spending_tx = 2; + */ + rawSpendingTx: Uint8Array; + /** + * The hash of the spending transaction. + * + * @generated from protobuf field: bytes spending_tx_hash = 3; + */ + spendingTxHash: Uint8Array; + /** + * The input of the spending transaction that fulfilled the spend request. + * + * @generated from protobuf field: uint32 spending_input_index = 4; + */ + spendingInputIndex: number; + /** + * The height at which the spending transaction was included in a block. + * + * @generated from protobuf field: uint32 spending_height = 5; + */ + spendingHeight: number; +} +/** + * @generated from protobuf message chainrpc.SpendEvent + */ +export interface SpendEvent { + /** + * @generated from protobuf oneof: event + */ + event: { + oneofKind: "spend"; + /** + * + * An event that includes the details of the spending transaction of the + * request (outpoint/output script). + * + * @generated from protobuf field: chainrpc.SpendDetails spend = 1; + */ + spend: SpendDetails; + } | { + oneofKind: "reorg"; + /** + * + * An event sent when the spending transaction of the request was + * reorged out of the chain. + * + * @generated from protobuf field: chainrpc.Reorg reorg = 2; + */ + reorg: Reorg; + } | { + oneofKind: undefined; + }; +} +/** + * @generated from protobuf message chainrpc.BlockEpoch + */ +export interface BlockEpoch { + /** + * The hash of the block. + * + * @generated from protobuf field: bytes hash = 1; + */ + hash: Uint8Array; + /** + * The height of the block. + * + * @generated from protobuf field: uint32 height = 2; + */ + height: number; +} +// @generated message type with reflection information, may provide speed optimized methods +class ConfRequest$Type extends MessageType { + constructor() { + super("chainrpc.ConfRequest", [ + { no: 1, name: "txid", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "script", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "num_confs", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 4, name: "height_hint", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 5, name: "include_block", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): ConfRequest { + const message = { txid: new Uint8Array(0), script: new Uint8Array(0), numConfs: 0, heightHint: 0, includeBlock: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ConfRequest): ConfRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes txid */ 1: + message.txid = reader.bytes(); + break; + case /* bytes script */ 2: + message.script = reader.bytes(); + break; + case /* uint32 num_confs */ 3: + message.numConfs = reader.uint32(); + break; + case /* uint32 height_hint */ 4: + message.heightHint = reader.uint32(); + break; + case /* bool include_block */ 5: + message.includeBlock = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ConfRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes txid = 1; */ + if (message.txid.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.txid); + /* bytes script = 2; */ + if (message.script.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.script); + /* uint32 num_confs = 3; */ + if (message.numConfs !== 0) + writer.tag(3, WireType.Varint).uint32(message.numConfs); + /* uint32 height_hint = 4; */ + if (message.heightHint !== 0) + writer.tag(4, WireType.Varint).uint32(message.heightHint); + /* bool include_block = 5; */ + if (message.includeBlock !== false) + writer.tag(5, WireType.Varint).bool(message.includeBlock); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message chainrpc.ConfRequest + */ +export const ConfRequest = new ConfRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ConfDetails$Type extends MessageType { + constructor() { + super("chainrpc.ConfDetails", [ + { no: 1, name: "raw_tx", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "block_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "block_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 4, name: "tx_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 5, name: "raw_block", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): ConfDetails { + const message = { rawTx: new Uint8Array(0), blockHash: new Uint8Array(0), blockHeight: 0, txIndex: 0, rawBlock: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ConfDetails): ConfDetails { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes raw_tx */ 1: + message.rawTx = reader.bytes(); + break; + case /* bytes block_hash */ 2: + message.blockHash = reader.bytes(); + break; + case /* uint32 block_height */ 3: + message.blockHeight = reader.uint32(); + break; + case /* uint32 tx_index */ 4: + message.txIndex = reader.uint32(); + break; + case /* bytes raw_block */ 5: + message.rawBlock = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ConfDetails, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes raw_tx = 1; */ + if (message.rawTx.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.rawTx); + /* bytes block_hash = 2; */ + if (message.blockHash.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.blockHash); + /* uint32 block_height = 3; */ + if (message.blockHeight !== 0) + writer.tag(3, WireType.Varint).uint32(message.blockHeight); + /* uint32 tx_index = 4; */ + if (message.txIndex !== 0) + writer.tag(4, WireType.Varint).uint32(message.txIndex); + /* bytes raw_block = 5; */ + if (message.rawBlock.length) + writer.tag(5, WireType.LengthDelimited).bytes(message.rawBlock); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message chainrpc.ConfDetails + */ +export const ConfDetails = new ConfDetails$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class Reorg$Type extends MessageType { + constructor() { + super("chainrpc.Reorg", []); + } + create(value?: PartialMessage): Reorg { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Reorg): Reorg { + return target ?? this.create(); + } + internalBinaryWrite(message: Reorg, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message chainrpc.Reorg + */ +export const Reorg = new Reorg$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ConfEvent$Type extends MessageType { + constructor() { + super("chainrpc.ConfEvent", [ + { no: 1, name: "conf", kind: "message", oneof: "event", T: () => ConfDetails }, + { no: 2, name: "reorg", kind: "message", oneof: "event", T: () => Reorg } + ]); + } + create(value?: PartialMessage): ConfEvent { + const message = { event: { oneofKind: undefined } }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ConfEvent): ConfEvent { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* chainrpc.ConfDetails conf */ 1: + message.event = { + oneofKind: "conf", + conf: ConfDetails.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).conf) + }; + break; + case /* chainrpc.Reorg reorg */ 2: + message.event = { + oneofKind: "reorg", + reorg: Reorg.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).reorg) + }; + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ConfEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* chainrpc.ConfDetails conf = 1; */ + if (message.event.oneofKind === "conf") + ConfDetails.internalBinaryWrite(message.event.conf, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* chainrpc.Reorg reorg = 2; */ + if (message.event.oneofKind === "reorg") + Reorg.internalBinaryWrite(message.event.reorg, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message chainrpc.ConfEvent + */ +export const ConfEvent = new ConfEvent$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class Outpoint$Type extends MessageType { + constructor() { + super("chainrpc.Outpoint", [ + { no: 1, name: "hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } + ]); + } + create(value?: PartialMessage): Outpoint { + const message = { hash: new Uint8Array(0), index: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Outpoint): Outpoint { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes hash */ 1: + message.hash = reader.bytes(); + break; + case /* uint32 index */ 2: + message.index = reader.uint32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: Outpoint, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes hash = 1; */ + if (message.hash.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.hash); + /* uint32 index = 2; */ + if (message.index !== 0) + writer.tag(2, WireType.Varint).uint32(message.index); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message chainrpc.Outpoint + */ +export const Outpoint = new Outpoint$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SpendRequest$Type extends MessageType { + constructor() { + super("chainrpc.SpendRequest", [ + { no: 1, name: "outpoint", kind: "message", T: () => Outpoint }, + { no: 2, name: "script", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "height_hint", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } + ]); + } + create(value?: PartialMessage): SpendRequest { + const message = { script: new Uint8Array(0), heightHint: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SpendRequest): SpendRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* chainrpc.Outpoint outpoint */ 1: + message.outpoint = Outpoint.internalBinaryRead(reader, reader.uint32(), options, message.outpoint); + break; + case /* bytes script */ 2: + message.script = reader.bytes(); + break; + case /* uint32 height_hint */ 3: + message.heightHint = reader.uint32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: SpendRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* chainrpc.Outpoint outpoint = 1; */ + if (message.outpoint) + Outpoint.internalBinaryWrite(message.outpoint, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* bytes script = 2; */ + if (message.script.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.script); + /* uint32 height_hint = 3; */ + if (message.heightHint !== 0) + writer.tag(3, WireType.Varint).uint32(message.heightHint); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message chainrpc.SpendRequest + */ +export const SpendRequest = new SpendRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SpendDetails$Type extends MessageType { + constructor() { + super("chainrpc.SpendDetails", [ + { no: 1, name: "spending_outpoint", kind: "message", T: () => Outpoint }, + { no: 2, name: "raw_spending_tx", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "spending_tx_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 4, name: "spending_input_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 5, name: "spending_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } + ]); + } + create(value?: PartialMessage): SpendDetails { + const message = { rawSpendingTx: new Uint8Array(0), spendingTxHash: new Uint8Array(0), spendingInputIndex: 0, spendingHeight: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SpendDetails): SpendDetails { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* chainrpc.Outpoint spending_outpoint */ 1: + message.spendingOutpoint = Outpoint.internalBinaryRead(reader, reader.uint32(), options, message.spendingOutpoint); + break; + case /* bytes raw_spending_tx */ 2: + message.rawSpendingTx = reader.bytes(); + break; + case /* bytes spending_tx_hash */ 3: + message.spendingTxHash = reader.bytes(); + break; + case /* uint32 spending_input_index */ 4: + message.spendingInputIndex = reader.uint32(); + break; + case /* uint32 spending_height */ 5: + message.spendingHeight = reader.uint32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: SpendDetails, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* chainrpc.Outpoint spending_outpoint = 1; */ + if (message.spendingOutpoint) + Outpoint.internalBinaryWrite(message.spendingOutpoint, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* bytes raw_spending_tx = 2; */ + if (message.rawSpendingTx.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.rawSpendingTx); + /* bytes spending_tx_hash = 3; */ + if (message.spendingTxHash.length) + writer.tag(3, WireType.LengthDelimited).bytes(message.spendingTxHash); + /* uint32 spending_input_index = 4; */ + if (message.spendingInputIndex !== 0) + writer.tag(4, WireType.Varint).uint32(message.spendingInputIndex); + /* uint32 spending_height = 5; */ + if (message.spendingHeight !== 0) + writer.tag(5, WireType.Varint).uint32(message.spendingHeight); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message chainrpc.SpendDetails + */ +export const SpendDetails = new SpendDetails$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SpendEvent$Type extends MessageType { + constructor() { + super("chainrpc.SpendEvent", [ + { no: 1, name: "spend", kind: "message", oneof: "event", T: () => SpendDetails }, + { no: 2, name: "reorg", kind: "message", oneof: "event", T: () => Reorg } + ]); + } + create(value?: PartialMessage): SpendEvent { + const message = { event: { oneofKind: undefined } }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SpendEvent): SpendEvent { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* chainrpc.SpendDetails spend */ 1: + message.event = { + oneofKind: "spend", + spend: SpendDetails.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).spend) + }; + break; + case /* chainrpc.Reorg reorg */ 2: + message.event = { + oneofKind: "reorg", + reorg: Reorg.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).reorg) + }; + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: SpendEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* chainrpc.SpendDetails spend = 1; */ + if (message.event.oneofKind === "spend") + SpendDetails.internalBinaryWrite(message.event.spend, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* chainrpc.Reorg reorg = 2; */ + if (message.event.oneofKind === "reorg") + Reorg.internalBinaryWrite(message.event.reorg, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message chainrpc.SpendEvent + */ +export const SpendEvent = new SpendEvent$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class BlockEpoch$Type extends MessageType { + constructor() { + super("chainrpc.BlockEpoch", [ + { no: 1, name: "hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } + ]); + } + create(value?: PartialMessage): BlockEpoch { + const message = { hash: new Uint8Array(0), height: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BlockEpoch): BlockEpoch { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes hash */ 1: + message.hash = reader.bytes(); + break; + case /* uint32 height */ 2: + message.height = reader.uint32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: BlockEpoch, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes hash = 1; */ + if (message.hash.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.hash); + /* uint32 height = 2; */ + if (message.height !== 0) + writer.tag(2, WireType.Varint).uint32(message.height); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message chainrpc.BlockEpoch + */ +export const BlockEpoch = new BlockEpoch$Type(); +/** + * @generated ServiceType for protobuf service chainrpc.ChainNotifier + */ +export const ChainNotifier = new ServiceType("chainrpc.ChainNotifier", [ + { name: "RegisterConfirmationsNtfn", serverStreaming: true, options: {}, I: ConfRequest, O: ConfEvent }, + { name: "RegisterSpendNtfn", serverStreaming: true, options: {}, I: SpendRequest, O: SpendEvent }, + { name: "RegisterBlockEpochNtfn", serverStreaming: true, options: {}, I: BlockEpoch, O: BlockEpoch } +]); diff --git a/proto/lnd/invoices.client.ts b/proto/lnd/invoices.client.ts index 1c1b66b5..b529cca1 100644 --- a/proto/lnd/invoices.client.ts +++ b/proto/lnd/invoices.client.ts @@ -1,139 +1,139 @@ -// @generated by protobuf-ts 2.8.1 -// @generated from protobuf file "invoices.proto" (package "invoicesrpc", syntax proto3) -// tslint:disable -import type { RpcTransport } from "@protobuf-ts/runtime-rpc"; -import type { ServiceInfo } from "@protobuf-ts/runtime-rpc"; -import { Invoices } from "./invoices.js"; -import type { LookupInvoiceMsg } from "./invoices.js"; -import type { SettleInvoiceResp } from "./invoices.js"; -import type { SettleInvoiceMsg } from "./invoices.js"; -import type { AddHoldInvoiceResp } from "./invoices.js"; -import type { AddHoldInvoiceRequest } from "./invoices.js"; -import type { CancelInvoiceResp } from "./invoices.js"; -import type { CancelInvoiceMsg } from "./invoices.js"; -import type { UnaryCall } from "@protobuf-ts/runtime-rpc"; -import { stackIntercept } from "@protobuf-ts/runtime-rpc"; -import type { Invoice } from "./lightning.js"; -import type { SubscribeSingleInvoiceRequest } from "./invoices.js"; -import type { ServerStreamingCall } from "@protobuf-ts/runtime-rpc"; -import type { RpcOptions } from "@protobuf-ts/runtime-rpc"; -/** - * Invoices is a service that can be used to create, accept, settle and cancel - * invoices. - * - * @generated from protobuf service invoicesrpc.Invoices - */ -export interface IInvoicesClient { - /** - * - * SubscribeSingleInvoice returns a uni-directional stream (server -> client) - * to notify the client of state transitions of the specified invoice. - * Initially the current invoice state is always sent out. - * - * @generated from protobuf rpc: SubscribeSingleInvoice(invoicesrpc.SubscribeSingleInvoiceRequest) returns (stream lnrpc.Invoice); - */ - subscribeSingleInvoice(input: SubscribeSingleInvoiceRequest, options?: RpcOptions): ServerStreamingCall; - /** - * - * CancelInvoice cancels a currently open invoice. If the invoice is already - * canceled, this call will succeed. If the invoice is already settled, it will - * fail. - * - * @generated from protobuf rpc: CancelInvoice(invoicesrpc.CancelInvoiceMsg) returns (invoicesrpc.CancelInvoiceResp); - */ - cancelInvoice(input: CancelInvoiceMsg, options?: RpcOptions): UnaryCall; - /** - * - * AddHoldInvoice creates a hold invoice. It ties the invoice to the hash - * supplied in the request. - * - * @generated from protobuf rpc: AddHoldInvoice(invoicesrpc.AddHoldInvoiceRequest) returns (invoicesrpc.AddHoldInvoiceResp); - */ - addHoldInvoice(input: AddHoldInvoiceRequest, options?: RpcOptions): UnaryCall; - /** - * - * SettleInvoice settles an accepted invoice. If the invoice is already - * settled, this call will succeed. - * - * @generated from protobuf rpc: SettleInvoice(invoicesrpc.SettleInvoiceMsg) returns (invoicesrpc.SettleInvoiceResp); - */ - settleInvoice(input: SettleInvoiceMsg, options?: RpcOptions): UnaryCall; - /** - * - * LookupInvoiceV2 attempts to look up at invoice. An invoice can be refrenced - * using either its payment hash, payment address, or set ID. - * - * @generated from protobuf rpc: LookupInvoiceV2(invoicesrpc.LookupInvoiceMsg) returns (lnrpc.Invoice); - */ - lookupInvoiceV2(input: LookupInvoiceMsg, options?: RpcOptions): UnaryCall; -} -/** - * Invoices is a service that can be used to create, accept, settle and cancel - * invoices. - * - * @generated from protobuf service invoicesrpc.Invoices - */ -export class InvoicesClient implements IInvoicesClient, ServiceInfo { - typeName = Invoices.typeName; - methods = Invoices.methods; - options = Invoices.options; - constructor(private readonly _transport: RpcTransport) { - } - /** - * - * SubscribeSingleInvoice returns a uni-directional stream (server -> client) - * to notify the client of state transitions of the specified invoice. - * Initially the current invoice state is always sent out. - * - * @generated from protobuf rpc: SubscribeSingleInvoice(invoicesrpc.SubscribeSingleInvoiceRequest) returns (stream lnrpc.Invoice); - */ - subscribeSingleInvoice(input: SubscribeSingleInvoiceRequest, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[0], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } - /** - * - * CancelInvoice cancels a currently open invoice. If the invoice is already - * canceled, this call will succeed. If the invoice is already settled, it will - * fail. - * - * @generated from protobuf rpc: CancelInvoice(invoicesrpc.CancelInvoiceMsg) returns (invoicesrpc.CancelInvoiceResp); - */ - cancelInvoice(input: CancelInvoiceMsg, options?: RpcOptions): UnaryCall { - const method = this.methods[1], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * AddHoldInvoice creates a hold invoice. It ties the invoice to the hash - * supplied in the request. - * - * @generated from protobuf rpc: AddHoldInvoice(invoicesrpc.AddHoldInvoiceRequest) returns (invoicesrpc.AddHoldInvoiceResp); - */ - addHoldInvoice(input: AddHoldInvoiceRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[2], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * SettleInvoice settles an accepted invoice. If the invoice is already - * settled, this call will succeed. - * - * @generated from protobuf rpc: SettleInvoice(invoicesrpc.SettleInvoiceMsg) returns (invoicesrpc.SettleInvoiceResp); - */ - settleInvoice(input: SettleInvoiceMsg, options?: RpcOptions): UnaryCall { - const method = this.methods[3], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * LookupInvoiceV2 attempts to look up at invoice. An invoice can be refrenced - * using either its payment hash, payment address, or set ID. - * - * @generated from protobuf rpc: LookupInvoiceV2(invoicesrpc.LookupInvoiceMsg) returns (lnrpc.Invoice); - */ - lookupInvoiceV2(input: LookupInvoiceMsg, options?: RpcOptions): UnaryCall { - const method = this.methods[4], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } -} +// @generated by protobuf-ts 2.8.1 +// @generated from protobuf file "invoices.proto" (package "invoicesrpc", syntax proto3) +// tslint:disable +import type { RpcTransport } from "@protobuf-ts/runtime-rpc"; +import type { ServiceInfo } from "@protobuf-ts/runtime-rpc"; +import { Invoices } from "./invoices.js"; +import type { LookupInvoiceMsg } from "./invoices.js"; +import type { SettleInvoiceResp } from "./invoices.js"; +import type { SettleInvoiceMsg } from "./invoices.js"; +import type { AddHoldInvoiceResp } from "./invoices.js"; +import type { AddHoldInvoiceRequest } from "./invoices.js"; +import type { CancelInvoiceResp } from "./invoices.js"; +import type { CancelInvoiceMsg } from "./invoices.js"; +import type { UnaryCall } from "@protobuf-ts/runtime-rpc"; +import { stackIntercept } from "@protobuf-ts/runtime-rpc"; +import type { Invoice } from "./lightning.js"; +import type { SubscribeSingleInvoiceRequest } from "./invoices.js"; +import type { ServerStreamingCall } from "@protobuf-ts/runtime-rpc"; +import type { RpcOptions } from "@protobuf-ts/runtime-rpc"; +/** + * Invoices is a service that can be used to create, accept, settle and cancel + * invoices. + * + * @generated from protobuf service invoicesrpc.Invoices + */ +export interface IInvoicesClient { + /** + * + * SubscribeSingleInvoice returns a uni-directional stream (server -> client) + * to notify the client of state transitions of the specified invoice. + * Initially the current invoice state is always sent out. + * + * @generated from protobuf rpc: SubscribeSingleInvoice(invoicesrpc.SubscribeSingleInvoiceRequest) returns (stream lnrpc.Invoice); + */ + subscribeSingleInvoice(input: SubscribeSingleInvoiceRequest, options?: RpcOptions): ServerStreamingCall; + /** + * + * CancelInvoice cancels a currently open invoice. If the invoice is already + * canceled, this call will succeed. If the invoice is already settled, it will + * fail. + * + * @generated from protobuf rpc: CancelInvoice(invoicesrpc.CancelInvoiceMsg) returns (invoicesrpc.CancelInvoiceResp); + */ + cancelInvoice(input: CancelInvoiceMsg, options?: RpcOptions): UnaryCall; + /** + * + * AddHoldInvoice creates a hold invoice. It ties the invoice to the hash + * supplied in the request. + * + * @generated from protobuf rpc: AddHoldInvoice(invoicesrpc.AddHoldInvoiceRequest) returns (invoicesrpc.AddHoldInvoiceResp); + */ + addHoldInvoice(input: AddHoldInvoiceRequest, options?: RpcOptions): UnaryCall; + /** + * + * SettleInvoice settles an accepted invoice. If the invoice is already + * settled, this call will succeed. + * + * @generated from protobuf rpc: SettleInvoice(invoicesrpc.SettleInvoiceMsg) returns (invoicesrpc.SettleInvoiceResp); + */ + settleInvoice(input: SettleInvoiceMsg, options?: RpcOptions): UnaryCall; + /** + * + * LookupInvoiceV2 attempts to look up at invoice. An invoice can be refrenced + * using either its payment hash, payment address, or set ID. + * + * @generated from protobuf rpc: LookupInvoiceV2(invoicesrpc.LookupInvoiceMsg) returns (lnrpc.Invoice); + */ + lookupInvoiceV2(input: LookupInvoiceMsg, options?: RpcOptions): UnaryCall; +} +/** + * Invoices is a service that can be used to create, accept, settle and cancel + * invoices. + * + * @generated from protobuf service invoicesrpc.Invoices + */ +export class InvoicesClient implements IInvoicesClient, ServiceInfo { + typeName = Invoices.typeName; + methods = Invoices.methods; + options = Invoices.options; + constructor(private readonly _transport: RpcTransport) { + } + /** + * + * SubscribeSingleInvoice returns a uni-directional stream (server -> client) + * to notify the client of state transitions of the specified invoice. + * Initially the current invoice state is always sent out. + * + * @generated from protobuf rpc: SubscribeSingleInvoice(invoicesrpc.SubscribeSingleInvoiceRequest) returns (stream lnrpc.Invoice); + */ + subscribeSingleInvoice(input: SubscribeSingleInvoiceRequest, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[0], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } + /** + * + * CancelInvoice cancels a currently open invoice. If the invoice is already + * canceled, this call will succeed. If the invoice is already settled, it will + * fail. + * + * @generated from protobuf rpc: CancelInvoice(invoicesrpc.CancelInvoiceMsg) returns (invoicesrpc.CancelInvoiceResp); + */ + cancelInvoice(input: CancelInvoiceMsg, options?: RpcOptions): UnaryCall { + const method = this.methods[1], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * AddHoldInvoice creates a hold invoice. It ties the invoice to the hash + * supplied in the request. + * + * @generated from protobuf rpc: AddHoldInvoice(invoicesrpc.AddHoldInvoiceRequest) returns (invoicesrpc.AddHoldInvoiceResp); + */ + addHoldInvoice(input: AddHoldInvoiceRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[2], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * SettleInvoice settles an accepted invoice. If the invoice is already + * settled, this call will succeed. + * + * @generated from protobuf rpc: SettleInvoice(invoicesrpc.SettleInvoiceMsg) returns (invoicesrpc.SettleInvoiceResp); + */ + settleInvoice(input: SettleInvoiceMsg, options?: RpcOptions): UnaryCall { + const method = this.methods[3], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * LookupInvoiceV2 attempts to look up at invoice. An invoice can be refrenced + * using either its payment hash, payment address, or set ID. + * + * @generated from protobuf rpc: LookupInvoiceV2(invoicesrpc.LookupInvoiceMsg) returns (lnrpc.Invoice); + */ + lookupInvoiceV2(input: LookupInvoiceMsg, options?: RpcOptions): UnaryCall { + const method = this.methods[4], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } +} diff --git a/proto/lnd/invoices.ts b/proto/lnd/invoices.ts index 79f9d127..4155cf06 100644 --- a/proto/lnd/invoices.ts +++ b/proto/lnd/invoices.ts @@ -1,690 +1,690 @@ -// @generated by protobuf-ts 2.8.1 -// @generated from protobuf file "invoices.proto" (package "invoicesrpc", syntax proto3) -// tslint:disable -import { Invoice } from "./lightning.js"; -import { ServiceType } from "@protobuf-ts/runtime-rpc"; -import type { BinaryWriteOptions } from "@protobuf-ts/runtime"; -import type { IBinaryWriter } from "@protobuf-ts/runtime"; -import { WireType } from "@protobuf-ts/runtime"; -import type { BinaryReadOptions } from "@protobuf-ts/runtime"; -import type { IBinaryReader } from "@protobuf-ts/runtime"; -import { UnknownFieldHandler } from "@protobuf-ts/runtime"; -import type { PartialMessage } from "@protobuf-ts/runtime"; -import { reflectionMergePartial } from "@protobuf-ts/runtime"; -import { MESSAGE_TYPE } from "@protobuf-ts/runtime"; -import { MessageType } from "@protobuf-ts/runtime"; -import { RouteHint } from "./lightning.js"; -/** - * @generated from protobuf message invoicesrpc.CancelInvoiceMsg - */ -export interface CancelInvoiceMsg { - /** - * Hash corresponding to the (hold) invoice to cancel. When using - * REST, this field must be encoded as base64. - * - * @generated from protobuf field: bytes payment_hash = 1; - */ - paymentHash: Uint8Array; -} -/** - * @generated from protobuf message invoicesrpc.CancelInvoiceResp - */ -export interface CancelInvoiceResp { -} -/** - * @generated from protobuf message invoicesrpc.AddHoldInvoiceRequest - */ -export interface AddHoldInvoiceRequest { - /** - * - * 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. - * - * @generated from protobuf field: string memo = 1; - */ - memo: string; - /** - * The hash of the preimage - * - * @generated from protobuf field: bytes hash = 2; - */ - hash: Uint8Array; - /** - * - * The value of this invoice in satoshis - * - * The fields value and value_msat are mutually exclusive. - * - * @generated from protobuf field: int64 value = 3; - */ - value: bigint; - /** - * - * The value of this invoice in millisatoshis - * - * The fields value and value_msat are mutually exclusive. - * - * @generated from protobuf field: int64 value_msat = 10; - */ - valueMsat: bigint; - /** - * - * 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. - * - * @generated from protobuf field: bytes description_hash = 4; - */ - descriptionHash: Uint8Array; - /** - * Payment request expiry time in seconds. Default is 3600 (1 hour). - * - * @generated from protobuf field: int64 expiry = 5; - */ - expiry: bigint; - /** - * Fallback on-chain address. - * - * @generated from protobuf field: string fallback_addr = 6; - */ - fallbackAddr: string; - /** - * Delta to use for the time-lock of the CLTV extended to the final hop. - * - * @generated from protobuf field: uint64 cltv_expiry = 7; - */ - cltvExpiry: bigint; - /** - * - * Route hints that can each be individually used to assist in reaching the - * invoice's destination. - * - * @generated from protobuf field: repeated lnrpc.RouteHint route_hints = 8; - */ - routeHints: RouteHint[]; - /** - * Whether this invoice should include routing hints for private channels. - * - * @generated from protobuf field: bool private = 9; - */ - private: boolean; -} -/** - * @generated from protobuf message invoicesrpc.AddHoldInvoiceResp - */ -export interface AddHoldInvoiceResp { - /** - * - * 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. - * - * @generated from protobuf field: string payment_request = 1; - */ - paymentRequest: string; - /** - * - * 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. - * - * @generated from protobuf field: uint64 add_index = 2; - */ - addIndex: bigint; - /** - * - * 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. - * - * @generated from protobuf field: bytes payment_addr = 3; - */ - paymentAddr: Uint8Array; -} -/** - * @generated from protobuf message invoicesrpc.SettleInvoiceMsg - */ -export interface SettleInvoiceMsg { - /** - * Externally discovered pre-image that should be used to settle the hold - * invoice. - * - * @generated from protobuf field: bytes preimage = 1; - */ - preimage: Uint8Array; -} -/** - * @generated from protobuf message invoicesrpc.SettleInvoiceResp - */ -export interface SettleInvoiceResp { -} -/** - * @generated from protobuf message invoicesrpc.SubscribeSingleInvoiceRequest - */ -export interface SubscribeSingleInvoiceRequest { - /** - * Hash corresponding to the (hold) invoice to subscribe to. When using - * REST, this field must be encoded as base64url. - * - * @generated from protobuf field: bytes r_hash = 2; - */ - rHash: Uint8Array; -} -/** - * @generated from protobuf message invoicesrpc.LookupInvoiceMsg - */ -export interface LookupInvoiceMsg { - /** - * @generated from protobuf oneof: invoice_ref - */ - invoiceRef: { - oneofKind: "paymentHash"; - /** - * When using REST, this field must be encoded as base64. - * - * @generated from protobuf field: bytes payment_hash = 1; - */ - paymentHash: Uint8Array; - } | { - oneofKind: "paymentAddr"; - /** - * @generated from protobuf field: bytes payment_addr = 2; - */ - paymentAddr: Uint8Array; - } | { - oneofKind: "setId"; - /** - * @generated from protobuf field: bytes set_id = 3; - */ - setId: Uint8Array; - } | { - oneofKind: undefined; - }; - /** - * @generated from protobuf field: invoicesrpc.LookupModifier lookup_modifier = 4; - */ - lookupModifier: LookupModifier; -} -/** - * @generated from protobuf enum invoicesrpc.LookupModifier - */ -export enum LookupModifier { - /** - * The default look up modifier, no look up behavior is changed. - * - * @generated from protobuf enum value: DEFAULT = 0; - */ - DEFAULT = 0, - /** - * - * Indicates that when a look up is done based on a set_id, then only that set - * of HTLCs related to that set ID should be returned. - * - * @generated from protobuf enum value: HTLC_SET_ONLY = 1; - */ - HTLC_SET_ONLY = 1, - /** - * - * Indicates that when a look up is done using a payment_addr, then no HTLCs - * related to the payment_addr should be returned. This is useful when one - * wants to be able to obtain the set of associated setIDs with a given - * invoice, then look up the sub-invoices "projected" by that set ID. - * - * @generated from protobuf enum value: HTLC_SET_BLANK = 2; - */ - HTLC_SET_BLANK = 2 -} -// @generated message type with reflection information, may provide speed optimized methods -class CancelInvoiceMsg$Type extends MessageType { - constructor() { - super("invoicesrpc.CancelInvoiceMsg", [ - { no: 1, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): CancelInvoiceMsg { - const message = { paymentHash: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CancelInvoiceMsg): CancelInvoiceMsg { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes payment_hash */ 1: - message.paymentHash = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: CancelInvoiceMsg, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes payment_hash = 1; */ - if (message.paymentHash.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.paymentHash); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message invoicesrpc.CancelInvoiceMsg - */ -export const CancelInvoiceMsg = new CancelInvoiceMsg$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class CancelInvoiceResp$Type extends MessageType { - constructor() { - super("invoicesrpc.CancelInvoiceResp", []); - } - create(value?: PartialMessage): CancelInvoiceResp { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CancelInvoiceResp): CancelInvoiceResp { - return target ?? this.create(); - } - internalBinaryWrite(message: CancelInvoiceResp, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message invoicesrpc.CancelInvoiceResp - */ -export const CancelInvoiceResp = new CancelInvoiceResp$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class AddHoldInvoiceRequest$Type extends MessageType { - constructor() { - super("invoicesrpc.AddHoldInvoiceRequest", [ - { no: 1, name: "memo", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "value", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 10, name: "value_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "description_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 5, name: "expiry", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "fallback_addr", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 7, name: "cltv_expiry", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 8, name: "route_hints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => RouteHint }, - { no: 9, name: "private", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): AddHoldInvoiceRequest { - const message = { memo: "", hash: new Uint8Array(0), value: 0n, valueMsat: 0n, descriptionHash: new Uint8Array(0), expiry: 0n, fallbackAddr: "", cltvExpiry: 0n, routeHints: [], private: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AddHoldInvoiceRequest): AddHoldInvoiceRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string memo */ 1: - message.memo = reader.string(); - break; - case /* bytes hash */ 2: - message.hash = reader.bytes(); - break; - case /* int64 value */ 3: - message.value = reader.int64().toBigInt(); - break; - case /* int64 value_msat */ 10: - message.valueMsat = reader.int64().toBigInt(); - break; - case /* bytes description_hash */ 4: - message.descriptionHash = reader.bytes(); - break; - case /* int64 expiry */ 5: - message.expiry = reader.int64().toBigInt(); - break; - case /* string fallback_addr */ 6: - message.fallbackAddr = reader.string(); - break; - case /* uint64 cltv_expiry */ 7: - message.cltvExpiry = reader.uint64().toBigInt(); - break; - case /* repeated lnrpc.RouteHint route_hints */ 8: - message.routeHints.push(RouteHint.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* bool private */ 9: - message.private = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: AddHoldInvoiceRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string memo = 1; */ - if (message.memo !== "") - writer.tag(1, WireType.LengthDelimited).string(message.memo); - /* bytes hash = 2; */ - if (message.hash.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.hash); - /* int64 value = 3; */ - if (message.value !== 0n) - writer.tag(3, WireType.Varint).int64(message.value); - /* int64 value_msat = 10; */ - if (message.valueMsat !== 0n) - writer.tag(10, WireType.Varint).int64(message.valueMsat); - /* bytes description_hash = 4; */ - if (message.descriptionHash.length) - writer.tag(4, WireType.LengthDelimited).bytes(message.descriptionHash); - /* int64 expiry = 5; */ - if (message.expiry !== 0n) - writer.tag(5, WireType.Varint).int64(message.expiry); - /* string fallback_addr = 6; */ - if (message.fallbackAddr !== "") - writer.tag(6, WireType.LengthDelimited).string(message.fallbackAddr); - /* uint64 cltv_expiry = 7; */ - if (message.cltvExpiry !== 0n) - writer.tag(7, WireType.Varint).uint64(message.cltvExpiry); - /* repeated lnrpc.RouteHint route_hints = 8; */ - for (let i = 0; i < message.routeHints.length; i++) - RouteHint.internalBinaryWrite(message.routeHints[i], writer.tag(8, WireType.LengthDelimited).fork(), options).join(); - /* bool private = 9; */ - if (message.private !== false) - writer.tag(9, WireType.Varint).bool(message.private); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message invoicesrpc.AddHoldInvoiceRequest - */ -export const AddHoldInvoiceRequest = new AddHoldInvoiceRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class AddHoldInvoiceResp$Type extends MessageType { - constructor() { - super("invoicesrpc.AddHoldInvoiceResp", [ - { no: 1, name: "payment_request", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "add_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): AddHoldInvoiceResp { - const message = { paymentRequest: "", addIndex: 0n, paymentAddr: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AddHoldInvoiceResp): AddHoldInvoiceResp { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string payment_request */ 1: - message.paymentRequest = reader.string(); - break; - case /* uint64 add_index */ 2: - message.addIndex = reader.uint64().toBigInt(); - break; - case /* bytes payment_addr */ 3: - message.paymentAddr = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: AddHoldInvoiceResp, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string payment_request = 1; */ - if (message.paymentRequest !== "") - writer.tag(1, WireType.LengthDelimited).string(message.paymentRequest); - /* uint64 add_index = 2; */ - if (message.addIndex !== 0n) - writer.tag(2, WireType.Varint).uint64(message.addIndex); - /* bytes payment_addr = 3; */ - if (message.paymentAddr.length) - writer.tag(3, WireType.LengthDelimited).bytes(message.paymentAddr); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message invoicesrpc.AddHoldInvoiceResp - */ -export const AddHoldInvoiceResp = new AddHoldInvoiceResp$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SettleInvoiceMsg$Type extends MessageType { - constructor() { - super("invoicesrpc.SettleInvoiceMsg", [ - { no: 1, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): SettleInvoiceMsg { - const message = { preimage: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SettleInvoiceMsg): SettleInvoiceMsg { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes preimage */ 1: - message.preimage = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: SettleInvoiceMsg, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes preimage = 1; */ - if (message.preimage.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.preimage); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message invoicesrpc.SettleInvoiceMsg - */ -export const SettleInvoiceMsg = new SettleInvoiceMsg$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SettleInvoiceResp$Type extends MessageType { - constructor() { - super("invoicesrpc.SettleInvoiceResp", []); - } - create(value?: PartialMessage): SettleInvoiceResp { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SettleInvoiceResp): SettleInvoiceResp { - return target ?? this.create(); - } - internalBinaryWrite(message: SettleInvoiceResp, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message invoicesrpc.SettleInvoiceResp - */ -export const SettleInvoiceResp = new SettleInvoiceResp$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SubscribeSingleInvoiceRequest$Type extends MessageType { - constructor() { - super("invoicesrpc.SubscribeSingleInvoiceRequest", [ - { no: 2, name: "r_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): SubscribeSingleInvoiceRequest { - const message = { rHash: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SubscribeSingleInvoiceRequest): SubscribeSingleInvoiceRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes r_hash */ 2: - message.rHash = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: SubscribeSingleInvoiceRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes r_hash = 2; */ - if (message.rHash.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.rHash); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message invoicesrpc.SubscribeSingleInvoiceRequest - */ -export const SubscribeSingleInvoiceRequest = new SubscribeSingleInvoiceRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class LookupInvoiceMsg$Type extends MessageType { - constructor() { - super("invoicesrpc.LookupInvoiceMsg", [ - { no: 1, name: "payment_hash", kind: "scalar", oneof: "invoiceRef", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "payment_addr", kind: "scalar", oneof: "invoiceRef", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "set_id", kind: "scalar", oneof: "invoiceRef", T: 12 /*ScalarType.BYTES*/ }, - { no: 4, name: "lookup_modifier", kind: "enum", T: () => ["invoicesrpc.LookupModifier", LookupModifier] } - ]); - } - create(value?: PartialMessage): LookupInvoiceMsg { - const message = { invoiceRef: { oneofKind: undefined }, lookupModifier: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LookupInvoiceMsg): LookupInvoiceMsg { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes payment_hash */ 1: - message.invoiceRef = { - oneofKind: "paymentHash", - paymentHash: reader.bytes() - }; - break; - case /* bytes payment_addr */ 2: - message.invoiceRef = { - oneofKind: "paymentAddr", - paymentAddr: reader.bytes() - }; - break; - case /* bytes set_id */ 3: - message.invoiceRef = { - oneofKind: "setId", - setId: reader.bytes() - }; - break; - case /* invoicesrpc.LookupModifier lookup_modifier */ 4: - message.lookupModifier = reader.int32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: LookupInvoiceMsg, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes payment_hash = 1; */ - if (message.invoiceRef.oneofKind === "paymentHash") - writer.tag(1, WireType.LengthDelimited).bytes(message.invoiceRef.paymentHash); - /* bytes payment_addr = 2; */ - if (message.invoiceRef.oneofKind === "paymentAddr") - writer.tag(2, WireType.LengthDelimited).bytes(message.invoiceRef.paymentAddr); - /* bytes set_id = 3; */ - if (message.invoiceRef.oneofKind === "setId") - writer.tag(3, WireType.LengthDelimited).bytes(message.invoiceRef.setId); - /* invoicesrpc.LookupModifier lookup_modifier = 4; */ - if (message.lookupModifier !== 0) - writer.tag(4, WireType.Varint).int32(message.lookupModifier); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message invoicesrpc.LookupInvoiceMsg - */ -export const LookupInvoiceMsg = new LookupInvoiceMsg$Type(); -/** - * @generated ServiceType for protobuf service invoicesrpc.Invoices - */ -export const Invoices = new ServiceType("invoicesrpc.Invoices", [ - { name: "SubscribeSingleInvoice", serverStreaming: true, options: {}, I: SubscribeSingleInvoiceRequest, O: Invoice }, - { name: "CancelInvoice", options: {}, I: CancelInvoiceMsg, O: CancelInvoiceResp }, - { name: "AddHoldInvoice", options: {}, I: AddHoldInvoiceRequest, O: AddHoldInvoiceResp }, - { name: "SettleInvoice", options: {}, I: SettleInvoiceMsg, O: SettleInvoiceResp }, - { name: "LookupInvoiceV2", options: {}, I: LookupInvoiceMsg, O: Invoice } -]); +// @generated by protobuf-ts 2.8.1 +// @generated from protobuf file "invoices.proto" (package "invoicesrpc", syntax proto3) +// tslint:disable +import { Invoice } from "./lightning.js"; +import { ServiceType } from "@protobuf-ts/runtime-rpc"; +import type { BinaryWriteOptions } from "@protobuf-ts/runtime"; +import type { IBinaryWriter } from "@protobuf-ts/runtime"; +import { WireType } from "@protobuf-ts/runtime"; +import type { BinaryReadOptions } from "@protobuf-ts/runtime"; +import type { IBinaryReader } from "@protobuf-ts/runtime"; +import { UnknownFieldHandler } from "@protobuf-ts/runtime"; +import type { PartialMessage } from "@protobuf-ts/runtime"; +import { reflectionMergePartial } from "@protobuf-ts/runtime"; +import { MESSAGE_TYPE } from "@protobuf-ts/runtime"; +import { MessageType } from "@protobuf-ts/runtime"; +import { RouteHint } from "./lightning.js"; +/** + * @generated from protobuf message invoicesrpc.CancelInvoiceMsg + */ +export interface CancelInvoiceMsg { + /** + * Hash corresponding to the (hold) invoice to cancel. When using + * REST, this field must be encoded as base64. + * + * @generated from protobuf field: bytes payment_hash = 1; + */ + paymentHash: Uint8Array; +} +/** + * @generated from protobuf message invoicesrpc.CancelInvoiceResp + */ +export interface CancelInvoiceResp { +} +/** + * @generated from protobuf message invoicesrpc.AddHoldInvoiceRequest + */ +export interface AddHoldInvoiceRequest { + /** + * + * 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. + * + * @generated from protobuf field: string memo = 1; + */ + memo: string; + /** + * The hash of the preimage + * + * @generated from protobuf field: bytes hash = 2; + */ + hash: Uint8Array; + /** + * + * The value of this invoice in satoshis + * + * The fields value and value_msat are mutually exclusive. + * + * @generated from protobuf field: int64 value = 3; + */ + value: bigint; + /** + * + * The value of this invoice in millisatoshis + * + * The fields value and value_msat are mutually exclusive. + * + * @generated from protobuf field: int64 value_msat = 10; + */ + valueMsat: bigint; + /** + * + * 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. + * + * @generated from protobuf field: bytes description_hash = 4; + */ + descriptionHash: Uint8Array; + /** + * Payment request expiry time in seconds. Default is 3600 (1 hour). + * + * @generated from protobuf field: int64 expiry = 5; + */ + expiry: bigint; + /** + * Fallback on-chain address. + * + * @generated from protobuf field: string fallback_addr = 6; + */ + fallbackAddr: string; + /** + * Delta to use for the time-lock of the CLTV extended to the final hop. + * + * @generated from protobuf field: uint64 cltv_expiry = 7; + */ + cltvExpiry: bigint; + /** + * + * Route hints that can each be individually used to assist in reaching the + * invoice's destination. + * + * @generated from protobuf field: repeated lnrpc.RouteHint route_hints = 8; + */ + routeHints: RouteHint[]; + /** + * Whether this invoice should include routing hints for private channels. + * + * @generated from protobuf field: bool private = 9; + */ + private: boolean; +} +/** + * @generated from protobuf message invoicesrpc.AddHoldInvoiceResp + */ +export interface AddHoldInvoiceResp { + /** + * + * 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. + * + * @generated from protobuf field: string payment_request = 1; + */ + paymentRequest: string; + /** + * + * 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. + * + * @generated from protobuf field: uint64 add_index = 2; + */ + addIndex: bigint; + /** + * + * 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. + * + * @generated from protobuf field: bytes payment_addr = 3; + */ + paymentAddr: Uint8Array; +} +/** + * @generated from protobuf message invoicesrpc.SettleInvoiceMsg + */ +export interface SettleInvoiceMsg { + /** + * Externally discovered pre-image that should be used to settle the hold + * invoice. + * + * @generated from protobuf field: bytes preimage = 1; + */ + preimage: Uint8Array; +} +/** + * @generated from protobuf message invoicesrpc.SettleInvoiceResp + */ +export interface SettleInvoiceResp { +} +/** + * @generated from protobuf message invoicesrpc.SubscribeSingleInvoiceRequest + */ +export interface SubscribeSingleInvoiceRequest { + /** + * Hash corresponding to the (hold) invoice to subscribe to. When using + * REST, this field must be encoded as base64url. + * + * @generated from protobuf field: bytes r_hash = 2; + */ + rHash: Uint8Array; +} +/** + * @generated from protobuf message invoicesrpc.LookupInvoiceMsg + */ +export interface LookupInvoiceMsg { + /** + * @generated from protobuf oneof: invoice_ref + */ + invoiceRef: { + oneofKind: "paymentHash"; + /** + * When using REST, this field must be encoded as base64. + * + * @generated from protobuf field: bytes payment_hash = 1; + */ + paymentHash: Uint8Array; + } | { + oneofKind: "paymentAddr"; + /** + * @generated from protobuf field: bytes payment_addr = 2; + */ + paymentAddr: Uint8Array; + } | { + oneofKind: "setId"; + /** + * @generated from protobuf field: bytes set_id = 3; + */ + setId: Uint8Array; + } | { + oneofKind: undefined; + }; + /** + * @generated from protobuf field: invoicesrpc.LookupModifier lookup_modifier = 4; + */ + lookupModifier: LookupModifier; +} +/** + * @generated from protobuf enum invoicesrpc.LookupModifier + */ +export enum LookupModifier { + /** + * The default look up modifier, no look up behavior is changed. + * + * @generated from protobuf enum value: DEFAULT = 0; + */ + DEFAULT = 0, + /** + * + * Indicates that when a look up is done based on a set_id, then only that set + * of HTLCs related to that set ID should be returned. + * + * @generated from protobuf enum value: HTLC_SET_ONLY = 1; + */ + HTLC_SET_ONLY = 1, + /** + * + * Indicates that when a look up is done using a payment_addr, then no HTLCs + * related to the payment_addr should be returned. This is useful when one + * wants to be able to obtain the set of associated setIDs with a given + * invoice, then look up the sub-invoices "projected" by that set ID. + * + * @generated from protobuf enum value: HTLC_SET_BLANK = 2; + */ + HTLC_SET_BLANK = 2 +} +// @generated message type with reflection information, may provide speed optimized methods +class CancelInvoiceMsg$Type extends MessageType { + constructor() { + super("invoicesrpc.CancelInvoiceMsg", [ + { no: 1, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): CancelInvoiceMsg { + const message = { paymentHash: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CancelInvoiceMsg): CancelInvoiceMsg { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes payment_hash */ 1: + message.paymentHash = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: CancelInvoiceMsg, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes payment_hash = 1; */ + if (message.paymentHash.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.paymentHash); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message invoicesrpc.CancelInvoiceMsg + */ +export const CancelInvoiceMsg = new CancelInvoiceMsg$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class CancelInvoiceResp$Type extends MessageType { + constructor() { + super("invoicesrpc.CancelInvoiceResp", []); + } + create(value?: PartialMessage): CancelInvoiceResp { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CancelInvoiceResp): CancelInvoiceResp { + return target ?? this.create(); + } + internalBinaryWrite(message: CancelInvoiceResp, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message invoicesrpc.CancelInvoiceResp + */ +export const CancelInvoiceResp = new CancelInvoiceResp$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class AddHoldInvoiceRequest$Type extends MessageType { + constructor() { + super("invoicesrpc.AddHoldInvoiceRequest", [ + { no: 1, name: "memo", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "value", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 10, name: "value_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "description_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 5, name: "expiry", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "fallback_addr", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 7, name: "cltv_expiry", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 8, name: "route_hints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => RouteHint }, + { no: 9, name: "private", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): AddHoldInvoiceRequest { + const message = { memo: "", hash: new Uint8Array(0), value: 0n, valueMsat: 0n, descriptionHash: new Uint8Array(0), expiry: 0n, fallbackAddr: "", cltvExpiry: 0n, routeHints: [], private: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AddHoldInvoiceRequest): AddHoldInvoiceRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string memo */ 1: + message.memo = reader.string(); + break; + case /* bytes hash */ 2: + message.hash = reader.bytes(); + break; + case /* int64 value */ 3: + message.value = reader.int64().toBigInt(); + break; + case /* int64 value_msat */ 10: + message.valueMsat = reader.int64().toBigInt(); + break; + case /* bytes description_hash */ 4: + message.descriptionHash = reader.bytes(); + break; + case /* int64 expiry */ 5: + message.expiry = reader.int64().toBigInt(); + break; + case /* string fallback_addr */ 6: + message.fallbackAddr = reader.string(); + break; + case /* uint64 cltv_expiry */ 7: + message.cltvExpiry = reader.uint64().toBigInt(); + break; + case /* repeated lnrpc.RouteHint route_hints */ 8: + message.routeHints.push(RouteHint.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* bool private */ 9: + message.private = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: AddHoldInvoiceRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string memo = 1; */ + if (message.memo !== "") + writer.tag(1, WireType.LengthDelimited).string(message.memo); + /* bytes hash = 2; */ + if (message.hash.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.hash); + /* int64 value = 3; */ + if (message.value !== 0n) + writer.tag(3, WireType.Varint).int64(message.value); + /* int64 value_msat = 10; */ + if (message.valueMsat !== 0n) + writer.tag(10, WireType.Varint).int64(message.valueMsat); + /* bytes description_hash = 4; */ + if (message.descriptionHash.length) + writer.tag(4, WireType.LengthDelimited).bytes(message.descriptionHash); + /* int64 expiry = 5; */ + if (message.expiry !== 0n) + writer.tag(5, WireType.Varint).int64(message.expiry); + /* string fallback_addr = 6; */ + if (message.fallbackAddr !== "") + writer.tag(6, WireType.LengthDelimited).string(message.fallbackAddr); + /* uint64 cltv_expiry = 7; */ + if (message.cltvExpiry !== 0n) + writer.tag(7, WireType.Varint).uint64(message.cltvExpiry); + /* repeated lnrpc.RouteHint route_hints = 8; */ + for (let i = 0; i < message.routeHints.length; i++) + RouteHint.internalBinaryWrite(message.routeHints[i], writer.tag(8, WireType.LengthDelimited).fork(), options).join(); + /* bool private = 9; */ + if (message.private !== false) + writer.tag(9, WireType.Varint).bool(message.private); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message invoicesrpc.AddHoldInvoiceRequest + */ +export const AddHoldInvoiceRequest = new AddHoldInvoiceRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class AddHoldInvoiceResp$Type extends MessageType { + constructor() { + super("invoicesrpc.AddHoldInvoiceResp", [ + { no: 1, name: "payment_request", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "add_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): AddHoldInvoiceResp { + const message = { paymentRequest: "", addIndex: 0n, paymentAddr: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AddHoldInvoiceResp): AddHoldInvoiceResp { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string payment_request */ 1: + message.paymentRequest = reader.string(); + break; + case /* uint64 add_index */ 2: + message.addIndex = reader.uint64().toBigInt(); + break; + case /* bytes payment_addr */ 3: + message.paymentAddr = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: AddHoldInvoiceResp, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string payment_request = 1; */ + if (message.paymentRequest !== "") + writer.tag(1, WireType.LengthDelimited).string(message.paymentRequest); + /* uint64 add_index = 2; */ + if (message.addIndex !== 0n) + writer.tag(2, WireType.Varint).uint64(message.addIndex); + /* bytes payment_addr = 3; */ + if (message.paymentAddr.length) + writer.tag(3, WireType.LengthDelimited).bytes(message.paymentAddr); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message invoicesrpc.AddHoldInvoiceResp + */ +export const AddHoldInvoiceResp = new AddHoldInvoiceResp$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SettleInvoiceMsg$Type extends MessageType { + constructor() { + super("invoicesrpc.SettleInvoiceMsg", [ + { no: 1, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): SettleInvoiceMsg { + const message = { preimage: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SettleInvoiceMsg): SettleInvoiceMsg { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes preimage */ 1: + message.preimage = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: SettleInvoiceMsg, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes preimage = 1; */ + if (message.preimage.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.preimage); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message invoicesrpc.SettleInvoiceMsg + */ +export const SettleInvoiceMsg = new SettleInvoiceMsg$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SettleInvoiceResp$Type extends MessageType { + constructor() { + super("invoicesrpc.SettleInvoiceResp", []); + } + create(value?: PartialMessage): SettleInvoiceResp { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SettleInvoiceResp): SettleInvoiceResp { + return target ?? this.create(); + } + internalBinaryWrite(message: SettleInvoiceResp, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message invoicesrpc.SettleInvoiceResp + */ +export const SettleInvoiceResp = new SettleInvoiceResp$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SubscribeSingleInvoiceRequest$Type extends MessageType { + constructor() { + super("invoicesrpc.SubscribeSingleInvoiceRequest", [ + { no: 2, name: "r_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): SubscribeSingleInvoiceRequest { + const message = { rHash: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SubscribeSingleInvoiceRequest): SubscribeSingleInvoiceRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes r_hash */ 2: + message.rHash = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: SubscribeSingleInvoiceRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes r_hash = 2; */ + if (message.rHash.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.rHash); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message invoicesrpc.SubscribeSingleInvoiceRequest + */ +export const SubscribeSingleInvoiceRequest = new SubscribeSingleInvoiceRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class LookupInvoiceMsg$Type extends MessageType { + constructor() { + super("invoicesrpc.LookupInvoiceMsg", [ + { no: 1, name: "payment_hash", kind: "scalar", oneof: "invoiceRef", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "payment_addr", kind: "scalar", oneof: "invoiceRef", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "set_id", kind: "scalar", oneof: "invoiceRef", T: 12 /*ScalarType.BYTES*/ }, + { no: 4, name: "lookup_modifier", kind: "enum", T: () => ["invoicesrpc.LookupModifier", LookupModifier] } + ]); + } + create(value?: PartialMessage): LookupInvoiceMsg { + const message = { invoiceRef: { oneofKind: undefined }, lookupModifier: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LookupInvoiceMsg): LookupInvoiceMsg { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes payment_hash */ 1: + message.invoiceRef = { + oneofKind: "paymentHash", + paymentHash: reader.bytes() + }; + break; + case /* bytes payment_addr */ 2: + message.invoiceRef = { + oneofKind: "paymentAddr", + paymentAddr: reader.bytes() + }; + break; + case /* bytes set_id */ 3: + message.invoiceRef = { + oneofKind: "setId", + setId: reader.bytes() + }; + break; + case /* invoicesrpc.LookupModifier lookup_modifier */ 4: + message.lookupModifier = reader.int32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: LookupInvoiceMsg, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes payment_hash = 1; */ + if (message.invoiceRef.oneofKind === "paymentHash") + writer.tag(1, WireType.LengthDelimited).bytes(message.invoiceRef.paymentHash); + /* bytes payment_addr = 2; */ + if (message.invoiceRef.oneofKind === "paymentAddr") + writer.tag(2, WireType.LengthDelimited).bytes(message.invoiceRef.paymentAddr); + /* bytes set_id = 3; */ + if (message.invoiceRef.oneofKind === "setId") + writer.tag(3, WireType.LengthDelimited).bytes(message.invoiceRef.setId); + /* invoicesrpc.LookupModifier lookup_modifier = 4; */ + if (message.lookupModifier !== 0) + writer.tag(4, WireType.Varint).int32(message.lookupModifier); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message invoicesrpc.LookupInvoiceMsg + */ +export const LookupInvoiceMsg = new LookupInvoiceMsg$Type(); +/** + * @generated ServiceType for protobuf service invoicesrpc.Invoices + */ +export const Invoices = new ServiceType("invoicesrpc.Invoices", [ + { name: "SubscribeSingleInvoice", serverStreaming: true, options: {}, I: SubscribeSingleInvoiceRequest, O: Invoice }, + { name: "CancelInvoice", options: {}, I: CancelInvoiceMsg, O: CancelInvoiceResp }, + { name: "AddHoldInvoice", options: {}, I: AddHoldInvoiceRequest, O: AddHoldInvoiceResp }, + { name: "SettleInvoice", options: {}, I: SettleInvoiceMsg, O: SettleInvoiceResp }, + { name: "LookupInvoiceV2", options: {}, I: LookupInvoiceMsg, O: Invoice } +]); diff --git a/proto/lnd/lightning.client.ts b/proto/lnd/lightning.client.ts index 90b72174..52e938b9 100644 --- a/proto/lnd/lightning.client.ts +++ b/proto/lnd/lightning.client.ts @@ -1,1722 +1,1769 @@ -// @generated by protobuf-ts 2.8.1 -// @generated from protobuf file "lightning.proto" (package "lnrpc", syntax proto3) -// tslint:disable -import type { RpcTransport } from "@protobuf-ts/runtime-rpc"; -import type { ServiceInfo } from "@protobuf-ts/runtime-rpc"; -import { Lightning } from "./lightning.js"; -import type { LookupHtlcResponse } from "./lightning.js"; -import type { LookupHtlcRequest } from "./lightning.js"; -import type { ListAliasesResponse } from "./lightning.js"; -import type { ListAliasesRequest } from "./lightning.js"; -import type { CustomMessage } from "./lightning.js"; -import type { SubscribeCustomMessagesRequest } from "./lightning.js"; -import type { SendCustomMessageResponse } from "./lightning.js"; -import type { SendCustomMessageRequest } from "./lightning.js"; -import type { RPCMiddlewareRequest } from "./lightning.js"; -import type { RPCMiddlewareResponse } from "./lightning.js"; -import type { CheckMacPermResponse } from "./lightning.js"; -import type { CheckMacPermRequest } from "./lightning.js"; -import type { ListPermissionsResponse } from "./lightning.js"; -import type { ListPermissionsRequest } from "./lightning.js"; -import type { DeleteMacaroonIDResponse } from "./lightning.js"; -import type { DeleteMacaroonIDRequest } from "./lightning.js"; -import type { ListMacaroonIDsResponse } from "./lightning.js"; -import type { ListMacaroonIDsRequest } from "./lightning.js"; -import type { BakeMacaroonResponse } from "./lightning.js"; -import type { BakeMacaroonRequest } from "./lightning.js"; -import type { ChannelBackupSubscription } from "./lightning.js"; -import type { RestoreBackupResponse } from "./lightning.js"; -import type { RestoreChanBackupRequest } from "./lightning.js"; -import type { VerifyChanBackupResponse } from "./lightning.js"; -import type { ChanBackupSnapshot } from "./lightning.js"; -import type { ChanBackupExportRequest } from "./lightning.js"; -import type { ChannelBackup } from "./lightning.js"; -import type { ExportChannelBackupRequest } from "./lightning.js"; -import type { ForwardingHistoryResponse } from "./lightning.js"; -import type { ForwardingHistoryRequest } from "./lightning.js"; -import type { PolicyUpdateResponse } from "./lightning.js"; -import type { PolicyUpdateRequest } from "./lightning.js"; -import type { FeeReportResponse } from "./lightning.js"; -import type { FeeReportRequest } from "./lightning.js"; -import type { DebugLevelResponse } from "./lightning.js"; -import type { DebugLevelRequest } from "./lightning.js"; -import type { GraphTopologyUpdate } from "./lightning.js"; -import type { GraphTopologySubscription } from "./lightning.js"; -import type { StopResponse } from "./lightning.js"; -import type { StopRequest } from "./lightning.js"; -import type { NetworkInfo } from "./lightning.js"; -import type { NetworkInfoRequest } from "./lightning.js"; -import type { QueryRoutesResponse } from "./lightning.js"; -import type { QueryRoutesRequest } from "./lightning.js"; -import type { NodeInfo } from "./lightning.js"; -import type { NodeInfoRequest } from "./lightning.js"; -import type { ChannelEdge } from "./lightning.js"; -import type { ChanInfoRequest } from "./lightning.js"; -import type { NodeMetricsResponse } from "./lightning.js"; -import type { NodeMetricsRequest } from "./lightning.js"; -import type { ChannelGraph } from "./lightning.js"; -import type { ChannelGraphRequest } from "./lightning.js"; -import type { DeleteAllPaymentsResponse } from "./lightning.js"; -import type { DeleteAllPaymentsRequest } from "./lightning.js"; -import type { DeletePaymentResponse } from "./lightning.js"; -import type { DeletePaymentRequest } from "./lightning.js"; -import type { ListPaymentsResponse } from "./lightning.js"; -import type { ListPaymentsRequest } from "./lightning.js"; -import type { PayReq } from "./lightning.js"; -import type { PayReqString } from "./lightning.js"; -import type { InvoiceSubscription } from "./lightning.js"; -import type { PaymentHash } from "./lightning.js"; -import type { ListInvoiceResponse } from "./lightning.js"; -import type { ListInvoiceRequest } from "./lightning.js"; -import type { AddInvoiceResponse } from "./lightning.js"; -import type { Invoice } from "./lightning.js"; -import type { SendToRouteRequest } from "./lightning.js"; -import type { SendResponse } from "./lightning.js"; -import type { SendRequest } from "./lightning.js"; -import type { AbandonChannelResponse } from "./lightning.js"; -import type { AbandonChannelRequest } from "./lightning.js"; -import type { CloseStatusUpdate } from "./lightning.js"; -import type { CloseChannelRequest } from "./lightning.js"; -import type { ChannelAcceptRequest } from "./lightning.js"; -import type { ChannelAcceptResponse } from "./lightning.js"; -import type { DuplexStreamingCall } from "@protobuf-ts/runtime-rpc"; -import type { FundingStateStepResp } from "./lightning.js"; -import type { FundingTransitionMsg } from "./lightning.js"; -import type { BatchOpenChannelResponse } from "./lightning.js"; -import type { BatchOpenChannelRequest } from "./lightning.js"; -import type { OpenStatusUpdate } from "./lightning.js"; -import type { ChannelPoint } from "./lightning.js"; -import type { OpenChannelRequest } from "./lightning.js"; -import type { ClosedChannelsResponse } from "./lightning.js"; -import type { ClosedChannelsRequest } from "./lightning.js"; -import type { ChannelEventUpdate } from "./lightning.js"; -import type { ChannelEventSubscription } from "./lightning.js"; -import type { ListChannelsResponse } from "./lightning.js"; -import type { ListChannelsRequest } from "./lightning.js"; -import type { PendingChannelsResponse } from "./lightning.js"; -import type { PendingChannelsRequest } from "./lightning.js"; -import type { GetRecoveryInfoResponse } from "./lightning.js"; -import type { GetRecoveryInfoRequest } from "./lightning.js"; -import type { GetInfoResponse } from "./lightning.js"; -import type { GetInfoRequest } from "./lightning.js"; -import type { PeerEvent } from "./lightning.js"; -import type { PeerEventSubscription } from "./lightning.js"; -import type { ListPeersResponse } from "./lightning.js"; -import type { ListPeersRequest } from "./lightning.js"; -import type { DisconnectPeerResponse } from "./lightning.js"; -import type { DisconnectPeerRequest } from "./lightning.js"; -import type { ConnectPeerResponse } from "./lightning.js"; -import type { ConnectPeerRequest } from "./lightning.js"; -import type { VerifyMessageResponse } from "./lightning.js"; -import type { VerifyMessageRequest } from "./lightning.js"; -import type { SignMessageResponse } from "./lightning.js"; -import type { SignMessageRequest } from "./lightning.js"; -import type { NewAddressResponse } from "./lightning.js"; -import type { NewAddressRequest } from "./lightning.js"; -import type { SendManyResponse } from "./lightning.js"; -import type { SendManyRequest } from "./lightning.js"; -import type { Transaction } from "./lightning.js"; -import type { ServerStreamingCall } from "@protobuf-ts/runtime-rpc"; -import type { ListUnspentResponse } from "./lightning.js"; -import type { ListUnspentRequest } from "./lightning.js"; -import type { SendCoinsResponse } from "./lightning.js"; -import type { SendCoinsRequest } from "./lightning.js"; -import type { EstimateFeeResponse } from "./lightning.js"; -import type { EstimateFeeRequest } from "./lightning.js"; -import type { TransactionDetails } from "./lightning.js"; -import type { GetTransactionsRequest } from "./lightning.js"; -import type { ChannelBalanceResponse } from "./lightning.js"; -import type { ChannelBalanceRequest } from "./lightning.js"; -import { stackIntercept } from "@protobuf-ts/runtime-rpc"; -import type { WalletBalanceResponse } from "./lightning.js"; -import type { WalletBalanceRequest } from "./lightning.js"; -import type { UnaryCall } from "@protobuf-ts/runtime-rpc"; -import type { RpcOptions } from "@protobuf-ts/runtime-rpc"; -// -// Comments in this file will be directly parsed into the API -// Documentation as descriptions of the associated method, message, or field. -// These descriptions should go right above the definition of the object, and -// can be in either block or // comment format. -// -// An RPC method can be matched to an lncli command by placing a line in the -// beginning of the description in exactly the following format: -// lncli: `methodname` -// -// Failure to specify the exact name of the command will cause documentation -// generation to fail. -// -// More information on how exactly the gRPC documentation is generated from -// this proto file can be found here: -// https://github.com/lightninglabs/lightning-api - -/** - * Lightning is the main RPC server of the daemon. - * - * @generated from protobuf service lnrpc.Lightning - */ -export interface ILightningClient { - /** - * lncli: `walletbalance` - * WalletBalance returns total unspent outputs(confirmed and unconfirmed), all - * confirmed unspent outputs and all unconfirmed unspent outputs under control - * of the wallet. - * - * @generated from protobuf rpc: WalletBalance(lnrpc.WalletBalanceRequest) returns (lnrpc.WalletBalanceResponse); - */ - walletBalance(input: WalletBalanceRequest, options?: RpcOptions): UnaryCall; - /** - * 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. - * - * @generated from protobuf rpc: ChannelBalance(lnrpc.ChannelBalanceRequest) returns (lnrpc.ChannelBalanceResponse); - */ - channelBalance(input: ChannelBalanceRequest, options?: RpcOptions): UnaryCall; - /** - * lncli: `listchaintxns` - * GetTransactions returns a list describing all the known transactions - * relevant to the wallet. - * - * @generated from protobuf rpc: GetTransactions(lnrpc.GetTransactionsRequest) returns (lnrpc.TransactionDetails); - */ - getTransactions(input: GetTransactionsRequest, options?: RpcOptions): UnaryCall; - /** - * 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[
]=` to the URL. Unfortunately this - * map type doesn't appear in the REST API documentation because of a bug in - * the grpc-gateway library. - * - * @generated from protobuf rpc: EstimateFee(lnrpc.EstimateFeeRequest) returns (lnrpc.EstimateFeeResponse); - */ - estimateFee(input: EstimateFeeRequest, options?: RpcOptions): UnaryCall; - /** - * 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. - * - * @generated from protobuf rpc: SendCoins(lnrpc.SendCoinsRequest) returns (lnrpc.SendCoinsResponse); - */ - sendCoins(input: SendCoinsRequest, options?: RpcOptions): UnaryCall; - /** - * 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. - * - * @generated from protobuf rpc: ListUnspent(lnrpc.ListUnspentRequest) returns (lnrpc.ListUnspentResponse); - */ - listUnspent(input: ListUnspentRequest, options?: RpcOptions): UnaryCall; - /** - * - * 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. - * - * @generated from protobuf rpc: SubscribeTransactions(lnrpc.GetTransactionsRequest) returns (stream lnrpc.Transaction); - */ - subscribeTransactions(input: GetTransactionsRequest, options?: RpcOptions): ServerStreamingCall; - /** - * 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. - * - * @generated from protobuf rpc: SendMany(lnrpc.SendManyRequest) returns (lnrpc.SendManyResponse); - */ - sendMany(input: SendManyRequest, options?: RpcOptions): UnaryCall; - /** - * lncli: `newaddress` - * NewAddress creates a new address under control of the local wallet. - * - * @generated from protobuf rpc: NewAddress(lnrpc.NewAddressRequest) returns (lnrpc.NewAddressResponse); - */ - newAddress(input: NewAddressRequest, options?: RpcOptions): UnaryCall; - /** - * 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. - * - * @generated from protobuf rpc: SignMessage(lnrpc.SignMessageRequest) returns (lnrpc.SignMessageResponse); - */ - signMessage(input: SignMessageRequest, options?: RpcOptions): UnaryCall; - /** - * 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. - * - * @generated from protobuf rpc: VerifyMessage(lnrpc.VerifyMessageRequest) returns (lnrpc.VerifyMessageResponse); - */ - verifyMessage(input: VerifyMessageRequest, options?: RpcOptions): UnaryCall; - /** - * 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. - * - * @generated from protobuf rpc: ConnectPeer(lnrpc.ConnectPeerRequest) returns (lnrpc.ConnectPeerResponse); - */ - connectPeer(input: ConnectPeerRequest, options?: RpcOptions): UnaryCall; - /** - * 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. - * - * @generated from protobuf rpc: DisconnectPeer(lnrpc.DisconnectPeerRequest) returns (lnrpc.DisconnectPeerResponse); - */ - disconnectPeer(input: DisconnectPeerRequest, options?: RpcOptions): UnaryCall; - /** - * lncli: `listpeers` - * ListPeers returns a verbose listing of all currently active peers. - * - * @generated from protobuf rpc: ListPeers(lnrpc.ListPeersRequest) returns (lnrpc.ListPeersResponse); - */ - listPeers(input: ListPeersRequest, options?: RpcOptions): UnaryCall; - /** - * - * 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. - * - * @generated from protobuf rpc: SubscribePeerEvents(lnrpc.PeerEventSubscription) returns (stream lnrpc.PeerEvent); - */ - subscribePeerEvents(input: PeerEventSubscription, options?: RpcOptions): ServerStreamingCall; - /** - * 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. - * - * @generated from protobuf rpc: GetInfo(lnrpc.GetInfoRequest) returns (lnrpc.GetInfoResponse); - */ - getInfo(input: GetInfoRequest, options?: RpcOptions): UnaryCall; - /** - * * 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. - * - * @generated from protobuf rpc: GetRecoveryInfo(lnrpc.GetRecoveryInfoRequest) returns (lnrpc.GetRecoveryInfoResponse); - */ - getRecoveryInfo(input: GetRecoveryInfoRequest, options?: RpcOptions): UnaryCall; - // TODO(roasbeef): merge with below with bool? - - /** - * 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. - * - * @generated from protobuf rpc: PendingChannels(lnrpc.PendingChannelsRequest) returns (lnrpc.PendingChannelsResponse); - */ - pendingChannels(input: PendingChannelsRequest, options?: RpcOptions): UnaryCall; - /** - * lncli: `listchannels` - * ListChannels returns a description of all the open channels that this node - * is a participant in. - * - * @generated from protobuf rpc: ListChannels(lnrpc.ListChannelsRequest) returns (lnrpc.ListChannelsResponse); - */ - listChannels(input: ListChannelsRequest, options?: RpcOptions): UnaryCall; - /** - * - * 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. - * - * @generated from protobuf rpc: SubscribeChannelEvents(lnrpc.ChannelEventSubscription) returns (stream lnrpc.ChannelEventUpdate); - */ - subscribeChannelEvents(input: ChannelEventSubscription, options?: RpcOptions): ServerStreamingCall; - /** - * lncli: `closedchannels` - * ClosedChannels returns a description of all the closed channels that - * this node was a participant in. - * - * @generated from protobuf rpc: ClosedChannels(lnrpc.ClosedChannelsRequest) returns (lnrpc.ClosedChannelsResponse); - */ - closedChannels(input: ClosedChannelsRequest, options?: RpcOptions): UnaryCall; - /** - * - * 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. - * - * @generated from protobuf rpc: OpenChannelSync(lnrpc.OpenChannelRequest) returns (lnrpc.ChannelPoint); - */ - openChannelSync(input: OpenChannelRequest, options?: RpcOptions): UnaryCall; - /** - * 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. - * - * @generated from protobuf rpc: OpenChannel(lnrpc.OpenChannelRequest) returns (stream lnrpc.OpenStatusUpdate); - */ - openChannel(input: OpenChannelRequest, options?: RpcOptions): ServerStreamingCall; - /** - * lncli: `batchopenchannel` - * BatchOpenChannel attempts to open multiple single-funded channels in a - * single transaction in an atomic way. This means either all channel open - * requests succeed at once or all attempts are aborted if any of them fail. - * This is the safer variant of using PSBTs to manually fund a batch of - * channels through the OpenChannel RPC. - * - * @generated from protobuf rpc: BatchOpenChannel(lnrpc.BatchOpenChannelRequest) returns (lnrpc.BatchOpenChannelResponse); - */ - batchOpenChannel(input: BatchOpenChannelRequest, options?: RpcOptions): UnaryCall; - /** - * - * 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. - * - * @generated from protobuf rpc: FundingStateStep(lnrpc.FundingTransitionMsg) returns (lnrpc.FundingStateStepResp); - */ - fundingStateStep(input: FundingTransitionMsg, options?: RpcOptions): UnaryCall; - /** - * - * 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. - * - * @generated from protobuf rpc: ChannelAcceptor(stream lnrpc.ChannelAcceptResponse) returns (stream lnrpc.ChannelAcceptRequest); - */ - channelAcceptor(options?: RpcOptions): DuplexStreamingCall; - /** - * 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. - * - * @generated from protobuf rpc: CloseChannel(lnrpc.CloseChannelRequest) returns (stream lnrpc.CloseStatusUpdate); - */ - closeChannel(input: CloseChannelRequest, options?: RpcOptions): ServerStreamingCall; - /** - * 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. - * - * @generated from protobuf rpc: AbandonChannel(lnrpc.AbandonChannelRequest) returns (lnrpc.AbandonChannelResponse); - */ - abandonChannel(input: AbandonChannelRequest, options?: RpcOptions): UnaryCall; - /** - * 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. - * - * @deprecated - * @generated from protobuf rpc: SendPayment(stream lnrpc.SendRequest) returns (stream lnrpc.SendResponse); - */ - sendPayment(options?: RpcOptions): DuplexStreamingCall; - /** - * - * 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. - * - * @generated from protobuf rpc: SendPaymentSync(lnrpc.SendRequest) returns (lnrpc.SendResponse); - */ - sendPaymentSync(input: SendRequest, options?: RpcOptions): UnaryCall; - /** - * 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. - * - * @deprecated - * @generated from protobuf rpc: SendToRoute(stream lnrpc.SendToRouteRequest) returns (stream lnrpc.SendResponse); - */ - sendToRoute(options?: RpcOptions): DuplexStreamingCall; - /** - * - * SendToRouteSync is a synchronous version of SendToRoute. It Will block - * until the payment either fails or succeeds. - * - * @generated from protobuf rpc: SendToRouteSync(lnrpc.SendToRouteRequest) returns (lnrpc.SendResponse); - */ - sendToRouteSync(input: SendToRouteRequest, options?: RpcOptions): UnaryCall; - /** - * 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. - * - * @generated from protobuf rpc: AddInvoice(lnrpc.Invoice) returns (lnrpc.AddInvoiceResponse); - */ - addInvoice(input: Invoice, options?: RpcOptions): UnaryCall; - /** - * 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. - * - * @generated from protobuf rpc: ListInvoices(lnrpc.ListInvoiceRequest) returns (lnrpc.ListInvoiceResponse); - */ - listInvoices(input: ListInvoiceRequest, options?: RpcOptions): UnaryCall; - /** - * 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. - * - * @generated from protobuf rpc: LookupInvoice(lnrpc.PaymentHash) returns (lnrpc.Invoice); - */ - lookupInvoice(input: PaymentHash, options?: RpcOptions): UnaryCall; - /** - * - * 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. - * - * @generated from protobuf rpc: SubscribeInvoices(lnrpc.InvoiceSubscription) returns (stream lnrpc.Invoice); - */ - subscribeInvoices(input: InvoiceSubscription, options?: RpcOptions): ServerStreamingCall; - /** - * 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. - * - * @generated from protobuf rpc: DecodePayReq(lnrpc.PayReqString) returns (lnrpc.PayReq); - */ - decodePayReq(input: PayReqString, options?: RpcOptions): UnaryCall; - /** - * lncli: `listpayments` - * ListPayments returns a list of all outgoing payments. - * - * @generated from protobuf rpc: ListPayments(lnrpc.ListPaymentsRequest) returns (lnrpc.ListPaymentsResponse); - */ - listPayments(input: ListPaymentsRequest, options?: RpcOptions): UnaryCall; - /** - * - * DeletePayment deletes an outgoing payment from DB. Note that it will not - * attempt to delete an In-Flight payment, since that would be unsafe. - * - * @generated from protobuf rpc: DeletePayment(lnrpc.DeletePaymentRequest) returns (lnrpc.DeletePaymentResponse); - */ - deletePayment(input: DeletePaymentRequest, options?: RpcOptions): UnaryCall; - /** - * - * DeleteAllPayments deletes all outgoing payments from DB. Note that it will - * not attempt to delete In-Flight payments, since that would be unsafe. - * - * @generated from protobuf rpc: DeleteAllPayments(lnrpc.DeleteAllPaymentsRequest) returns (lnrpc.DeleteAllPaymentsResponse); - */ - deleteAllPayments(input: DeleteAllPaymentsRequest, options?: RpcOptions): UnaryCall; - /** - * 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. - * - * @generated from protobuf rpc: DescribeGraph(lnrpc.ChannelGraphRequest) returns (lnrpc.ChannelGraph); - */ - describeGraph(input: ChannelGraphRequest, options?: RpcOptions): UnaryCall; - /** - * lncli: `getnodemetrics` - * GetNodeMetrics returns node metrics calculated from the graph. Currently - * the only supported metric is betweenness centrality of individual nodes. - * - * @generated from protobuf rpc: GetNodeMetrics(lnrpc.NodeMetricsRequest) returns (lnrpc.NodeMetricsResponse); - */ - getNodeMetrics(input: NodeMetricsRequest, options?: RpcOptions): UnaryCall; - /** - * 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. - * - * @generated from protobuf rpc: GetChanInfo(lnrpc.ChanInfoRequest) returns (lnrpc.ChannelEdge); - */ - getChanInfo(input: ChanInfoRequest, options?: RpcOptions): UnaryCall; - /** - * lncli: `getnodeinfo` - * GetNodeInfo returns the latest advertised, aggregated, and authenticated - * channel information for the specified node identified by its public key. - * - * @generated from protobuf rpc: GetNodeInfo(lnrpc.NodeInfoRequest) returns (lnrpc.NodeInfo); - */ - getNodeInfo(input: NodeInfoRequest, options?: RpcOptions): UnaryCall; - /** - * 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[]=` - * to the URL. Unfortunately this map type doesn't appear in the REST API - * documentation because of a bug in the grpc-gateway library. - * - * @generated from protobuf rpc: QueryRoutes(lnrpc.QueryRoutesRequest) returns (lnrpc.QueryRoutesResponse); - */ - queryRoutes(input: QueryRoutesRequest, options?: RpcOptions): UnaryCall; - /** - * lncli: `getnetworkinfo` - * GetNetworkInfo returns some basic stats about the known channel graph from - * the point of view of the node. - * - * @generated from protobuf rpc: GetNetworkInfo(lnrpc.NetworkInfoRequest) returns (lnrpc.NetworkInfo); - */ - getNetworkInfo(input: NetworkInfoRequest, options?: RpcOptions): UnaryCall; - /** - * lncli: `stop` - * StopDaemon will send a shutdown request to the interrupt handler, triggering - * a graceful shutdown of the daemon. - * - * @generated from protobuf rpc: StopDaemon(lnrpc.StopRequest) returns (lnrpc.StopResponse); - */ - stopDaemon(input: StopRequest, options?: RpcOptions): UnaryCall; - /** - * - * 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. - * - * @generated from protobuf rpc: SubscribeChannelGraph(lnrpc.GraphTopologySubscription) returns (stream lnrpc.GraphTopologyUpdate); - */ - subscribeChannelGraph(input: GraphTopologySubscription, options?: RpcOptions): ServerStreamingCall; - /** - * 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. - * - * @generated from protobuf rpc: DebugLevel(lnrpc.DebugLevelRequest) returns (lnrpc.DebugLevelResponse); - */ - debugLevel(input: DebugLevelRequest, options?: RpcOptions): UnaryCall; - /** - * lncli: `feereport` - * FeeReport allows the caller to obtain a report detailing the current fee - * schedule enforced by the node globally for each channel. - * - * @generated from protobuf rpc: FeeReport(lnrpc.FeeReportRequest) returns (lnrpc.FeeReportResponse); - */ - feeReport(input: FeeReportRequest, options?: RpcOptions): UnaryCall; - /** - * lncli: `updatechanpolicy` - * UpdateChannelPolicy allows the caller to update the fee schedule and - * channel policies for all channels globally, or a particular channel. - * - * @generated from protobuf rpc: UpdateChannelPolicy(lnrpc.PolicyUpdateRequest) returns (lnrpc.PolicyUpdateResponse); - */ - updateChannelPolicy(input: PolicyUpdateRequest, options?: RpcOptions): UnaryCall; - /** - * 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. - * - * @generated from protobuf rpc: ForwardingHistory(lnrpc.ForwardingHistoryRequest) returns (lnrpc.ForwardingHistoryResponse); - */ - forwardingHistory(input: ForwardingHistoryRequest, options?: RpcOptions): UnaryCall; - /** - * 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. - * - * @generated from protobuf rpc: ExportChannelBackup(lnrpc.ExportChannelBackupRequest) returns (lnrpc.ChannelBackup); - */ - exportChannelBackup(input: ExportChannelBackupRequest, options?: RpcOptions): UnaryCall; - /** - * - * 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. - * - * @generated from protobuf rpc: ExportAllChannelBackups(lnrpc.ChanBackupExportRequest) returns (lnrpc.ChanBackupSnapshot); - */ - exportAllChannelBackups(input: ChanBackupExportRequest, options?: RpcOptions): UnaryCall; - /** - * - * 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. - * - * @generated from protobuf rpc: VerifyChanBackup(lnrpc.ChanBackupSnapshot) returns (lnrpc.VerifyChanBackupResponse); - */ - verifyChanBackup(input: ChanBackupSnapshot, options?: RpcOptions): UnaryCall; - /** - * 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. - * - * @generated from protobuf rpc: RestoreChannelBackups(lnrpc.RestoreChanBackupRequest) returns (lnrpc.RestoreBackupResponse); - */ - restoreChannelBackups(input: RestoreChanBackupRequest, options?: RpcOptions): UnaryCall; - /** - * - * 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. - * - * @generated from protobuf rpc: SubscribeChannelBackups(lnrpc.ChannelBackupSubscription) returns (stream lnrpc.ChanBackupSnapshot); - */ - subscribeChannelBackups(input: ChannelBackupSubscription, options?: RpcOptions): ServerStreamingCall; - /** - * 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. - * - * @generated from protobuf rpc: BakeMacaroon(lnrpc.BakeMacaroonRequest) returns (lnrpc.BakeMacaroonResponse); - */ - bakeMacaroon(input: BakeMacaroonRequest, options?: RpcOptions): UnaryCall; - /** - * lncli: `listmacaroonids` - * ListMacaroonIDs returns all root key IDs that are in use. - * - * @generated from protobuf rpc: ListMacaroonIDs(lnrpc.ListMacaroonIDsRequest) returns (lnrpc.ListMacaroonIDsResponse); - */ - listMacaroonIDs(input: ListMacaroonIDsRequest, options?: RpcOptions): UnaryCall; - /** - * lncli: `deletemacaroonid` - * DeleteMacaroonID deletes the specified macaroon ID and invalidates all - * macaroons derived from that ID. - * - * @generated from protobuf rpc: DeleteMacaroonID(lnrpc.DeleteMacaroonIDRequest) returns (lnrpc.DeleteMacaroonIDResponse); - */ - deleteMacaroonID(input: DeleteMacaroonIDRequest, options?: RpcOptions): UnaryCall; - /** - * lncli: `listpermissions` - * ListPermissions lists all RPC method URIs and their required macaroon - * permissions to access them. - * - * @generated from protobuf rpc: ListPermissions(lnrpc.ListPermissionsRequest) returns (lnrpc.ListPermissionsResponse); - */ - listPermissions(input: ListPermissionsRequest, options?: RpcOptions): UnaryCall; - /** - * - * CheckMacaroonPermissions checks whether a request follows the constraints - * imposed on the macaroon and that the macaroon is authorized to follow the - * provided permissions. - * - * @generated from protobuf rpc: CheckMacaroonPermissions(lnrpc.CheckMacPermRequest) returns (lnrpc.CheckMacPermResponse); - */ - checkMacaroonPermissions(input: CheckMacPermRequest, options?: RpcOptions): UnaryCall; - /** - * - * RegisterRPCMiddleware adds a new gRPC middleware to the interceptor chain. A - * gRPC middleware is software component external to lnd that aims to add - * additional business logic to lnd by observing/intercepting/validating - * incoming gRPC client requests and (if needed) replacing/overwriting outgoing - * messages before they're sent to the client. When registering the middleware - * must identify itself and indicate what custom macaroon caveats it wants to - * be responsible for. Only requests that contain a macaroon with that specific - * custom caveat are then sent to the middleware for inspection. The other - * option is to register for the read-only mode in which all requests/responses - * are forwarded for interception to the middleware but the middleware is not - * allowed to modify any responses. As a security measure, _no_ middleware can - * modify responses for requests made with _unencumbered_ macaroons! - * - * @generated from protobuf rpc: RegisterRPCMiddleware(stream lnrpc.RPCMiddlewareResponse) returns (stream lnrpc.RPCMiddlewareRequest); - */ - registerRPCMiddleware(options?: RpcOptions): DuplexStreamingCall; - /** - * lncli: `sendcustom` - * SendCustomMessage sends a custom peer message. - * - * @generated from protobuf rpc: SendCustomMessage(lnrpc.SendCustomMessageRequest) returns (lnrpc.SendCustomMessageResponse); - */ - sendCustomMessage(input: SendCustomMessageRequest, options?: RpcOptions): UnaryCall; - /** - * lncli: `subscribecustom` - * SubscribeCustomMessages subscribes to a stream of incoming custom peer - * messages. - * - * @generated from protobuf rpc: SubscribeCustomMessages(lnrpc.SubscribeCustomMessagesRequest) returns (stream lnrpc.CustomMessage); - */ - subscribeCustomMessages(input: SubscribeCustomMessagesRequest, options?: RpcOptions): ServerStreamingCall; - /** - * lncli: `listaliases` - * ListAliases returns the set of all aliases that have ever existed with - * their confirmed SCID (if it exists) and/or the base SCID (in the case of - * zero conf). - * - * @generated from protobuf rpc: ListAliases(lnrpc.ListAliasesRequest) returns (lnrpc.ListAliasesResponse); - */ - listAliases(input: ListAliasesRequest, options?: RpcOptions): UnaryCall; - /** - * @generated from protobuf rpc: LookupHtlc(lnrpc.LookupHtlcRequest) returns (lnrpc.LookupHtlcResponse); - */ - lookupHtlc(input: LookupHtlcRequest, options?: RpcOptions): UnaryCall; -} -// -// Comments in this file will be directly parsed into the API -// Documentation as descriptions of the associated method, message, or field. -// These descriptions should go right above the definition of the object, and -// can be in either block or // comment format. -// -// An RPC method can be matched to an lncli command by placing a line in the -// beginning of the description in exactly the following format: -// lncli: `methodname` -// -// Failure to specify the exact name of the command will cause documentation -// generation to fail. -// -// More information on how exactly the gRPC documentation is generated from -// this proto file can be found here: -// https://github.com/lightninglabs/lightning-api - -/** - * Lightning is the main RPC server of the daemon. - * - * @generated from protobuf service lnrpc.Lightning - */ -export class LightningClient implements ILightningClient, ServiceInfo { - typeName = Lightning.typeName; - methods = Lightning.methods; - options = Lightning.options; - constructor(private readonly _transport: RpcTransport) { - } - /** - * lncli: `walletbalance` - * WalletBalance returns total unspent outputs(confirmed and unconfirmed), all - * confirmed unspent outputs and all unconfirmed unspent outputs under control - * of the wallet. - * - * @generated from protobuf rpc: WalletBalance(lnrpc.WalletBalanceRequest) returns (lnrpc.WalletBalanceResponse); - */ - walletBalance(input: WalletBalanceRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[0], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: ChannelBalance(lnrpc.ChannelBalanceRequest) returns (lnrpc.ChannelBalanceResponse); - */ - channelBalance(input: ChannelBalanceRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[1], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * lncli: `listchaintxns` - * GetTransactions returns a list describing all the known transactions - * relevant to the wallet. - * - * @generated from protobuf rpc: GetTransactions(lnrpc.GetTransactionsRequest) returns (lnrpc.TransactionDetails); - */ - getTransactions(input: GetTransactionsRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[2], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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[
]=` to the URL. Unfortunately this - * map type doesn't appear in the REST API documentation because of a bug in - * the grpc-gateway library. - * - * @generated from protobuf rpc: EstimateFee(lnrpc.EstimateFeeRequest) returns (lnrpc.EstimateFeeResponse); - */ - estimateFee(input: EstimateFeeRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[3], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: SendCoins(lnrpc.SendCoinsRequest) returns (lnrpc.SendCoinsResponse); - */ - sendCoins(input: SendCoinsRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[4], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: ListUnspent(lnrpc.ListUnspentRequest) returns (lnrpc.ListUnspentResponse); - */ - listUnspent(input: ListUnspentRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[5], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * 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. - * - * @generated from protobuf rpc: SubscribeTransactions(lnrpc.GetTransactionsRequest) returns (stream lnrpc.Transaction); - */ - subscribeTransactions(input: GetTransactionsRequest, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[6], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: SendMany(lnrpc.SendManyRequest) returns (lnrpc.SendManyResponse); - */ - sendMany(input: SendManyRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[7], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * lncli: `newaddress` - * NewAddress creates a new address under control of the local wallet. - * - * @generated from protobuf rpc: NewAddress(lnrpc.NewAddressRequest) returns (lnrpc.NewAddressResponse); - */ - newAddress(input: NewAddressRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[8], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: SignMessage(lnrpc.SignMessageRequest) returns (lnrpc.SignMessageResponse); - */ - signMessage(input: SignMessageRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[9], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: VerifyMessage(lnrpc.VerifyMessageRequest) returns (lnrpc.VerifyMessageResponse); - */ - verifyMessage(input: VerifyMessageRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[10], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: ConnectPeer(lnrpc.ConnectPeerRequest) returns (lnrpc.ConnectPeerResponse); - */ - connectPeer(input: ConnectPeerRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[11], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: DisconnectPeer(lnrpc.DisconnectPeerRequest) returns (lnrpc.DisconnectPeerResponse); - */ - disconnectPeer(input: DisconnectPeerRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[12], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * lncli: `listpeers` - * ListPeers returns a verbose listing of all currently active peers. - * - * @generated from protobuf rpc: ListPeers(lnrpc.ListPeersRequest) returns (lnrpc.ListPeersResponse); - */ - listPeers(input: ListPeersRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[13], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * 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. - * - * @generated from protobuf rpc: SubscribePeerEvents(lnrpc.PeerEventSubscription) returns (stream lnrpc.PeerEvent); - */ - subscribePeerEvents(input: PeerEventSubscription, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[14], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: GetInfo(lnrpc.GetInfoRequest) returns (lnrpc.GetInfoResponse); - */ - getInfo(input: GetInfoRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[15], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * * 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. - * - * @generated from protobuf rpc: GetRecoveryInfo(lnrpc.GetRecoveryInfoRequest) returns (lnrpc.GetRecoveryInfoResponse); - */ - getRecoveryInfo(input: GetRecoveryInfoRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[16], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - // TODO(roasbeef): merge with below with bool? - - /** - * 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. - * - * @generated from protobuf rpc: PendingChannels(lnrpc.PendingChannelsRequest) returns (lnrpc.PendingChannelsResponse); - */ - pendingChannels(input: PendingChannelsRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[17], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * lncli: `listchannels` - * ListChannels returns a description of all the open channels that this node - * is a participant in. - * - * @generated from protobuf rpc: ListChannels(lnrpc.ListChannelsRequest) returns (lnrpc.ListChannelsResponse); - */ - listChannels(input: ListChannelsRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[18], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * 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. - * - * @generated from protobuf rpc: SubscribeChannelEvents(lnrpc.ChannelEventSubscription) returns (stream lnrpc.ChannelEventUpdate); - */ - subscribeChannelEvents(input: ChannelEventSubscription, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[19], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } - /** - * lncli: `closedchannels` - * ClosedChannels returns a description of all the closed channels that - * this node was a participant in. - * - * @generated from protobuf rpc: ClosedChannels(lnrpc.ClosedChannelsRequest) returns (lnrpc.ClosedChannelsResponse); - */ - closedChannels(input: ClosedChannelsRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[20], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * 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. - * - * @generated from protobuf rpc: OpenChannelSync(lnrpc.OpenChannelRequest) returns (lnrpc.ChannelPoint); - */ - openChannelSync(input: OpenChannelRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[21], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: OpenChannel(lnrpc.OpenChannelRequest) returns (stream lnrpc.OpenStatusUpdate); - */ - openChannel(input: OpenChannelRequest, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[22], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } - /** - * lncli: `batchopenchannel` - * BatchOpenChannel attempts to open multiple single-funded channels in a - * single transaction in an atomic way. This means either all channel open - * requests succeed at once or all attempts are aborted if any of them fail. - * This is the safer variant of using PSBTs to manually fund a batch of - * channels through the OpenChannel RPC. - * - * @generated from protobuf rpc: BatchOpenChannel(lnrpc.BatchOpenChannelRequest) returns (lnrpc.BatchOpenChannelResponse); - */ - batchOpenChannel(input: BatchOpenChannelRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[23], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * 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. - * - * @generated from protobuf rpc: FundingStateStep(lnrpc.FundingTransitionMsg) returns (lnrpc.FundingStateStepResp); - */ - fundingStateStep(input: FundingTransitionMsg, options?: RpcOptions): UnaryCall { - const method = this.methods[24], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * 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. - * - * @generated from protobuf rpc: ChannelAcceptor(stream lnrpc.ChannelAcceptResponse) returns (stream lnrpc.ChannelAcceptRequest); - */ - channelAcceptor(options?: RpcOptions): DuplexStreamingCall { - const method = this.methods[25], opt = this._transport.mergeOptions(options); - return stackIntercept("duplex", this._transport, method, opt); - } - /** - * 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. - * - * @generated from protobuf rpc: CloseChannel(lnrpc.CloseChannelRequest) returns (stream lnrpc.CloseStatusUpdate); - */ - closeChannel(input: CloseChannelRequest, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[26], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: AbandonChannel(lnrpc.AbandonChannelRequest) returns (lnrpc.AbandonChannelResponse); - */ - abandonChannel(input: AbandonChannelRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[27], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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. - * - * @deprecated - * @generated from protobuf rpc: SendPayment(stream lnrpc.SendRequest) returns (stream lnrpc.SendResponse); - */ - sendPayment(options?: RpcOptions): DuplexStreamingCall { - const method = this.methods[28], opt = this._transport.mergeOptions(options); - return stackIntercept("duplex", this._transport, method, opt); - } - /** - * - * 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. - * - * @generated from protobuf rpc: SendPaymentSync(lnrpc.SendRequest) returns (lnrpc.SendResponse); - */ - sendPaymentSync(input: SendRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[29], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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. - * - * @deprecated - * @generated from protobuf rpc: SendToRoute(stream lnrpc.SendToRouteRequest) returns (stream lnrpc.SendResponse); - */ - sendToRoute(options?: RpcOptions): DuplexStreamingCall { - const method = this.methods[30], opt = this._transport.mergeOptions(options); - return stackIntercept("duplex", this._transport, method, opt); - } - /** - * - * SendToRouteSync is a synchronous version of SendToRoute. It Will block - * until the payment either fails or succeeds. - * - * @generated from protobuf rpc: SendToRouteSync(lnrpc.SendToRouteRequest) returns (lnrpc.SendResponse); - */ - sendToRouteSync(input: SendToRouteRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[31], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: AddInvoice(lnrpc.Invoice) returns (lnrpc.AddInvoiceResponse); - */ - addInvoice(input: Invoice, options?: RpcOptions): UnaryCall { - const method = this.methods[32], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: ListInvoices(lnrpc.ListInvoiceRequest) returns (lnrpc.ListInvoiceResponse); - */ - listInvoices(input: ListInvoiceRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[33], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: LookupInvoice(lnrpc.PaymentHash) returns (lnrpc.Invoice); - */ - lookupInvoice(input: PaymentHash, options?: RpcOptions): UnaryCall { - const method = this.methods[34], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * 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. - * - * @generated from protobuf rpc: SubscribeInvoices(lnrpc.InvoiceSubscription) returns (stream lnrpc.Invoice); - */ - subscribeInvoices(input: InvoiceSubscription, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[35], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: DecodePayReq(lnrpc.PayReqString) returns (lnrpc.PayReq); - */ - decodePayReq(input: PayReqString, options?: RpcOptions): UnaryCall { - const method = this.methods[36], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * lncli: `listpayments` - * ListPayments returns a list of all outgoing payments. - * - * @generated from protobuf rpc: ListPayments(lnrpc.ListPaymentsRequest) returns (lnrpc.ListPaymentsResponse); - */ - listPayments(input: ListPaymentsRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[37], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * DeletePayment deletes an outgoing payment from DB. Note that it will not - * attempt to delete an In-Flight payment, since that would be unsafe. - * - * @generated from protobuf rpc: DeletePayment(lnrpc.DeletePaymentRequest) returns (lnrpc.DeletePaymentResponse); - */ - deletePayment(input: DeletePaymentRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[38], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * DeleteAllPayments deletes all outgoing payments from DB. Note that it will - * not attempt to delete In-Flight payments, since that would be unsafe. - * - * @generated from protobuf rpc: DeleteAllPayments(lnrpc.DeleteAllPaymentsRequest) returns (lnrpc.DeleteAllPaymentsResponse); - */ - deleteAllPayments(input: DeleteAllPaymentsRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[39], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: DescribeGraph(lnrpc.ChannelGraphRequest) returns (lnrpc.ChannelGraph); - */ - describeGraph(input: ChannelGraphRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[40], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * lncli: `getnodemetrics` - * GetNodeMetrics returns node metrics calculated from the graph. Currently - * the only supported metric is betweenness centrality of individual nodes. - * - * @generated from protobuf rpc: GetNodeMetrics(lnrpc.NodeMetricsRequest) returns (lnrpc.NodeMetricsResponse); - */ - getNodeMetrics(input: NodeMetricsRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[41], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: GetChanInfo(lnrpc.ChanInfoRequest) returns (lnrpc.ChannelEdge); - */ - getChanInfo(input: ChanInfoRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[42], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * lncli: `getnodeinfo` - * GetNodeInfo returns the latest advertised, aggregated, and authenticated - * channel information for the specified node identified by its public key. - * - * @generated from protobuf rpc: GetNodeInfo(lnrpc.NodeInfoRequest) returns (lnrpc.NodeInfo); - */ - getNodeInfo(input: NodeInfoRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[43], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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[]=` - * to the URL. Unfortunately this map type doesn't appear in the REST API - * documentation because of a bug in the grpc-gateway library. - * - * @generated from protobuf rpc: QueryRoutes(lnrpc.QueryRoutesRequest) returns (lnrpc.QueryRoutesResponse); - */ - queryRoutes(input: QueryRoutesRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[44], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * lncli: `getnetworkinfo` - * GetNetworkInfo returns some basic stats about the known channel graph from - * the point of view of the node. - * - * @generated from protobuf rpc: GetNetworkInfo(lnrpc.NetworkInfoRequest) returns (lnrpc.NetworkInfo); - */ - getNetworkInfo(input: NetworkInfoRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[45], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * lncli: `stop` - * StopDaemon will send a shutdown request to the interrupt handler, triggering - * a graceful shutdown of the daemon. - * - * @generated from protobuf rpc: StopDaemon(lnrpc.StopRequest) returns (lnrpc.StopResponse); - */ - stopDaemon(input: StopRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[46], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * 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. - * - * @generated from protobuf rpc: SubscribeChannelGraph(lnrpc.GraphTopologySubscription) returns (stream lnrpc.GraphTopologyUpdate); - */ - subscribeChannelGraph(input: GraphTopologySubscription, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[47], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: DebugLevel(lnrpc.DebugLevelRequest) returns (lnrpc.DebugLevelResponse); - */ - debugLevel(input: DebugLevelRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[48], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * lncli: `feereport` - * FeeReport allows the caller to obtain a report detailing the current fee - * schedule enforced by the node globally for each channel. - * - * @generated from protobuf rpc: FeeReport(lnrpc.FeeReportRequest) returns (lnrpc.FeeReportResponse); - */ - feeReport(input: FeeReportRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[49], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * lncli: `updatechanpolicy` - * UpdateChannelPolicy allows the caller to update the fee schedule and - * channel policies for all channels globally, or a particular channel. - * - * @generated from protobuf rpc: UpdateChannelPolicy(lnrpc.PolicyUpdateRequest) returns (lnrpc.PolicyUpdateResponse); - */ - updateChannelPolicy(input: PolicyUpdateRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[50], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: ForwardingHistory(lnrpc.ForwardingHistoryRequest) returns (lnrpc.ForwardingHistoryResponse); - */ - forwardingHistory(input: ForwardingHistoryRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[51], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: ExportChannelBackup(lnrpc.ExportChannelBackupRequest) returns (lnrpc.ChannelBackup); - */ - exportChannelBackup(input: ExportChannelBackupRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[52], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * 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. - * - * @generated from protobuf rpc: ExportAllChannelBackups(lnrpc.ChanBackupExportRequest) returns (lnrpc.ChanBackupSnapshot); - */ - exportAllChannelBackups(input: ChanBackupExportRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[53], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * 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. - * - * @generated from protobuf rpc: VerifyChanBackup(lnrpc.ChanBackupSnapshot) returns (lnrpc.VerifyChanBackupResponse); - */ - verifyChanBackup(input: ChanBackupSnapshot, options?: RpcOptions): UnaryCall { - const method = this.methods[54], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: RestoreChannelBackups(lnrpc.RestoreChanBackupRequest) returns (lnrpc.RestoreBackupResponse); - */ - restoreChannelBackups(input: RestoreChanBackupRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[55], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * 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. - * - * @generated from protobuf rpc: SubscribeChannelBackups(lnrpc.ChannelBackupSubscription) returns (stream lnrpc.ChanBackupSnapshot); - */ - subscribeChannelBackups(input: ChannelBackupSubscription, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[56], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } - /** - * 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. - * - * @generated from protobuf rpc: BakeMacaroon(lnrpc.BakeMacaroonRequest) returns (lnrpc.BakeMacaroonResponse); - */ - bakeMacaroon(input: BakeMacaroonRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[57], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * lncli: `listmacaroonids` - * ListMacaroonIDs returns all root key IDs that are in use. - * - * @generated from protobuf rpc: ListMacaroonIDs(lnrpc.ListMacaroonIDsRequest) returns (lnrpc.ListMacaroonIDsResponse); - */ - listMacaroonIDs(input: ListMacaroonIDsRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[58], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * lncli: `deletemacaroonid` - * DeleteMacaroonID deletes the specified macaroon ID and invalidates all - * macaroons derived from that ID. - * - * @generated from protobuf rpc: DeleteMacaroonID(lnrpc.DeleteMacaroonIDRequest) returns (lnrpc.DeleteMacaroonIDResponse); - */ - deleteMacaroonID(input: DeleteMacaroonIDRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[59], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * lncli: `listpermissions` - * ListPermissions lists all RPC method URIs and their required macaroon - * permissions to access them. - * - * @generated from protobuf rpc: ListPermissions(lnrpc.ListPermissionsRequest) returns (lnrpc.ListPermissionsResponse); - */ - listPermissions(input: ListPermissionsRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[60], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * CheckMacaroonPermissions checks whether a request follows the constraints - * imposed on the macaroon and that the macaroon is authorized to follow the - * provided permissions. - * - * @generated from protobuf rpc: CheckMacaroonPermissions(lnrpc.CheckMacPermRequest) returns (lnrpc.CheckMacPermResponse); - */ - checkMacaroonPermissions(input: CheckMacPermRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[61], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * RegisterRPCMiddleware adds a new gRPC middleware to the interceptor chain. A - * gRPC middleware is software component external to lnd that aims to add - * additional business logic to lnd by observing/intercepting/validating - * incoming gRPC client requests and (if needed) replacing/overwriting outgoing - * messages before they're sent to the client. When registering the middleware - * must identify itself and indicate what custom macaroon caveats it wants to - * be responsible for. Only requests that contain a macaroon with that specific - * custom caveat are then sent to the middleware for inspection. The other - * option is to register for the read-only mode in which all requests/responses - * are forwarded for interception to the middleware but the middleware is not - * allowed to modify any responses. As a security measure, _no_ middleware can - * modify responses for requests made with _unencumbered_ macaroons! - * - * @generated from protobuf rpc: RegisterRPCMiddleware(stream lnrpc.RPCMiddlewareResponse) returns (stream lnrpc.RPCMiddlewareRequest); - */ - registerRPCMiddleware(options?: RpcOptions): DuplexStreamingCall { - const method = this.methods[62], opt = this._transport.mergeOptions(options); - return stackIntercept("duplex", this._transport, method, opt); - } - /** - * lncli: `sendcustom` - * SendCustomMessage sends a custom peer message. - * - * @generated from protobuf rpc: SendCustomMessage(lnrpc.SendCustomMessageRequest) returns (lnrpc.SendCustomMessageResponse); - */ - sendCustomMessage(input: SendCustomMessageRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[63], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * lncli: `subscribecustom` - * SubscribeCustomMessages subscribes to a stream of incoming custom peer - * messages. - * - * @generated from protobuf rpc: SubscribeCustomMessages(lnrpc.SubscribeCustomMessagesRequest) returns (stream lnrpc.CustomMessage); - */ - subscribeCustomMessages(input: SubscribeCustomMessagesRequest, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[64], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } - /** - * lncli: `listaliases` - * ListAliases returns the set of all aliases that have ever existed with - * their confirmed SCID (if it exists) and/or the base SCID (in the case of - * zero conf). - * - * @generated from protobuf rpc: ListAliases(lnrpc.ListAliasesRequest) returns (lnrpc.ListAliasesResponse); - */ - listAliases(input: ListAliasesRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[65], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * @generated from protobuf rpc: LookupHtlc(lnrpc.LookupHtlcRequest) returns (lnrpc.LookupHtlcResponse); - */ - lookupHtlc(input: LookupHtlcRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[66], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } -} +// @generated by protobuf-ts 2.8.1 +// @generated from protobuf file "lightning.proto" (package "lnrpc", syntax proto3) +// tslint:disable +import type { RpcTransport } from "@protobuf-ts/runtime-rpc"; +import type { ServiceInfo } from "@protobuf-ts/runtime-rpc"; +import { Lightning } from "./lightning.js"; +import type { ListAliasesResponse } from "./lightning.js"; +import type { ListAliasesRequest } from "./lightning.js"; +import type { CustomMessage } from "./lightning.js"; +import type { SubscribeCustomMessagesRequest } from "./lightning.js"; +import type { SendCustomMessageResponse } from "./lightning.js"; +import type { SendCustomMessageRequest } from "./lightning.js"; +import type { RPCMiddlewareRequest } from "./lightning.js"; +import type { RPCMiddlewareResponse } from "./lightning.js"; +import type { CheckMacPermResponse } from "./lightning.js"; +import type { CheckMacPermRequest } from "./lightning.js"; +import type { ListPermissionsResponse } from "./lightning.js"; +import type { ListPermissionsRequest } from "./lightning.js"; +import type { DeleteMacaroonIDResponse } from "./lightning.js"; +import type { DeleteMacaroonIDRequest } from "./lightning.js"; +import type { ListMacaroonIDsResponse } from "./lightning.js"; +import type { ListMacaroonIDsRequest } from "./lightning.js"; +import type { BakeMacaroonResponse } from "./lightning.js"; +import type { BakeMacaroonRequest } from "./lightning.js"; +import type { ChannelBackupSubscription } from "./lightning.js"; +import type { RestoreBackupResponse } from "./lightning.js"; +import type { RestoreChanBackupRequest } from "./lightning.js"; +import type { VerifyChanBackupResponse } from "./lightning.js"; +import type { ChanBackupSnapshot } from "./lightning.js"; +import type { ChanBackupExportRequest } from "./lightning.js"; +import type { ChannelBackup } from "./lightning.js"; +import type { ExportChannelBackupRequest } from "./lightning.js"; +import type { ForwardingHistoryResponse } from "./lightning.js"; +import type { ForwardingHistoryRequest } from "./lightning.js"; +import type { PolicyUpdateResponse } from "./lightning.js"; +import type { PolicyUpdateRequest } from "./lightning.js"; +import type { FeeReportResponse } from "./lightning.js"; +import type { FeeReportRequest } from "./lightning.js"; +import type { DebugLevelResponse } from "./lightning.js"; +import type { DebugLevelRequest } from "./lightning.js"; +import type { GraphTopologyUpdate } from "./lightning.js"; +import type { GraphTopologySubscription } from "./lightning.js"; +import type { StopResponse } from "./lightning.js"; +import type { StopRequest } from "./lightning.js"; +import type { NetworkInfo } from "./lightning.js"; +import type { NetworkInfoRequest } from "./lightning.js"; +import type { QueryRoutesResponse } from "./lightning.js"; +import type { QueryRoutesRequest } from "./lightning.js"; +import type { NodeInfo } from "./lightning.js"; +import type { NodeInfoRequest } from "./lightning.js"; +import type { ChannelEdge } from "./lightning.js"; +import type { ChanInfoRequest } from "./lightning.js"; +import type { NodeMetricsResponse } from "./lightning.js"; +import type { NodeMetricsRequest } from "./lightning.js"; +import type { ChannelGraph } from "./lightning.js"; +import type { ChannelGraphRequest } from "./lightning.js"; +import type { DeleteAllPaymentsResponse } from "./lightning.js"; +import type { DeleteAllPaymentsRequest } from "./lightning.js"; +import type { DeletePaymentResponse } from "./lightning.js"; +import type { DeletePaymentRequest } from "./lightning.js"; +import type { ListPaymentsResponse } from "./lightning.js"; +import type { ListPaymentsRequest } from "./lightning.js"; +import type { PayReq } from "./lightning.js"; +import type { PayReqString } from "./lightning.js"; +import type { InvoiceSubscription } from "./lightning.js"; +import type { PaymentHash } from "./lightning.js"; +import type { ListInvoiceResponse } from "./lightning.js"; +import type { ListInvoiceRequest } from "./lightning.js"; +import type { AddInvoiceResponse } from "./lightning.js"; +import type { Invoice } from "./lightning.js"; +import type { SendToRouteRequest } from "./lightning.js"; +import type { SendResponse } from "./lightning.js"; +import type { SendRequest } from "./lightning.js"; +import type { AbandonChannelResponse } from "./lightning.js"; +import type { AbandonChannelRequest } from "./lightning.js"; +import type { CloseStatusUpdate } from "./lightning.js"; +import type { CloseChannelRequest } from "./lightning.js"; +import type { ChannelAcceptRequest } from "./lightning.js"; +import type { ChannelAcceptResponse } from "./lightning.js"; +import type { DuplexStreamingCall } from "@protobuf-ts/runtime-rpc"; +import type { FundingStateStepResp } from "./lightning.js"; +import type { FundingTransitionMsg } from "./lightning.js"; +import type { BatchOpenChannelResponse } from "./lightning.js"; +import type { BatchOpenChannelRequest } from "./lightning.js"; +import type { OpenStatusUpdate } from "./lightning.js"; +import type { ChannelPoint } from "./lightning.js"; +import type { OpenChannelRequest } from "./lightning.js"; +import type { ClosedChannelsResponse } from "./lightning.js"; +import type { ClosedChannelsRequest } from "./lightning.js"; +import type { ChannelEventUpdate } from "./lightning.js"; +import type { ChannelEventSubscription } from "./lightning.js"; +import type { ListChannelsResponse } from "./lightning.js"; +import type { ListChannelsRequest } from "./lightning.js"; +import type { PendingChannelsResponse } from "./lightning.js"; +import type { PendingChannelsRequest } from "./lightning.js"; +import type { GetRecoveryInfoResponse } from "./lightning.js"; +import type { GetRecoveryInfoRequest } from "./lightning.js"; +import type { GetInfoResponse } from "./lightning.js"; +import type { GetInfoRequest } from "./lightning.js"; +import type { PeerEvent } from "./lightning.js"; +import type { PeerEventSubscription } from "./lightning.js"; +import type { ListPeersResponse } from "./lightning.js"; +import type { ListPeersRequest } from "./lightning.js"; +import type { DisconnectPeerResponse } from "./lightning.js"; +import type { DisconnectPeerRequest } from "./lightning.js"; +import type { ConnectPeerResponse } from "./lightning.js"; +import type { ConnectPeerRequest } from "./lightning.js"; +import type { VerifyMessageResponse } from "./lightning.js"; +import type { VerifyMessageRequest } from "./lightning.js"; +import type { SignMessageResponse } from "./lightning.js"; +import type { SignMessageRequest } from "./lightning.js"; +import type { NewAddressResponse } from "./lightning.js"; +import type { NewAddressRequest } from "./lightning.js"; +import type { SendManyResponse } from "./lightning.js"; +import type { SendManyRequest } from "./lightning.js"; +import type { Transaction } from "./lightning.js"; +import type { ServerStreamingCall } from "@protobuf-ts/runtime-rpc"; +import type { ListUnspentResponse } from "./lightning.js"; +import type { ListUnspentRequest } from "./lightning.js"; +import type { SendCoinsResponse } from "./lightning.js"; +import type { SendCoinsRequest } from "./lightning.js"; +import type { EstimateFeeResponse } from "./lightning.js"; +import type { EstimateFeeRequest } from "./lightning.js"; +import type { TransactionDetails } from "./lightning.js"; +import type { GetTransactionsRequest } from "./lightning.js"; +import type { ChannelBalanceResponse } from "./lightning.js"; +import type { ChannelBalanceRequest } from "./lightning.js"; +import { stackIntercept } from "@protobuf-ts/runtime-rpc"; +import type { WalletBalanceResponse } from "./lightning.js"; +import type { WalletBalanceRequest } from "./lightning.js"; +import type { UnaryCall } from "@protobuf-ts/runtime-rpc"; +import type { RpcOptions } from "@protobuf-ts/runtime-rpc"; + +import type { GetDebugInfoResponse } from "./lightning.js"; +import type { GetDebugInfoRequest } from "./lightning.js"; + +import type { LookupHtlcResolutionResponse } from "./lightning.js"; +import type { LookupHtlcResolutionRequest } from "./lightning.js"; +// +// Comments in this file will be directly parsed into the API +// Documentation as descriptions of the associated method, message, or field. +// These descriptions should go right above the definition of the object, and +// can be in either block or // comment format. +// +// An RPC method can be matched to an lncli command by placing a line in the +// beginning of the description in exactly the following format: +// lncli: `methodname` +// +// Failure to specify the exact name of the command will cause documentation +// generation to fail. +// +// More information on how exactly the gRPC documentation is generated from +// this proto file can be found here: +// https://github.com/lightninglabs/lightning-api + +/** + * Lightning is the main RPC server of the daemon. + * + * @generated from protobuf service lnrpc.Lightning + */ +export interface ILightningClient { + /** + * lncli: `walletbalance` + * WalletBalance returns total unspent outputs(confirmed and unconfirmed), all + * confirmed unspent outputs and all unconfirmed unspent outputs under control + * of the wallet. + * + * @generated from protobuf rpc: WalletBalance(lnrpc.WalletBalanceRequest) returns (lnrpc.WalletBalanceResponse); + */ + walletBalance(input: WalletBalanceRequest, options?: RpcOptions): UnaryCall; + /** + * 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. + * + * @generated from protobuf rpc: ChannelBalance(lnrpc.ChannelBalanceRequest) returns (lnrpc.ChannelBalanceResponse); + */ + channelBalance(input: ChannelBalanceRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: `listchaintxns` + * GetTransactions returns a list describing all the known transactions + * relevant to the wallet. + * + * @generated from protobuf rpc: GetTransactions(lnrpc.GetTransactionsRequest) returns (lnrpc.TransactionDetails); + */ + getTransactions(input: GetTransactionsRequest, options?: RpcOptions): UnaryCall; + /** + * 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[
]=` to the URL. Unfortunately this + * map type doesn't appear in the REST API documentation because of a bug in + * the grpc-gateway library. + * + * @generated from protobuf rpc: EstimateFee(lnrpc.EstimateFeeRequest) returns (lnrpc.EstimateFeeResponse); + */ + estimateFee(input: EstimateFeeRequest, options?: RpcOptions): UnaryCall; + /** + * 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. + * + * @generated from protobuf rpc: SendCoins(lnrpc.SendCoinsRequest) returns (lnrpc.SendCoinsResponse); + */ + sendCoins(input: SendCoinsRequest, options?: RpcOptions): UnaryCall; + /** + * 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. + * + * @generated from protobuf rpc: ListUnspent(lnrpc.ListUnspentRequest) returns (lnrpc.ListUnspentResponse); + */ + listUnspent(input: ListUnspentRequest, options?: RpcOptions): UnaryCall; + /** + * + * 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. + * + * @generated from protobuf rpc: SubscribeTransactions(lnrpc.GetTransactionsRequest) returns (stream lnrpc.Transaction); + */ + subscribeTransactions(input: GetTransactionsRequest, options?: RpcOptions): ServerStreamingCall; + /** + * 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. + * + * @generated from protobuf rpc: SendMany(lnrpc.SendManyRequest) returns (lnrpc.SendManyResponse); + */ + sendMany(input: SendManyRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: `newaddress` + * NewAddress creates a new address under control of the local wallet. + * + * @generated from protobuf rpc: NewAddress(lnrpc.NewAddressRequest) returns (lnrpc.NewAddressResponse); + */ + newAddress(input: NewAddressRequest, options?: RpcOptions): UnaryCall; + /** + * 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. + * + * @generated from protobuf rpc: SignMessage(lnrpc.SignMessageRequest) returns (lnrpc.SignMessageResponse); + */ + signMessage(input: SignMessageRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: `verifymessage` + * VerifyMessage verifies a signature over a message and recovers the signer's + * public key. The signature is only deemed valid if the recovered public key + * corresponds to a node key in the public Lightning network. 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. + * + * @generated from protobuf rpc: VerifyMessage(lnrpc.VerifyMessageRequest) returns (lnrpc.VerifyMessageResponse); + */ + verifyMessage(input: VerifyMessageRequest, options?: RpcOptions): UnaryCall; + /** + * 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. + * + * @generated from protobuf rpc: ConnectPeer(lnrpc.ConnectPeerRequest) returns (lnrpc.ConnectPeerResponse); + */ + connectPeer(input: ConnectPeerRequest, options?: RpcOptions): UnaryCall; + /** + * 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. + * + * @generated from protobuf rpc: DisconnectPeer(lnrpc.DisconnectPeerRequest) returns (lnrpc.DisconnectPeerResponse); + */ + disconnectPeer(input: DisconnectPeerRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: `listpeers` + * ListPeers returns a verbose listing of all currently active peers. + * + * @generated from protobuf rpc: ListPeers(lnrpc.ListPeersRequest) returns (lnrpc.ListPeersResponse); + */ + listPeers(input: ListPeersRequest, options?: RpcOptions): UnaryCall; + /** + * + * 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. + * + * @generated from protobuf rpc: SubscribePeerEvents(lnrpc.PeerEventSubscription) returns (stream lnrpc.PeerEvent); + */ + subscribePeerEvents(input: PeerEventSubscription, options?: RpcOptions): ServerStreamingCall; + /** + * 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. + * + * @generated from protobuf rpc: GetInfo(lnrpc.GetInfoRequest) returns (lnrpc.GetInfoResponse); + */ + getInfo(input: GetInfoRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: 'getdebuginfo' + * GetDebugInfo returns debug information concerning the state of the daemon + * and its subsystems. This includes the full configuration and the latest log + * entries from the log file. + * + * @generated from protobuf rpc: GetDebugInfo(lnrpc.GetDebugInfoRequest) returns (lnrpc.GetDebugInfoResponse); + */ + getDebugInfo(input: GetDebugInfoRequest, options?: RpcOptions): UnaryCall; + /** + * * 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. + * + * @generated from protobuf rpc: GetRecoveryInfo(lnrpc.GetRecoveryInfoRequest) returns (lnrpc.GetRecoveryInfoResponse); + */ + getRecoveryInfo(input: GetRecoveryInfoRequest, options?: RpcOptions): UnaryCall; + // TODO(roasbeef): merge with below with bool? + + /** + * 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. + * + * @generated from protobuf rpc: PendingChannels(lnrpc.PendingChannelsRequest) returns (lnrpc.PendingChannelsResponse); + */ + pendingChannels(input: PendingChannelsRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: `listchannels` + * ListChannels returns a description of all the open channels that this node + * is a participant in. + * + * @generated from protobuf rpc: ListChannels(lnrpc.ListChannelsRequest) returns (lnrpc.ListChannelsResponse); + */ + listChannels(input: ListChannelsRequest, options?: RpcOptions): UnaryCall; + /** + * + * 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. + * + * @generated from protobuf rpc: SubscribeChannelEvents(lnrpc.ChannelEventSubscription) returns (stream lnrpc.ChannelEventUpdate); + */ + subscribeChannelEvents(input: ChannelEventSubscription, options?: RpcOptions): ServerStreamingCall; + /** + * lncli: `closedchannels` + * ClosedChannels returns a description of all the closed channels that + * this node was a participant in. + * + * @generated from protobuf rpc: ClosedChannels(lnrpc.ClosedChannelsRequest) returns (lnrpc.ClosedChannelsResponse); + */ + closedChannels(input: ClosedChannelsRequest, options?: RpcOptions): UnaryCall; + /** + * + * 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. + * + * @generated from protobuf rpc: OpenChannelSync(lnrpc.OpenChannelRequest) returns (lnrpc.ChannelPoint); + */ + openChannelSync(input: OpenChannelRequest, options?: RpcOptions): UnaryCall; + /** + * 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. + * + * @generated from protobuf rpc: OpenChannel(lnrpc.OpenChannelRequest) returns (stream lnrpc.OpenStatusUpdate); + */ + openChannel(input: OpenChannelRequest, options?: RpcOptions): ServerStreamingCall; + /** + * lncli: `batchopenchannel` + * BatchOpenChannel attempts to open multiple single-funded channels in a + * single transaction in an atomic way. This means either all channel open + * requests succeed at once or all attempts are aborted if any of them fail. + * This is the safer variant of using PSBTs to manually fund a batch of + * channels through the OpenChannel RPC. + * + * @generated from protobuf rpc: BatchOpenChannel(lnrpc.BatchOpenChannelRequest) returns (lnrpc.BatchOpenChannelResponse); + */ + batchOpenChannel(input: BatchOpenChannelRequest, options?: RpcOptions): UnaryCall; + /** + * + * 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. + * + * @generated from protobuf rpc: FundingStateStep(lnrpc.FundingTransitionMsg) returns (lnrpc.FundingStateStepResp); + */ + fundingStateStep(input: FundingTransitionMsg, options?: RpcOptions): UnaryCall; + /** + * + * 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. + * + * @generated from protobuf rpc: ChannelAcceptor(stream lnrpc.ChannelAcceptResponse) returns (stream lnrpc.ChannelAcceptRequest); + */ + channelAcceptor(options?: RpcOptions): DuplexStreamingCall; + /** + * 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. + * + * @generated from protobuf rpc: CloseChannel(lnrpc.CloseChannelRequest) returns (stream lnrpc.CloseStatusUpdate); + */ + closeChannel(input: CloseChannelRequest, options?: RpcOptions): ServerStreamingCall; + /** + * 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. + * + * @generated from protobuf rpc: AbandonChannel(lnrpc.AbandonChannelRequest) returns (lnrpc.AbandonChannelResponse); + */ + abandonChannel(input: AbandonChannelRequest, options?: RpcOptions): UnaryCall; + /** + * 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. + * + * @deprecated + * @generated from protobuf rpc: SendPayment(stream lnrpc.SendRequest) returns (stream lnrpc.SendResponse); + */ + sendPayment(options?: RpcOptions): DuplexStreamingCall; + /** + * + * 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. + * + * @generated from protobuf rpc: SendPaymentSync(lnrpc.SendRequest) returns (lnrpc.SendResponse); + */ + sendPaymentSync(input: SendRequest, options?: RpcOptions): UnaryCall; + /** + * 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. + * + * @deprecated + * @generated from protobuf rpc: SendToRoute(stream lnrpc.SendToRouteRequest) returns (stream lnrpc.SendResponse); + */ + sendToRoute(options?: RpcOptions): DuplexStreamingCall; + /** + * + * SendToRouteSync is a synchronous version of SendToRoute. It Will block + * until the payment either fails or succeeds. + * + * @generated from protobuf rpc: SendToRouteSync(lnrpc.SendToRouteRequest) returns (lnrpc.SendResponse); + */ + sendToRouteSync(input: SendToRouteRequest, options?: RpcOptions): UnaryCall; + /** + * 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. + * + * @generated from protobuf rpc: AddInvoice(lnrpc.Invoice) returns (lnrpc.AddInvoiceResponse); + */ + addInvoice(input: Invoice, options?: RpcOptions): UnaryCall; + /** + * 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. + * + * @generated from protobuf rpc: ListInvoices(lnrpc.ListInvoiceRequest) returns (lnrpc.ListInvoiceResponse); + */ + listInvoices(input: ListInvoiceRequest, options?: RpcOptions): UnaryCall; + /** + * 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. + * + * @generated from protobuf rpc: LookupInvoice(lnrpc.PaymentHash) returns (lnrpc.Invoice); + */ + lookupInvoice(input: PaymentHash, options?: RpcOptions): UnaryCall; + /** + * + * 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, then 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. + * + * @generated from protobuf rpc: SubscribeInvoices(lnrpc.InvoiceSubscription) returns (stream lnrpc.Invoice); + */ + subscribeInvoices(input: InvoiceSubscription, options?: RpcOptions): ServerStreamingCall; + /** + * 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. + * + * @generated from protobuf rpc: DecodePayReq(lnrpc.PayReqString) returns (lnrpc.PayReq); + */ + decodePayReq(input: PayReqString, options?: RpcOptions): UnaryCall; + /** + * lncli: `listpayments` + * ListPayments returns a list of all outgoing payments. + * + * @generated from protobuf rpc: ListPayments(lnrpc.ListPaymentsRequest) returns (lnrpc.ListPaymentsResponse); + */ + listPayments(input: ListPaymentsRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: `deletepayments` + * DeletePayment deletes an outgoing payment from DB. Note that it will not + * attempt to delete an In-Flight payment, since that would be unsafe. + * + * @generated from protobuf rpc: DeletePayment(lnrpc.DeletePaymentRequest) returns (lnrpc.DeletePaymentResponse); + */ + deletePayment(input: DeletePaymentRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: `deletepayments --all` + * DeleteAllPayments deletes all outgoing payments from DB. Note that it will + * not attempt to delete In-Flight payments, since that would be unsafe. + * + * @generated from protobuf rpc: DeleteAllPayments(lnrpc.DeleteAllPaymentsRequest) returns (lnrpc.DeleteAllPaymentsResponse); + */ + deleteAllPayments(input: DeleteAllPaymentsRequest, options?: RpcOptions): UnaryCall; + /** + * 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. + * + * @generated from protobuf rpc: DescribeGraph(lnrpc.ChannelGraphRequest) returns (lnrpc.ChannelGraph); + */ + describeGraph(input: ChannelGraphRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: `getnodemetrics` + * GetNodeMetrics returns node metrics calculated from the graph. Currently + * the only supported metric is betweenness centrality of individual nodes. + * + * @generated from protobuf rpc: GetNodeMetrics(lnrpc.NodeMetricsRequest) returns (lnrpc.NodeMetricsResponse); + */ + getNodeMetrics(input: NodeMetricsRequest, options?: RpcOptions): UnaryCall; + /** + * 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. + * + * @generated from protobuf rpc: GetChanInfo(lnrpc.ChanInfoRequest) returns (lnrpc.ChannelEdge); + */ + getChanInfo(input: ChanInfoRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: `getnodeinfo` + * GetNodeInfo returns the latest advertised, aggregated, and authenticated + * channel information for the specified node identified by its public key. + * + * @generated from protobuf rpc: GetNodeInfo(lnrpc.NodeInfoRequest) returns (lnrpc.NodeInfo); + */ + getNodeInfo(input: NodeInfoRequest, options?: RpcOptions): UnaryCall; + /** + * 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[]=` + * to the URL. Unfortunately this map type doesn't appear in the REST API + * documentation because of a bug in the grpc-gateway library. + * + * @generated from protobuf rpc: QueryRoutes(lnrpc.QueryRoutesRequest) returns (lnrpc.QueryRoutesResponse); + */ + queryRoutes(input: QueryRoutesRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: `getnetworkinfo` + * GetNetworkInfo returns some basic stats about the known channel graph from + * the point of view of the node. + * + * @generated from protobuf rpc: GetNetworkInfo(lnrpc.NetworkInfoRequest) returns (lnrpc.NetworkInfo); + */ + getNetworkInfo(input: NetworkInfoRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: `stop` + * StopDaemon will send a shutdown request to the interrupt handler, triggering + * a graceful shutdown of the daemon. + * + * @generated from protobuf rpc: StopDaemon(lnrpc.StopRequest) returns (lnrpc.StopResponse); + */ + stopDaemon(input: StopRequest, options?: RpcOptions): UnaryCall; + /** + * + * 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. + * + * @generated from protobuf rpc: SubscribeChannelGraph(lnrpc.GraphTopologySubscription) returns (stream lnrpc.GraphTopologyUpdate); + */ + subscribeChannelGraph(input: GraphTopologySubscription, options?: RpcOptions): ServerStreamingCall; + /** + * 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. + * + * @generated from protobuf rpc: DebugLevel(lnrpc.DebugLevelRequest) returns (lnrpc.DebugLevelResponse); + */ + debugLevel(input: DebugLevelRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: `feereport` + * FeeReport allows the caller to obtain a report detailing the current fee + * schedule enforced by the node globally for each channel. + * + * @generated from protobuf rpc: FeeReport(lnrpc.FeeReportRequest) returns (lnrpc.FeeReportResponse); + */ + feeReport(input: FeeReportRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: `updatechanpolicy` + * UpdateChannelPolicy allows the caller to update the fee schedule and + * channel policies for all channels globally, or a particular channel. + * + * @generated from protobuf rpc: UpdateChannelPolicy(lnrpc.PolicyUpdateRequest) returns (lnrpc.PolicyUpdateResponse); + */ + updateChannelPolicy(input: PolicyUpdateRequest, options?: RpcOptions): UnaryCall; + /** + * 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. + * + * @generated from protobuf rpc: ForwardingHistory(lnrpc.ForwardingHistoryRequest) returns (lnrpc.ForwardingHistoryResponse); + */ + forwardingHistory(input: ForwardingHistoryRequest, options?: RpcOptions): UnaryCall; + /** + * 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. + * + * @generated from protobuf rpc: ExportChannelBackup(lnrpc.ExportChannelBackupRequest) returns (lnrpc.ChannelBackup); + */ + exportChannelBackup(input: ExportChannelBackupRequest, options?: RpcOptions): UnaryCall; + /** + * + * 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. + * + * @generated from protobuf rpc: ExportAllChannelBackups(lnrpc.ChanBackupExportRequest) returns (lnrpc.ChanBackupSnapshot); + */ + exportAllChannelBackups(input: ChanBackupExportRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: `verifychanbackup` + * 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. + * + * @generated from protobuf rpc: VerifyChanBackup(lnrpc.ChanBackupSnapshot) returns (lnrpc.VerifyChanBackupResponse); + */ + verifyChanBackup(input: ChanBackupSnapshot, options?: RpcOptions): UnaryCall; + /** + * 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. + * + * @generated from protobuf rpc: RestoreChannelBackups(lnrpc.RestoreChanBackupRequest) returns (lnrpc.RestoreBackupResponse); + */ + restoreChannelBackups(input: RestoreChanBackupRequest, options?: RpcOptions): UnaryCall; + /** + * + * 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. + * + * @generated from protobuf rpc: SubscribeChannelBackups(lnrpc.ChannelBackupSubscription) returns (stream lnrpc.ChanBackupSnapshot); + */ + subscribeChannelBackups(input: ChannelBackupSubscription, options?: RpcOptions): ServerStreamingCall; + /** + * 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. + * + * @generated from protobuf rpc: BakeMacaroon(lnrpc.BakeMacaroonRequest) returns (lnrpc.BakeMacaroonResponse); + */ + bakeMacaroon(input: BakeMacaroonRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: `listmacaroonids` + * ListMacaroonIDs returns all root key IDs that are in use. + * + * @generated from protobuf rpc: ListMacaroonIDs(lnrpc.ListMacaroonIDsRequest) returns (lnrpc.ListMacaroonIDsResponse); + */ + listMacaroonIDs(input: ListMacaroonIDsRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: `deletemacaroonid` + * DeleteMacaroonID deletes the specified macaroon ID and invalidates all + * macaroons derived from that ID. + * + * @generated from protobuf rpc: DeleteMacaroonID(lnrpc.DeleteMacaroonIDRequest) returns (lnrpc.DeleteMacaroonIDResponse); + */ + deleteMacaroonID(input: DeleteMacaroonIDRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: `listpermissions` + * ListPermissions lists all RPC method URIs and their required macaroon + * permissions to access them. + * + * @generated from protobuf rpc: ListPermissions(lnrpc.ListPermissionsRequest) returns (lnrpc.ListPermissionsResponse); + */ + listPermissions(input: ListPermissionsRequest, options?: RpcOptions): UnaryCall; + /** + * + * CheckMacaroonPermissions checks whether a request follows the constraints + * imposed on the macaroon and that the macaroon is authorized to follow the + * provided permissions. + * + * @generated from protobuf rpc: CheckMacaroonPermissions(lnrpc.CheckMacPermRequest) returns (lnrpc.CheckMacPermResponse); + */ + checkMacaroonPermissions(input: CheckMacPermRequest, options?: RpcOptions): UnaryCall; + /** + * + * RegisterRPCMiddleware adds a new gRPC middleware to the interceptor chain. A + * gRPC middleware is software component external to lnd that aims to add + * additional business logic to lnd by observing/intercepting/validating + * incoming gRPC client requests and (if needed) replacing/overwriting outgoing + * messages before they're sent to the client. When registering the middleware + * must identify itself and indicate what custom macaroon caveats it wants to + * be responsible for. Only requests that contain a macaroon with that specific + * custom caveat are then sent to the middleware for inspection. The other + * option is to register for the read-only mode in which all requests/responses + * are forwarded for interception to the middleware but the middleware is not + * allowed to modify any responses. As a security measure, _no_ middleware can + * modify responses for requests made with _unencumbered_ macaroons! + * + * @generated from protobuf rpc: RegisterRPCMiddleware(stream lnrpc.RPCMiddlewareResponse) returns (stream lnrpc.RPCMiddlewareRequest); + */ + registerRPCMiddleware(options?: RpcOptions): DuplexStreamingCall; + /** + * lncli: `sendcustom` + * SendCustomMessage sends a custom peer message. + * + * @generated from protobuf rpc: SendCustomMessage(lnrpc.SendCustomMessageRequest) returns (lnrpc.SendCustomMessageResponse); + */ + sendCustomMessage(input: SendCustomMessageRequest, options?: RpcOptions): UnaryCall; + /** + * lncli: `subscribecustom` + * SubscribeCustomMessages subscribes to a stream of incoming custom peer + * messages. + * + * To include messages with type outside of the custom range (>= 32768) lnd + * needs to be compiled with the `dev` build tag, and the message type to + * override should be specified in lnd's experimental protocol configuration. + * + * @generated from protobuf rpc: SubscribeCustomMessages(lnrpc.SubscribeCustomMessagesRequest) returns (stream lnrpc.CustomMessage); + */ + subscribeCustomMessages(input: SubscribeCustomMessagesRequest, options?: RpcOptions): ServerStreamingCall; + /** + * lncli: `listaliases` + * ListAliases returns the set of all aliases that have ever existed with + * their confirmed SCID (if it exists) and/or the base SCID (in the case of + * zero conf). + * + * @generated from protobuf rpc: ListAliases(lnrpc.ListAliasesRequest) returns (lnrpc.ListAliasesResponse); + */ + listAliases(input: ListAliasesRequest, options?: RpcOptions): UnaryCall; + /** + * + * LookupHtlcResolution retrieves a final htlc resolution from the database. + * If the htlc has no final resolution yet, a NotFound grpc status code is + * returned. + * + * @generated from protobuf rpc: LookupHtlcResolution(lnrpc.LookupHtlcResolutionRequest) returns (lnrpc.LookupHtlcResolutionResponse); + */ + lookupHtlcResolution(input: LookupHtlcResolutionRequest, options?: RpcOptions): UnaryCall; +} +// +// Comments in this file will be directly parsed into the API +// Documentation as descriptions of the associated method, message, or field. +// These descriptions should go right above the definition of the object, and +// can be in either block or // comment format. +// +// An RPC method can be matched to an lncli command by placing a line in the +// beginning of the description in exactly the following format: +// lncli: `methodname` +// +// Failure to specify the exact name of the command will cause documentation +// generation to fail. +// +// More information on how exactly the gRPC documentation is generated from +// this proto file can be found here: +// https://github.com/lightninglabs/lightning-api + +/** + * Lightning is the main RPC server of the daemon. + * + * @generated from protobuf service lnrpc.Lightning + */ +export class LightningClient implements ILightningClient, ServiceInfo { + typeName = Lightning.typeName; + methods = Lightning.methods; + options = Lightning.options; + constructor(private readonly _transport: RpcTransport) { + } + /** + * lncli: `walletbalance` + * WalletBalance returns total unspent outputs(confirmed and unconfirmed), all + * confirmed unspent outputs and all unconfirmed unspent outputs under control + * of the wallet. + * + * @generated from protobuf rpc: WalletBalance(lnrpc.WalletBalanceRequest) returns (lnrpc.WalletBalanceResponse); + */ + walletBalance(input: WalletBalanceRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[0], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: ChannelBalance(lnrpc.ChannelBalanceRequest) returns (lnrpc.ChannelBalanceResponse); + */ + channelBalance(input: ChannelBalanceRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[1], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `listchaintxns` + * GetTransactions returns a list describing all the known transactions + * relevant to the wallet. + * + * @generated from protobuf rpc: GetTransactions(lnrpc.GetTransactionsRequest) returns (lnrpc.TransactionDetails); + */ + getTransactions(input: GetTransactionsRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[2], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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[
]=` to the URL. Unfortunately this + * map type doesn't appear in the REST API documentation because of a bug in + * the grpc-gateway library. + * + * @generated from protobuf rpc: EstimateFee(lnrpc.EstimateFeeRequest) returns (lnrpc.EstimateFeeResponse); + */ + estimateFee(input: EstimateFeeRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[3], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: SendCoins(lnrpc.SendCoinsRequest) returns (lnrpc.SendCoinsResponse); + */ + sendCoins(input: SendCoinsRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[4], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: ListUnspent(lnrpc.ListUnspentRequest) returns (lnrpc.ListUnspentResponse); + */ + listUnspent(input: ListUnspentRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[5], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * 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. + * + * @generated from protobuf rpc: SubscribeTransactions(lnrpc.GetTransactionsRequest) returns (stream lnrpc.Transaction); + */ + subscribeTransactions(input: GetTransactionsRequest, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[6], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: SendMany(lnrpc.SendManyRequest) returns (lnrpc.SendManyResponse); + */ + sendMany(input: SendManyRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[7], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `newaddress` + * NewAddress creates a new address under control of the local wallet. + * + * @generated from protobuf rpc: NewAddress(lnrpc.NewAddressRequest) returns (lnrpc.NewAddressResponse); + */ + newAddress(input: NewAddressRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[8], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: SignMessage(lnrpc.SignMessageRequest) returns (lnrpc.SignMessageResponse); + */ + signMessage(input: SignMessageRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[9], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `verifymessage` + * VerifyMessage verifies a signature over a message and recovers the signer's + * public key. The signature is only deemed valid if the recovered public key + * corresponds to a node key in the public Lightning network. 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. + * + * @generated from protobuf rpc: VerifyMessage(lnrpc.VerifyMessageRequest) returns (lnrpc.VerifyMessageResponse); + */ + verifyMessage(input: VerifyMessageRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[10], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: ConnectPeer(lnrpc.ConnectPeerRequest) returns (lnrpc.ConnectPeerResponse); + */ + connectPeer(input: ConnectPeerRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[11], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: DisconnectPeer(lnrpc.DisconnectPeerRequest) returns (lnrpc.DisconnectPeerResponse); + */ + disconnectPeer(input: DisconnectPeerRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[12], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `listpeers` + * ListPeers returns a verbose listing of all currently active peers. + * + * @generated from protobuf rpc: ListPeers(lnrpc.ListPeersRequest) returns (lnrpc.ListPeersResponse); + */ + listPeers(input: ListPeersRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[13], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * 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. + * + * @generated from protobuf rpc: SubscribePeerEvents(lnrpc.PeerEventSubscription) returns (stream lnrpc.PeerEvent); + */ + subscribePeerEvents(input: PeerEventSubscription, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[14], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: GetInfo(lnrpc.GetInfoRequest) returns (lnrpc.GetInfoResponse); + */ + getInfo(input: GetInfoRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[15], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: 'getdebuginfo' + * GetDebugInfo returns debug information concerning the state of the daemon + * and its subsystems. This includes the full configuration and the latest log + * entries from the log file. + * + * @generated from protobuf rpc: GetDebugInfo(lnrpc.GetDebugInfoRequest) returns (lnrpc.GetDebugInfoResponse); + */ + getDebugInfo(input: GetDebugInfoRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[16], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * * 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. + * + * @generated from protobuf rpc: GetRecoveryInfo(lnrpc.GetRecoveryInfoRequest) returns (lnrpc.GetRecoveryInfoResponse); + */ + getRecoveryInfo(input: GetRecoveryInfoRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[17], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + // TODO(roasbeef): merge with below with bool? + + /** + * 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. + * + * @generated from protobuf rpc: PendingChannels(lnrpc.PendingChannelsRequest) returns (lnrpc.PendingChannelsResponse); + */ + pendingChannels(input: PendingChannelsRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[18], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `listchannels` + * ListChannels returns a description of all the open channels that this node + * is a participant in. + * + * @generated from protobuf rpc: ListChannels(lnrpc.ListChannelsRequest) returns (lnrpc.ListChannelsResponse); + */ + listChannels(input: ListChannelsRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[19], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * 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. + * + * @generated from protobuf rpc: SubscribeChannelEvents(lnrpc.ChannelEventSubscription) returns (stream lnrpc.ChannelEventUpdate); + */ + subscribeChannelEvents(input: ChannelEventSubscription, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[20], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } + /** + * lncli: `closedchannels` + * ClosedChannels returns a description of all the closed channels that + * this node was a participant in. + * + * @generated from protobuf rpc: ClosedChannels(lnrpc.ClosedChannelsRequest) returns (lnrpc.ClosedChannelsResponse); + */ + closedChannels(input: ClosedChannelsRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[21], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * 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. + * + * @generated from protobuf rpc: OpenChannelSync(lnrpc.OpenChannelRequest) returns (lnrpc.ChannelPoint); + */ + openChannelSync(input: OpenChannelRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[22], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: OpenChannel(lnrpc.OpenChannelRequest) returns (stream lnrpc.OpenStatusUpdate); + */ + openChannel(input: OpenChannelRequest, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[23], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } + /** + * lncli: `batchopenchannel` + * BatchOpenChannel attempts to open multiple single-funded channels in a + * single transaction in an atomic way. This means either all channel open + * requests succeed at once or all attempts are aborted if any of them fail. + * This is the safer variant of using PSBTs to manually fund a batch of + * channels through the OpenChannel RPC. + * + * @generated from protobuf rpc: BatchOpenChannel(lnrpc.BatchOpenChannelRequest) returns (lnrpc.BatchOpenChannelResponse); + */ + batchOpenChannel(input: BatchOpenChannelRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[24], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * 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. + * + * @generated from protobuf rpc: FundingStateStep(lnrpc.FundingTransitionMsg) returns (lnrpc.FundingStateStepResp); + */ + fundingStateStep(input: FundingTransitionMsg, options?: RpcOptions): UnaryCall { + const method = this.methods[25], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * 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. + * + * @generated from protobuf rpc: ChannelAcceptor(stream lnrpc.ChannelAcceptResponse) returns (stream lnrpc.ChannelAcceptRequest); + */ + channelAcceptor(options?: RpcOptions): DuplexStreamingCall { + const method = this.methods[26], opt = this._transport.mergeOptions(options); + return stackIntercept("duplex", this._transport, method, opt); + } + /** + * 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. + * + * @generated from protobuf rpc: CloseChannel(lnrpc.CloseChannelRequest) returns (stream lnrpc.CloseStatusUpdate); + */ + closeChannel(input: CloseChannelRequest, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[27], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: AbandonChannel(lnrpc.AbandonChannelRequest) returns (lnrpc.AbandonChannelResponse); + */ + abandonChannel(input: AbandonChannelRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[28], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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. + * + * @deprecated + * @generated from protobuf rpc: SendPayment(stream lnrpc.SendRequest) returns (stream lnrpc.SendResponse); + */ + sendPayment(options?: RpcOptions): DuplexStreamingCall { + const method = this.methods[29], opt = this._transport.mergeOptions(options); + return stackIntercept("duplex", this._transport, method, opt); + } + /** + * + * 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. + * + * @generated from protobuf rpc: SendPaymentSync(lnrpc.SendRequest) returns (lnrpc.SendResponse); + */ + sendPaymentSync(input: SendRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[30], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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. + * + * @deprecated + * @generated from protobuf rpc: SendToRoute(stream lnrpc.SendToRouteRequest) returns (stream lnrpc.SendResponse); + */ + sendToRoute(options?: RpcOptions): DuplexStreamingCall { + const method = this.methods[31], opt = this._transport.mergeOptions(options); + return stackIntercept("duplex", this._transport, method, opt); + } + /** + * + * SendToRouteSync is a synchronous version of SendToRoute. It Will block + * until the payment either fails or succeeds. + * + * @generated from protobuf rpc: SendToRouteSync(lnrpc.SendToRouteRequest) returns (lnrpc.SendResponse); + */ + sendToRouteSync(input: SendToRouteRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[32], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: AddInvoice(lnrpc.Invoice) returns (lnrpc.AddInvoiceResponse); + */ + addInvoice(input: Invoice, options?: RpcOptions): UnaryCall { + const method = this.methods[33], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: ListInvoices(lnrpc.ListInvoiceRequest) returns (lnrpc.ListInvoiceResponse); + */ + listInvoices(input: ListInvoiceRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[34], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: LookupInvoice(lnrpc.PaymentHash) returns (lnrpc.Invoice); + */ + lookupInvoice(input: PaymentHash, options?: RpcOptions): UnaryCall { + const method = this.methods[35], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * 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, then 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. + * + * @generated from protobuf rpc: SubscribeInvoices(lnrpc.InvoiceSubscription) returns (stream lnrpc.Invoice); + */ + subscribeInvoices(input: InvoiceSubscription, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[36], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: DecodePayReq(lnrpc.PayReqString) returns (lnrpc.PayReq); + */ + decodePayReq(input: PayReqString, options?: RpcOptions): UnaryCall { + const method = this.methods[37], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `listpayments` + * ListPayments returns a list of all outgoing payments. + * + * @generated from protobuf rpc: ListPayments(lnrpc.ListPaymentsRequest) returns (lnrpc.ListPaymentsResponse); + */ + listPayments(input: ListPaymentsRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[38], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `deletepayments` + * DeletePayment deletes an outgoing payment from DB. Note that it will not + * attempt to delete an In-Flight payment, since that would be unsafe. + * + * @generated from protobuf rpc: DeletePayment(lnrpc.DeletePaymentRequest) returns (lnrpc.DeletePaymentResponse); + */ + deletePayment(input: DeletePaymentRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[39], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `deletepayments --all` + * DeleteAllPayments deletes all outgoing payments from DB. Note that it will + * not attempt to delete In-Flight payments, since that would be unsafe. + * + * @generated from protobuf rpc: DeleteAllPayments(lnrpc.DeleteAllPaymentsRequest) returns (lnrpc.DeleteAllPaymentsResponse); + */ + deleteAllPayments(input: DeleteAllPaymentsRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[40], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: DescribeGraph(lnrpc.ChannelGraphRequest) returns (lnrpc.ChannelGraph); + */ + describeGraph(input: ChannelGraphRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[41], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `getnodemetrics` + * GetNodeMetrics returns node metrics calculated from the graph. Currently + * the only supported metric is betweenness centrality of individual nodes. + * + * @generated from protobuf rpc: GetNodeMetrics(lnrpc.NodeMetricsRequest) returns (lnrpc.NodeMetricsResponse); + */ + getNodeMetrics(input: NodeMetricsRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[42], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: GetChanInfo(lnrpc.ChanInfoRequest) returns (lnrpc.ChannelEdge); + */ + getChanInfo(input: ChanInfoRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[43], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `getnodeinfo` + * GetNodeInfo returns the latest advertised, aggregated, and authenticated + * channel information for the specified node identified by its public key. + * + * @generated from protobuf rpc: GetNodeInfo(lnrpc.NodeInfoRequest) returns (lnrpc.NodeInfo); + */ + getNodeInfo(input: NodeInfoRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[44], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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[]=` + * to the URL. Unfortunately this map type doesn't appear in the REST API + * documentation because of a bug in the grpc-gateway library. + * + * @generated from protobuf rpc: QueryRoutes(lnrpc.QueryRoutesRequest) returns (lnrpc.QueryRoutesResponse); + */ + queryRoutes(input: QueryRoutesRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[45], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `getnetworkinfo` + * GetNetworkInfo returns some basic stats about the known channel graph from + * the point of view of the node. + * + * @generated from protobuf rpc: GetNetworkInfo(lnrpc.NetworkInfoRequest) returns (lnrpc.NetworkInfo); + */ + getNetworkInfo(input: NetworkInfoRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[46], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `stop` + * StopDaemon will send a shutdown request to the interrupt handler, triggering + * a graceful shutdown of the daemon. + * + * @generated from protobuf rpc: StopDaemon(lnrpc.StopRequest) returns (lnrpc.StopResponse); + */ + stopDaemon(input: StopRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[47], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * 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. + * + * @generated from protobuf rpc: SubscribeChannelGraph(lnrpc.GraphTopologySubscription) returns (stream lnrpc.GraphTopologyUpdate); + */ + subscribeChannelGraph(input: GraphTopologySubscription, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[48], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: DebugLevel(lnrpc.DebugLevelRequest) returns (lnrpc.DebugLevelResponse); + */ + debugLevel(input: DebugLevelRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[49], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `feereport` + * FeeReport allows the caller to obtain a report detailing the current fee + * schedule enforced by the node globally for each channel. + * + * @generated from protobuf rpc: FeeReport(lnrpc.FeeReportRequest) returns (lnrpc.FeeReportResponse); + */ + feeReport(input: FeeReportRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[50], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `updatechanpolicy` + * UpdateChannelPolicy allows the caller to update the fee schedule and + * channel policies for all channels globally, or a particular channel. + * + * @generated from protobuf rpc: UpdateChannelPolicy(lnrpc.PolicyUpdateRequest) returns (lnrpc.PolicyUpdateResponse); + */ + updateChannelPolicy(input: PolicyUpdateRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[51], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: ForwardingHistory(lnrpc.ForwardingHistoryRequest) returns (lnrpc.ForwardingHistoryResponse); + */ + forwardingHistory(input: ForwardingHistoryRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[52], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: ExportChannelBackup(lnrpc.ExportChannelBackupRequest) returns (lnrpc.ChannelBackup); + */ + exportChannelBackup(input: ExportChannelBackupRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[53], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * 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. + * + * @generated from protobuf rpc: ExportAllChannelBackups(lnrpc.ChanBackupExportRequest) returns (lnrpc.ChanBackupSnapshot); + */ + exportAllChannelBackups(input: ChanBackupExportRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[54], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `verifychanbackup` + * 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. + * + * @generated from protobuf rpc: VerifyChanBackup(lnrpc.ChanBackupSnapshot) returns (lnrpc.VerifyChanBackupResponse); + */ + verifyChanBackup(input: ChanBackupSnapshot, options?: RpcOptions): UnaryCall { + const method = this.methods[55], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: RestoreChannelBackups(lnrpc.RestoreChanBackupRequest) returns (lnrpc.RestoreBackupResponse); + */ + restoreChannelBackups(input: RestoreChanBackupRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[56], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * 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. + * + * @generated from protobuf rpc: SubscribeChannelBackups(lnrpc.ChannelBackupSubscription) returns (stream lnrpc.ChanBackupSnapshot); + */ + subscribeChannelBackups(input: ChannelBackupSubscription, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[57], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } + /** + * 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. + * + * @generated from protobuf rpc: BakeMacaroon(lnrpc.BakeMacaroonRequest) returns (lnrpc.BakeMacaroonResponse); + */ + bakeMacaroon(input: BakeMacaroonRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[58], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `listmacaroonids` + * ListMacaroonIDs returns all root key IDs that are in use. + * + * @generated from protobuf rpc: ListMacaroonIDs(lnrpc.ListMacaroonIDsRequest) returns (lnrpc.ListMacaroonIDsResponse); + */ + listMacaroonIDs(input: ListMacaroonIDsRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[59], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `deletemacaroonid` + * DeleteMacaroonID deletes the specified macaroon ID and invalidates all + * macaroons derived from that ID. + * + * @generated from protobuf rpc: DeleteMacaroonID(lnrpc.DeleteMacaroonIDRequest) returns (lnrpc.DeleteMacaroonIDResponse); + */ + deleteMacaroonID(input: DeleteMacaroonIDRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[60], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `listpermissions` + * ListPermissions lists all RPC method URIs and their required macaroon + * permissions to access them. + * + * @generated from protobuf rpc: ListPermissions(lnrpc.ListPermissionsRequest) returns (lnrpc.ListPermissionsResponse); + */ + listPermissions(input: ListPermissionsRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[61], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * CheckMacaroonPermissions checks whether a request follows the constraints + * imposed on the macaroon and that the macaroon is authorized to follow the + * provided permissions. + * + * @generated from protobuf rpc: CheckMacaroonPermissions(lnrpc.CheckMacPermRequest) returns (lnrpc.CheckMacPermResponse); + */ + checkMacaroonPermissions(input: CheckMacPermRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[62], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * RegisterRPCMiddleware adds a new gRPC middleware to the interceptor chain. A + * gRPC middleware is software component external to lnd that aims to add + * additional business logic to lnd by observing/intercepting/validating + * incoming gRPC client requests and (if needed) replacing/overwriting outgoing + * messages before they're sent to the client. When registering the middleware + * must identify itself and indicate what custom macaroon caveats it wants to + * be responsible for. Only requests that contain a macaroon with that specific + * custom caveat are then sent to the middleware for inspection. The other + * option is to register for the read-only mode in which all requests/responses + * are forwarded for interception to the middleware but the middleware is not + * allowed to modify any responses. As a security measure, _no_ middleware can + * modify responses for requests made with _unencumbered_ macaroons! + * + * @generated from protobuf rpc: RegisterRPCMiddleware(stream lnrpc.RPCMiddlewareResponse) returns (stream lnrpc.RPCMiddlewareRequest); + */ + registerRPCMiddleware(options?: RpcOptions): DuplexStreamingCall { + const method = this.methods[63], opt = this._transport.mergeOptions(options); + return stackIntercept("duplex", this._transport, method, opt); + } + /** + * lncli: `sendcustom` + * SendCustomMessage sends a custom peer message. + * + * @generated from protobuf rpc: SendCustomMessage(lnrpc.SendCustomMessageRequest) returns (lnrpc.SendCustomMessageResponse); + */ + sendCustomMessage(input: SendCustomMessageRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[64], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * lncli: `subscribecustom` + * SubscribeCustomMessages subscribes to a stream of incoming custom peer + * messages. + * + * To include messages with type outside of the custom range (>= 32768) lnd + * needs to be compiled with the `dev` build tag, and the message type to + * override should be specified in lnd's experimental protocol configuration. + * + * @generated from protobuf rpc: SubscribeCustomMessages(lnrpc.SubscribeCustomMessagesRequest) returns (stream lnrpc.CustomMessage); + */ + subscribeCustomMessages(input: SubscribeCustomMessagesRequest, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[65], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } + /** + * lncli: `listaliases` + * ListAliases returns the set of all aliases that have ever existed with + * their confirmed SCID (if it exists) and/or the base SCID (in the case of + * zero conf). + * + * @generated from protobuf rpc: ListAliases(lnrpc.ListAliasesRequest) returns (lnrpc.ListAliasesResponse); + */ + listAliases(input: ListAliasesRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[66], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * LookupHtlcResolution retrieves a final htlc resolution from the database. + * If the htlc has no final resolution yet, a NotFound grpc status code is + * returned. + * + * @generated from protobuf rpc: LookupHtlcResolution(lnrpc.LookupHtlcResolutionRequest) returns (lnrpc.LookupHtlcResolutionResponse); + */ + lookupHtlcResolution(input: LookupHtlcResolutionRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[67], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } +} diff --git a/proto/lnd/lightning.ts b/proto/lnd/lightning.ts index fe258d0a..3b6d4149 100644 --- a/proto/lnd/lightning.ts +++ b/proto/lnd/lightning.ts @@ -1,20995 +1,22496 @@ -// @generated by protobuf-ts 2.8.1 -// @generated from protobuf file "lightning.proto" (package "lnrpc", syntax proto3) -// tslint:disable -import { ServiceType } from "@protobuf-ts/runtime-rpc"; -import type { BinaryWriteOptions } from "@protobuf-ts/runtime"; -import type { IBinaryWriter } from "@protobuf-ts/runtime"; -import { WireType } from "@protobuf-ts/runtime"; -import type { BinaryReadOptions } from "@protobuf-ts/runtime"; -import type { IBinaryReader } from "@protobuf-ts/runtime"; -import { UnknownFieldHandler } from "@protobuf-ts/runtime"; -import type { PartialMessage } from "@protobuf-ts/runtime"; -import { reflectionMergePartial } from "@protobuf-ts/runtime"; -import { MESSAGE_TYPE } from "@protobuf-ts/runtime"; -import { MessageType } from "@protobuf-ts/runtime"; -/** - * @generated from protobuf message lnrpc.LookupHtlcRequest - */ -export interface LookupHtlcRequest { - /** - * @generated from protobuf field: uint64 chan_id = 1; - */ - chanId: bigint; - /** - * @generated from protobuf field: uint64 htlc_index = 2; - */ - htlcIndex: bigint; -} -/** - * @generated from protobuf message lnrpc.LookupHtlcResponse - */ -export interface LookupHtlcResponse { - /** - * @generated from protobuf field: bool settled = 1; - */ - settled: boolean; - /** - * @generated from protobuf field: bool offchain = 2; - */ - offchain: boolean; -} -/** - * @generated from protobuf message lnrpc.SubscribeCustomMessagesRequest - */ -export interface SubscribeCustomMessagesRequest { -} -/** - * @generated from protobuf message lnrpc.CustomMessage - */ -export interface CustomMessage { - /** - * Peer from which the message originates - * - * @generated from protobuf field: bytes peer = 1; - */ - peer: Uint8Array; - /** - * Message type. This value will be in the custom range (>= 32768). - * - * @generated from protobuf field: uint32 type = 2; - */ - type: number; - /** - * Raw message data - * - * @generated from protobuf field: bytes data = 3; - */ - data: Uint8Array; -} -/** - * @generated from protobuf message lnrpc.SendCustomMessageRequest - */ -export interface SendCustomMessageRequest { - /** - * Peer to send the message to - * - * @generated from protobuf field: bytes peer = 1; - */ - peer: Uint8Array; - /** - * Message type. This value needs to be in the custom range (>= 32768). - * - * @generated from protobuf field: uint32 type = 2; - */ - type: number; - /** - * Raw message data. - * - * @generated from protobuf field: bytes data = 3; - */ - data: Uint8Array; -} -/** - * @generated from protobuf message lnrpc.SendCustomMessageResponse - */ -export interface SendCustomMessageResponse { -} -/** - * @generated from protobuf message lnrpc.Utxo - */ -export interface Utxo { - /** - * The type of address - * - * @generated from protobuf field: lnrpc.AddressType address_type = 1; - */ - addressType: AddressType; - /** - * The address - * - * @generated from protobuf field: string address = 2; - */ - address: string; - /** - * The value of the unspent coin in satoshis - * - * @generated from protobuf field: int64 amount_sat = 3; - */ - amountSat: bigint; - /** - * The pkscript in hex - * - * @generated from protobuf field: string pk_script = 4; - */ - pkScript: string; - /** - * The outpoint in format txid:n - * - * @generated from protobuf field: lnrpc.OutPoint outpoint = 5; - */ - outpoint?: OutPoint; - /** - * The number of confirmations for the Utxo - * - * @generated from protobuf field: int64 confirmations = 6; - */ - confirmations: bigint; -} -/** - * @generated from protobuf message lnrpc.OutputDetail - */ -export interface OutputDetail { - /** - * The type of the output - * - * @generated from protobuf field: lnrpc.OutputScriptType output_type = 1; - */ - outputType: OutputScriptType; - /** - * The address - * - * @generated from protobuf field: string address = 2; - */ - address: string; - /** - * The pkscript in hex - * - * @generated from protobuf field: string pk_script = 3; - */ - pkScript: string; - /** - * The output index used in the raw transaction - * - * @generated from protobuf field: int64 output_index = 4; - */ - outputIndex: bigint; - /** - * The value of the output coin in satoshis - * - * @generated from protobuf field: int64 amount = 5; - */ - amount: bigint; - /** - * Denotes if the output is controlled by the internal wallet - * - * @generated from protobuf field: bool is_our_address = 6; - */ - isOurAddress: boolean; -} -/** - * @generated from protobuf message lnrpc.Transaction - */ -export interface Transaction { - /** - * The transaction hash - * - * @generated from protobuf field: string tx_hash = 1; - */ - txHash: string; - /** - * The transaction amount, denominated in satoshis - * - * @generated from protobuf field: int64 amount = 2; - */ - amount: bigint; - /** - * The number of confirmations - * - * @generated from protobuf field: int32 num_confirmations = 3; - */ - numConfirmations: number; - /** - * The hash of the block this transaction was included in - * - * @generated from protobuf field: string block_hash = 4; - */ - blockHash: string; - /** - * The height of the block this transaction was included in - * - * @generated from protobuf field: int32 block_height = 5; - */ - blockHeight: number; - /** - * Timestamp of this transaction - * - * @generated from protobuf field: int64 time_stamp = 6; - */ - timeStamp: bigint; - /** - * Fees paid for this transaction - * - * @generated from protobuf field: int64 total_fees = 7; - */ - totalFees: bigint; - /** - * Addresses that received funds for this transaction. Deprecated as it is - * now incorporated in the output_details field. - * - * @deprecated - * @generated from protobuf field: repeated string dest_addresses = 8 [deprecated = true]; - */ - destAddresses: string[]; - /** - * Outputs that received funds for this transaction - * - * @generated from protobuf field: repeated lnrpc.OutputDetail output_details = 11; - */ - outputDetails: OutputDetail[]; - /** - * The raw transaction hex. - * - * @generated from protobuf field: string raw_tx_hex = 9; - */ - rawTxHex: string; - /** - * A label that was optionally set on transaction broadcast. - * - * @generated from protobuf field: string label = 10; - */ - label: string; - /** - * PreviousOutpoints/Inputs of this transaction. - * - * @generated from protobuf field: repeated lnrpc.PreviousOutPoint previous_outpoints = 12; - */ - previousOutpoints: PreviousOutPoint[]; -} -/** - * @generated from protobuf message lnrpc.GetTransactionsRequest - */ -export interface GetTransactionsRequest { - /** - * - * The height from which to list transactions, inclusive. If this value is - * greater than end_height, transactions will be read in reverse. - * - * @generated from protobuf field: int32 start_height = 1; - */ - startHeight: number; - /** - * - * 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. - * - * @generated from protobuf field: int32 end_height = 2; - */ - endHeight: number; - /** - * An optional filter to only include transactions relevant to an account. - * - * @generated from protobuf field: string account = 3; - */ - account: string; -} -/** - * @generated from protobuf message lnrpc.TransactionDetails - */ -export interface TransactionDetails { - /** - * The list of transactions relevant to the wallet. - * - * @generated from protobuf field: repeated lnrpc.Transaction transactions = 1; - */ - transactions: Transaction[]; -} -/** - * @generated from protobuf message lnrpc.FeeLimit - */ -export interface FeeLimit { - /** - * @generated from protobuf oneof: limit - */ - limit: { - oneofKind: "fixed"; - /** - * - * The fee limit expressed as a fixed amount of satoshis. - * - * The fields fixed and fixed_msat are mutually exclusive. - * - * @generated from protobuf field: int64 fixed = 1; - */ - fixed: bigint; - } | { - oneofKind: "fixedMsat"; - /** - * - * The fee limit expressed as a fixed amount of millisatoshis. - * - * The fields fixed and fixed_msat are mutually exclusive. - * - * @generated from protobuf field: int64 fixed_msat = 3; - */ - fixedMsat: bigint; - } | { - oneofKind: "percent"; - /** - * The fee limit expressed as a percentage of the payment amount. - * - * @generated from protobuf field: int64 percent = 2; - */ - percent: bigint; - } | { - oneofKind: undefined; - }; -} -/** - * @generated from protobuf message lnrpc.SendRequest - */ -export interface SendRequest { - /** - * - * The identity pubkey of the payment recipient. When using REST, this field - * must be encoded as base64. - * - * @generated from protobuf field: bytes dest = 1; - */ - dest: Uint8Array; - /** - * - * The hex-encoded identity pubkey of the payment recipient. Deprecated now - * that the REST gateway supports base64 encoding of bytes fields. - * - * @deprecated - * @generated from protobuf field: string dest_string = 2 [deprecated = true]; - */ - destString: string; - /** - * - * The amount to send expressed in satoshis. - * - * The fields amt and amt_msat are mutually exclusive. - * - * @generated from protobuf field: int64 amt = 3; - */ - amt: bigint; - /** - * - * The amount to send expressed in millisatoshis. - * - * The fields amt and amt_msat are mutually exclusive. - * - * @generated from protobuf field: int64 amt_msat = 12; - */ - amtMsat: bigint; - /** - * - * The hash to use within the payment's HTLC. When using REST, this field - * must be encoded as base64. - * - * @generated from protobuf field: bytes payment_hash = 4; - */ - paymentHash: Uint8Array; - /** - * - * The hex-encoded hash to use within the payment's HTLC. Deprecated now - * that the REST gateway supports base64 encoding of bytes fields. - * - * @deprecated - * @generated from protobuf field: string payment_hash_string = 5 [deprecated = true]; - */ - paymentHashString: string; - /** - * - * 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. - * - * @generated from protobuf field: string payment_request = 6; - */ - paymentRequest: string; - /** - * - * The CLTV delta from the current height that should be used to set the - * timelock for the final hop. - * - * @generated from protobuf field: int32 final_cltv_delta = 7; - */ - finalCltvDelta: number; - /** - * - * 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. If not specified, lnd will use a default value of 100% - * fees for small amounts (<=1k sat) or 5% fees for larger amounts. - * - * @generated from protobuf field: lnrpc.FeeLimit fee_limit = 8; - */ - feeLimit?: FeeLimit; - /** - * - * The channel id of the channel that must be taken to the first hop. If zero, - * any channel may be used. - * - * @generated from protobuf field: uint64 outgoing_chan_id = 9 [jstype = JS_STRING]; - */ - outgoingChanId: string; - /** - * - * The pubkey of the last hop of the route. If empty, any hop may be used. - * - * @generated from protobuf field: bytes last_hop_pubkey = 13; - */ - lastHopPubkey: Uint8Array; - /** - * - * 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. - * - * @generated from protobuf field: uint32 cltv_limit = 10; - */ - cltvLimit: number; - /** - * - * 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. - * - * @generated from protobuf field: map dest_custom_records = 11; - */ - destCustomRecords: { - [key: string]: Uint8Array; - }; - /** - * If set, circular payments to self are permitted. - * - * @generated from protobuf field: bool allow_self_payment = 14; - */ - allowSelfPayment: boolean; - /** - * - * 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. - * - * @generated from protobuf field: repeated lnrpc.FeatureBit dest_features = 15; - */ - destFeatures: FeatureBit[]; - /** - * - * The payment address of the generated invoice. - * - * @generated from protobuf field: bytes payment_addr = 16; - */ - paymentAddr: Uint8Array; -} -/** - * @generated from protobuf message lnrpc.SendResponse - */ -export interface SendResponse { - /** - * @generated from protobuf field: string payment_error = 1; - */ - paymentError: string; - /** - * @generated from protobuf field: bytes payment_preimage = 2; - */ - paymentPreimage: Uint8Array; - /** - * @generated from protobuf field: lnrpc.Route payment_route = 3; - */ - paymentRoute?: Route; - /** - * @generated from protobuf field: bytes payment_hash = 4; - */ - paymentHash: Uint8Array; -} -/** - * @generated from protobuf message lnrpc.SendToRouteRequest - */ -export interface SendToRouteRequest { - /** - * - * The payment hash to use for the HTLC. When using REST, this field must be - * encoded as base64. - * - * @generated from protobuf field: bytes payment_hash = 1; - */ - paymentHash: Uint8Array; - /** - * - * 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 - * @generated from protobuf field: string payment_hash_string = 2 [deprecated = true]; - */ - paymentHashString: string; - /** - * Route that should be used to attempt to complete the payment. - * - * @generated from protobuf field: lnrpc.Route route = 4; - */ - route?: Route; -} -/** - * @generated from protobuf message lnrpc.ChannelAcceptRequest - */ -export interface ChannelAcceptRequest { - /** - * The pubkey of the node that wishes to open an inbound channel. - * - * @generated from protobuf field: bytes node_pubkey = 1; - */ - nodePubkey: Uint8Array; - /** - * The hash of the genesis block that the proposed channel resides in. - * - * @generated from protobuf field: bytes chain_hash = 2; - */ - chainHash: Uint8Array; - /** - * The pending channel id. - * - * @generated from protobuf field: bytes pending_chan_id = 3; - */ - pendingChanId: Uint8Array; - /** - * The funding amount in satoshis that initiator wishes to use in the - * channel. - * - * @generated from protobuf field: uint64 funding_amt = 4; - */ - fundingAmt: bigint; - /** - * The push amount of the proposed channel in millisatoshis. - * - * @generated from protobuf field: uint64 push_amt = 5; - */ - pushAmt: bigint; - /** - * The dust limit of the initiator's commitment tx. - * - * @generated from protobuf field: uint64 dust_limit = 6; - */ - dustLimit: bigint; - /** - * The maximum amount of coins in millisatoshis that can be pending in this - * channel. - * - * @generated from protobuf field: uint64 max_value_in_flight = 7; - */ - maxValueInFlight: bigint; - /** - * The minimum amount of satoshis the initiator requires us to have at all - * times. - * - * @generated from protobuf field: uint64 channel_reserve = 8; - */ - channelReserve: bigint; - /** - * The smallest HTLC in millisatoshis that the initiator will accept. - * - * @generated from protobuf field: uint64 min_htlc = 9; - */ - minHtlc: bigint; - /** - * The initial fee rate that the initiator suggests for both commitment - * transactions. - * - * @generated from protobuf field: uint64 fee_per_kw = 10; - */ - feePerKw: bigint; - /** - * - * The number of blocks to use for the relative time lock in the pay-to-self - * output of both commitment transactions. - * - * @generated from protobuf field: uint32 csv_delay = 11; - */ - csvDelay: number; - /** - * The total number of incoming HTLC's that the initiator will accept. - * - * @generated from protobuf field: uint32 max_accepted_htlcs = 12; - */ - maxAcceptedHtlcs: number; - /** - * A bit-field which the initiator uses to specify proposed channel - * behavior. - * - * @generated from protobuf field: uint32 channel_flags = 13; - */ - channelFlags: number; - /** - * The commitment type the initiator wishes to use for the proposed channel. - * - * @generated from protobuf field: lnrpc.CommitmentType commitment_type = 14; - */ - commitmentType: CommitmentType; - /** - * Whether the initiator wants to open a zero-conf channel via the channel - * type. - * - * @generated from protobuf field: bool wants_zero_conf = 15; - */ - wantsZeroConf: boolean; - /** - * Whether the initiator wants to use the scid-alias channel type. This is - * separate from the feature bit. - * - * @generated from protobuf field: bool wants_scid_alias = 16; - */ - wantsScidAlias: boolean; -} -/** - * @generated from protobuf message lnrpc.ChannelAcceptResponse - */ -export interface ChannelAcceptResponse { - /** - * Whether or not the client accepts the channel. - * - * @generated from protobuf field: bool accept = 1; - */ - accept: boolean; - /** - * The pending channel id to which this response applies. - * - * @generated from protobuf field: bytes pending_chan_id = 2; - */ - pendingChanId: Uint8Array; - /** - * - * 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. - * - * @generated from protobuf field: string error = 3; - */ - error: string; - /** - * - * 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. - * - * @generated from protobuf field: string upfront_shutdown = 4; - */ - upfrontShutdown: string; - /** - * - * The csv delay (in blocks) that we require for the remote party. - * - * @generated from protobuf field: uint32 csv_delay = 5; - */ - csvDelay: number; - /** - * - * 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). - * - * @generated from protobuf field: uint64 reserve_sat = 6; - */ - reserveSat: bigint; - /** - * - * The maximum amount of funds in millisatoshis that we allow the remote peer - * to have in outstanding htlcs. - * - * @generated from protobuf field: uint64 in_flight_max_msat = 7; - */ - inFlightMaxMsat: bigint; - /** - * - * The maximum number of htlcs that the remote peer can offer us. - * - * @generated from protobuf field: uint32 max_htlc_count = 8; - */ - maxHtlcCount: number; - /** - * - * The minimum value in millisatoshis for incoming htlcs on the channel. - * - * @generated from protobuf field: uint64 min_htlc_in = 9; - */ - minHtlcIn: bigint; - /** - * - * The number of confirmations we require before we consider the channel open. - * - * @generated from protobuf field: uint32 min_accept_depth = 10; - */ - minAcceptDepth: number; - /** - * - * Whether the responder wants this to be a zero-conf channel. This will fail - * if either side does not have the scid-alias feature bit set. The minimum - * depth field must be zero if this is true. - * - * @generated from protobuf field: bool zero_conf = 11; - */ - zeroConf: boolean; -} -/** - * @generated from protobuf message lnrpc.ChannelPoint - */ -export interface ChannelPoint { - /** - * @generated from protobuf oneof: funding_txid - */ - fundingTxid: { - oneofKind: "fundingTxidBytes"; - /** - * - * Txid of the funding transaction. When using REST, this field must be - * encoded as base64. - * - * @generated from protobuf field: bytes funding_txid_bytes = 1; - */ - fundingTxidBytes: Uint8Array; - } | { - oneofKind: "fundingTxidStr"; - /** - * - * Hex-encoded string representing the byte-reversed hash of the funding - * transaction. - * - * @generated from protobuf field: string funding_txid_str = 2; - */ - fundingTxidStr: string; - } | { - oneofKind: undefined; - }; - /** - * The index of the output of the funding transaction - * - * @generated from protobuf field: uint32 output_index = 3; - */ - outputIndex: number; -} -/** - * @generated from protobuf message lnrpc.OutPoint - */ -export interface OutPoint { - /** - * Raw bytes representing the transaction id. - * - * @generated from protobuf field: bytes txid_bytes = 1; - */ - txidBytes: Uint8Array; - /** - * Reversed, hex-encoded string representing the transaction id. - * - * @generated from protobuf field: string txid_str = 2; - */ - txidStr: string; - /** - * The index of the output on the transaction. - * - * @generated from protobuf field: uint32 output_index = 3; - */ - outputIndex: number; -} -/** - * @generated from protobuf message lnrpc.PreviousOutPoint - */ -export interface PreviousOutPoint { - /** - * The outpoint in format txid:n. - * - * @generated from protobuf field: string outpoint = 1; - */ - outpoint: string; - /** - * Denotes if the outpoint is controlled by the internal wallet. - * The flag will only detect p2wkh, np2wkh and p2tr inputs as its own. - * - * @generated from protobuf field: bool is_our_output = 2; - */ - isOurOutput: boolean; -} -/** - * @generated from protobuf message lnrpc.LightningAddress - */ -export interface LightningAddress { - /** - * The identity pubkey of the Lightning node. - * - * @generated from protobuf field: string pubkey = 1; - */ - pubkey: string; - /** - * The network location of the lightning node, e.g. `69.69.69.69:1337` or - * `localhost:10011`. - * - * @generated from protobuf field: string host = 2; - */ - host: string; -} -/** - * @generated from protobuf message lnrpc.EstimateFeeRequest - */ -export interface EstimateFeeRequest { - /** - * The map from addresses to amounts for the transaction. - * - * @generated from protobuf field: map AddrToAmount = 1 [json_name = "AddrToAmount"]; - */ - addrToAmount: { - [key: string]: bigint; - }; - /** - * The target number of blocks that this transaction should be confirmed - * by. - * - * @generated from protobuf field: int32 target_conf = 2; - */ - targetConf: number; - /** - * The minimum number of confirmations each one of your outputs used for - * the transaction must satisfy. - * - * @generated from protobuf field: int32 min_confs = 3; - */ - minConfs: number; - /** - * Whether unconfirmed outputs should be used as inputs for the transaction. - * - * @generated from protobuf field: bool spend_unconfirmed = 4; - */ - spendUnconfirmed: boolean; -} -/** - * @generated from protobuf message lnrpc.EstimateFeeResponse - */ -export interface EstimateFeeResponse { - /** - * The total fee in satoshis. - * - * @generated from protobuf field: int64 fee_sat = 1; - */ - feeSat: bigint; - /** - * Deprecated, use sat_per_vbyte. - * The fee rate in satoshi/vbyte. - * - * @deprecated - * @generated from protobuf field: int64 feerate_sat_per_byte = 2 [deprecated = true]; - */ - feerateSatPerByte: bigint; - /** - * The fee rate in satoshi/vbyte. - * - * @generated from protobuf field: uint64 sat_per_vbyte = 3; - */ - satPerVbyte: bigint; -} -/** - * @generated from protobuf message lnrpc.SendManyRequest - */ -export interface SendManyRequest { - /** - * The map from addresses to amounts - * - * @generated from protobuf field: map AddrToAmount = 1 [json_name = "AddrToAmount"]; - */ - addrToAmount: { - [key: string]: bigint; - }; - /** - * The target number of blocks that this transaction should be confirmed - * by. - * - * @generated from protobuf field: int32 target_conf = 3; - */ - targetConf: number; - /** - * A manual fee rate set in sat/vbyte that should be used when crafting the - * transaction. - * - * @generated from protobuf field: uint64 sat_per_vbyte = 4; - */ - satPerVbyte: bigint; - /** - * Deprecated, use sat_per_vbyte. - * A manual fee rate set in sat/vbyte that should be used when crafting the - * transaction. - * - * @deprecated - * @generated from protobuf field: int64 sat_per_byte = 5 [deprecated = true]; - */ - satPerByte: bigint; - /** - * An optional label for the transaction, limited to 500 characters. - * - * @generated from protobuf field: string label = 6; - */ - label: string; - /** - * The minimum number of confirmations each one of your outputs used for - * the transaction must satisfy. - * - * @generated from protobuf field: int32 min_confs = 7; - */ - minConfs: number; - /** - * Whether unconfirmed outputs should be used as inputs for the transaction. - * - * @generated from protobuf field: bool spend_unconfirmed = 8; - */ - spendUnconfirmed: boolean; -} -/** - * @generated from protobuf message lnrpc.SendManyResponse - */ -export interface SendManyResponse { - /** - * The id of the transaction - * - * @generated from protobuf field: string txid = 1; - */ - txid: string; -} -/** - * @generated from protobuf message lnrpc.SendCoinsRequest - */ -export interface SendCoinsRequest { - /** - * The address to send coins to - * - * @generated from protobuf field: string addr = 1; - */ - addr: string; - /** - * The amount in satoshis to send - * - * @generated from protobuf field: int64 amount = 2; - */ - amount: bigint; - /** - * The target number of blocks that this transaction should be confirmed - * by. - * - * @generated from protobuf field: int32 target_conf = 3; - */ - targetConf: number; - /** - * A manual fee rate set in sat/vbyte that should be used when crafting the - * transaction. - * - * @generated from protobuf field: uint64 sat_per_vbyte = 4; - */ - satPerVbyte: bigint; - /** - * Deprecated, use sat_per_vbyte. - * A manual fee rate set in sat/vbyte that should be used when crafting the - * transaction. - * - * @deprecated - * @generated from protobuf field: int64 sat_per_byte = 5 [deprecated = true]; - */ - satPerByte: bigint; - /** - * - * 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. - * - * @generated from protobuf field: bool send_all = 6; - */ - sendAll: boolean; - /** - * An optional label for the transaction, limited to 500 characters. - * - * @generated from protobuf field: string label = 7; - */ - label: string; - /** - * The minimum number of confirmations each one of your outputs used for - * the transaction must satisfy. - * - * @generated from protobuf field: int32 min_confs = 8; - */ - minConfs: number; - /** - * Whether unconfirmed outputs should be used as inputs for the transaction. - * - * @generated from protobuf field: bool spend_unconfirmed = 9; - */ - spendUnconfirmed: boolean; -} -/** - * @generated from protobuf message lnrpc.SendCoinsResponse - */ -export interface SendCoinsResponse { - /** - * The transaction ID of the transaction - * - * @generated from protobuf field: string txid = 1; - */ - txid: string; -} -/** - * @generated from protobuf message lnrpc.ListUnspentRequest - */ -export interface ListUnspentRequest { - /** - * The minimum number of confirmations to be included. - * - * @generated from protobuf field: int32 min_confs = 1; - */ - minConfs: number; - /** - * The maximum number of confirmations to be included. - * - * @generated from protobuf field: int32 max_confs = 2; - */ - maxConfs: number; - /** - * An optional filter to only include outputs belonging to an account. - * - * @generated from protobuf field: string account = 3; - */ - account: string; -} -/** - * @generated from protobuf message lnrpc.ListUnspentResponse - */ -export interface ListUnspentResponse { - /** - * A list of utxos - * - * @generated from protobuf field: repeated lnrpc.Utxo utxos = 1; - */ - utxos: Utxo[]; -} -/** - * @generated from protobuf message lnrpc.NewAddressRequest - */ -export interface NewAddressRequest { - /** - * The type of address to generate. - * - * @generated from protobuf field: lnrpc.AddressType type = 1; - */ - type: AddressType; - /** - * - * The name of the account to generate a new address for. If empty, the - * default wallet account is used. - * - * @generated from protobuf field: string account = 2; - */ - account: string; -} -/** - * @generated from protobuf message lnrpc.NewAddressResponse - */ -export interface NewAddressResponse { - /** - * The newly generated wallet address - * - * @generated from protobuf field: string address = 1; - */ - address: string; -} -/** - * @generated from protobuf message lnrpc.SignMessageRequest - */ -export interface SignMessageRequest { - /** - * - * The message to be signed. When using REST, this field must be encoded as - * base64. - * - * @generated from protobuf field: bytes msg = 1; - */ - msg: Uint8Array; - /** - * - * Instead of the default double-SHA256 hashing of the message before signing, - * only use one round of hashing instead. - * - * @generated from protobuf field: bool single_hash = 2; - */ - singleHash: boolean; -} -/** - * @generated from protobuf message lnrpc.SignMessageResponse - */ -export interface SignMessageResponse { - /** - * The signature for the given message - * - * @generated from protobuf field: string signature = 1; - */ - signature: string; -} -/** - * @generated from protobuf message lnrpc.VerifyMessageRequest - */ -export interface VerifyMessageRequest { - /** - * - * The message over which the signature is to be verified. When using REST, - * this field must be encoded as base64. - * - * @generated from protobuf field: bytes msg = 1; - */ - msg: Uint8Array; - /** - * The signature to be verified over the given message - * - * @generated from protobuf field: string signature = 2; - */ - signature: string; -} -/** - * @generated from protobuf message lnrpc.VerifyMessageResponse - */ -export interface VerifyMessageResponse { - /** - * Whether the signature was valid over the given message - * - * @generated from protobuf field: bool valid = 1; - */ - valid: boolean; - /** - * The pubkey recovered from the signature - * - * @generated from protobuf field: string pubkey = 2; - */ - pubkey: string; -} -/** - * @generated from protobuf message lnrpc.ConnectPeerRequest - */ -export interface ConnectPeerRequest { - /** - * - * Lightning address of the peer to connect to. - * - * @generated from protobuf field: lnrpc.LightningAddress addr = 1; - */ - addr?: LightningAddress; - /** - * - * If set, the daemon will attempt to persistently connect to the target - * peer. Otherwise, the call will be synchronous. - * - * @generated from protobuf field: bool perm = 2; - */ - perm: boolean; - /** - * - * The connection timeout value (in seconds) for this request. It won't affect - * other requests. - * - * @generated from protobuf field: uint64 timeout = 3; - */ - timeout: bigint; -} -/** - * @generated from protobuf message lnrpc.ConnectPeerResponse - */ -export interface ConnectPeerResponse { -} -/** - * @generated from protobuf message lnrpc.DisconnectPeerRequest - */ -export interface DisconnectPeerRequest { - /** - * The pubkey of the node to disconnect from - * - * @generated from protobuf field: string pub_key = 1; - */ - pubKey: string; -} -/** - * @generated from protobuf message lnrpc.DisconnectPeerResponse - */ -export interface DisconnectPeerResponse { -} -/** - * @generated from protobuf message lnrpc.HTLC - */ -export interface HTLC { - /** - * @generated from protobuf field: bool incoming = 1; - */ - incoming: boolean; - /** - * @generated from protobuf field: int64 amount = 2; - */ - amount: bigint; - /** - * @generated from protobuf field: bytes hash_lock = 3; - */ - hashLock: Uint8Array; - /** - * @generated from protobuf field: uint32 expiration_height = 4; - */ - expirationHeight: number; - /** - * Index identifying the htlc on the channel. - * - * @generated from protobuf field: uint64 htlc_index = 5; - */ - htlcIndex: bigint; - /** - * 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. - * - * @generated from protobuf field: uint64 forwarding_channel = 6; - */ - forwardingChannel: bigint; - /** - * Index identifying the htlc on the forwarding channel. - * - * @generated from protobuf field: uint64 forwarding_htlc_index = 7; - */ - forwardingHtlcIndex: bigint; -} -/** - * @generated from protobuf message lnrpc.ChannelConstraints - */ -export interface ChannelConstraints { - /** - * - * 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. - * - * @generated from protobuf field: uint32 csv_delay = 1; - */ - csvDelay: number; - /** - * The minimum satoshis this node is required to reserve in its balance. - * - * @generated from protobuf field: uint64 chan_reserve_sat = 2; - */ - chanReserveSat: bigint; - /** - * The dust limit (in satoshis) of the initiator's commitment tx. - * - * @generated from protobuf field: uint64 dust_limit_sat = 3; - */ - dustLimitSat: bigint; - /** - * The maximum amount of coins in millisatoshis that can be pending in this - * channel. - * - * @generated from protobuf field: uint64 max_pending_amt_msat = 4; - */ - maxPendingAmtMsat: bigint; - /** - * The smallest HTLC in millisatoshis that the initiator will accept. - * - * @generated from protobuf field: uint64 min_htlc_msat = 5; - */ - minHtlcMsat: bigint; - /** - * The total number of incoming HTLC's that the initiator will accept. - * - * @generated from protobuf field: uint32 max_accepted_htlcs = 6; - */ - maxAcceptedHtlcs: number; -} -/** - * @generated from protobuf message lnrpc.Channel - */ -export interface Channel { - /** - * Whether this channel is active or not - * - * @generated from protobuf field: bool active = 1; - */ - active: boolean; - /** - * The identity pubkey of the remote node - * - * @generated from protobuf field: string remote_pubkey = 2; - */ - remotePubkey: string; - /** - * - * 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. - * - * @generated from protobuf field: string channel_point = 3; - */ - channelPoint: string; - /** - * - * 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. - * - * @generated from protobuf field: uint64 chan_id = 4 [jstype = JS_STRING]; - */ - chanId: string; - /** - * The total amount of funds held in this channel - * - * @generated from protobuf field: int64 capacity = 5; - */ - capacity: bigint; - /** - * This node's current balance in this channel - * - * @generated from protobuf field: int64 local_balance = 6; - */ - localBalance: bigint; - /** - * The counterparty's current balance in this channel - * - * @generated from protobuf field: int64 remote_balance = 7; - */ - remoteBalance: bigint; - /** - * - * 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. - * - * @generated from protobuf field: int64 commit_fee = 8; - */ - commitFee: bigint; - /** - * The weight of the commitment transaction - * - * @generated from protobuf field: int64 commit_weight = 9; - */ - commitWeight: bigint; - /** - * - * 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. - * - * @generated from protobuf field: int64 fee_per_kw = 10; - */ - feePerKw: bigint; - /** - * The unsettled balance in this channel - * - * @generated from protobuf field: int64 unsettled_balance = 11; - */ - unsettledBalance: bigint; - /** - * - * The total number of satoshis we've sent within this channel. - * - * @generated from protobuf field: int64 total_satoshis_sent = 12; - */ - totalSatoshisSent: bigint; - /** - * - * The total number of satoshis we've received within this channel. - * - * @generated from protobuf field: int64 total_satoshis_received = 13; - */ - totalSatoshisReceived: bigint; - /** - * - * The total number of updates conducted within this channel. - * - * @generated from protobuf field: uint64 num_updates = 14; - */ - numUpdates: bigint; - /** - * - * The list of active, uncleared HTLCs currently pending within the channel. - * - * @generated from protobuf field: repeated lnrpc.HTLC pending_htlcs = 15; - */ - pendingHtlcs: HTLC[]; - /** - * - * 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 - * @generated from protobuf field: uint32 csv_delay = 16 [deprecated = true]; - */ - csvDelay: number; - /** - * Whether this channel is advertised to the network or not. - * - * @generated from protobuf field: bool private = 17; - */ - private: boolean; - /** - * True if we were the ones that created the channel. - * - * @generated from protobuf field: bool initiator = 18; - */ - initiator: boolean; - /** - * A set of flags showing the current state of the channel. - * - * @generated from protobuf field: string chan_status_flags = 19; - */ - chanStatusFlags: string; - /** - * Deprecated. The minimum satoshis this node is required to reserve in its - * balance. - * - * @deprecated - * @generated from protobuf field: int64 local_chan_reserve_sat = 20 [deprecated = true]; - */ - localChanReserveSat: bigint; - /** - * - * Deprecated. The minimum satoshis the other node is required to reserve in - * its balance. - * - * @deprecated - * @generated from protobuf field: int64 remote_chan_reserve_sat = 21 [deprecated = true]; - */ - remoteChanReserveSat: bigint; - /** - * Deprecated. Use commitment_type. - * - * @deprecated - * @generated from protobuf field: bool static_remote_key = 22 [deprecated = true]; - */ - staticRemoteKey: boolean; - /** - * The commitment type used by this channel. - * - * @generated from protobuf field: lnrpc.CommitmentType commitment_type = 26; - */ - commitmentType: CommitmentType; - /** - * - * 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]. - * - * @generated from protobuf field: int64 lifetime = 23; - */ - lifetime: bigint; - /** - * - * 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]. - * - * @generated from protobuf field: int64 uptime = 24; - */ - uptime: bigint; - /** - * - * 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. - * - * @generated from protobuf field: string close_address = 25; - */ - closeAddress: string; - /** - * - * 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. - * - * @generated from protobuf field: uint64 push_amount_sat = 27; - */ - pushAmountSat: bigint; - /** - * - * 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. - * - * @generated from protobuf field: uint32 thaw_height = 28; - */ - thawHeight: number; - /** - * List constraints for the local node. - * - * @generated from protobuf field: lnrpc.ChannelConstraints local_constraints = 29; - */ - localConstraints?: ChannelConstraints; - /** - * List constraints for the remote node. - * - * @generated from protobuf field: lnrpc.ChannelConstraints remote_constraints = 30; - */ - remoteConstraints?: ChannelConstraints; - /** - * - * This lists out the set of alias short channel ids that exist for a channel. - * This may be empty. - * - * @generated from protobuf field: repeated uint64 alias_scids = 31; - */ - aliasScids: bigint[]; - /** - * Whether or not this is a zero-conf channel. - * - * @generated from protobuf field: bool zero_conf = 32; - */ - zeroConf: boolean; - /** - * This is the confirmed / on-chain zero-conf SCID. - * - * @generated from protobuf field: uint64 zero_conf_confirmed_scid = 33; - */ - zeroConfConfirmedScid: bigint; -} -/** - * @generated from protobuf message lnrpc.ListChannelsRequest - */ -export interface ListChannelsRequest { - /** - * @generated from protobuf field: bool active_only = 1; - */ - activeOnly: boolean; - /** - * @generated from protobuf field: bool inactive_only = 2; - */ - inactiveOnly: boolean; - /** - * @generated from protobuf field: bool public_only = 3; - */ - publicOnly: boolean; - /** - * @generated from protobuf field: bool private_only = 4; - */ - privateOnly: boolean; - /** - * - * Filters the response for channels with a target peer's pubkey. If peer is - * empty, all channels will be returned. - * - * @generated from protobuf field: bytes peer = 5; - */ - peer: Uint8Array; -} -/** - * @generated from protobuf message lnrpc.ListChannelsResponse - */ -export interface ListChannelsResponse { - /** - * The list of active channels - * - * @generated from protobuf field: repeated lnrpc.Channel channels = 11; - */ - channels: Channel[]; -} -/** - * @generated from protobuf message lnrpc.AliasMap - */ -export interface AliasMap { - /** - * - * For non-zero-conf channels, this is the confirmed SCID. Otherwise, this is - * the first assigned "base" alias. - * - * @generated from protobuf field: uint64 base_scid = 1; - */ - baseScid: bigint; - /** - * The set of all aliases stored for the base SCID. - * - * @generated from protobuf field: repeated uint64 aliases = 2; - */ - aliases: bigint[]; -} -/** - * @generated from protobuf message lnrpc.ListAliasesRequest - */ -export interface ListAliasesRequest { -} -/** - * @generated from protobuf message lnrpc.ListAliasesResponse - */ -export interface ListAliasesResponse { - /** - * @generated from protobuf field: repeated lnrpc.AliasMap alias_maps = 1; - */ - aliasMaps: AliasMap[]; -} -/** - * @generated from protobuf message lnrpc.ChannelCloseSummary - */ -export interface ChannelCloseSummary { - /** - * The outpoint (txid:index) of the funding transaction. - * - * @generated from protobuf field: string channel_point = 1; - */ - channelPoint: string; - /** - * The unique channel ID for the channel. - * - * @generated from protobuf field: uint64 chan_id = 2 [jstype = JS_STRING]; - */ - chanId: string; - /** - * The hash of the genesis block that this channel resides within. - * - * @generated from protobuf field: string chain_hash = 3; - */ - chainHash: string; - /** - * The txid of the transaction which ultimately closed this channel. - * - * @generated from protobuf field: string closing_tx_hash = 4; - */ - closingTxHash: string; - /** - * Public key of the remote peer that we formerly had a channel with. - * - * @generated from protobuf field: string remote_pubkey = 5; - */ - remotePubkey: string; - /** - * Total capacity of the channel. - * - * @generated from protobuf field: int64 capacity = 6; - */ - capacity: bigint; - /** - * Height at which the funding transaction was spent. - * - * @generated from protobuf field: uint32 close_height = 7; - */ - closeHeight: number; - /** - * Settled balance at the time of channel closure - * - * @generated from protobuf field: int64 settled_balance = 8; - */ - settledBalance: bigint; - /** - * The sum of all the time-locked outputs at the time of channel closure - * - * @generated from protobuf field: int64 time_locked_balance = 9; - */ - timeLockedBalance: bigint; - /** - * Details on how the channel was closed. - * - * @generated from protobuf field: lnrpc.ChannelCloseSummary.ClosureType close_type = 10; - */ - closeType: ChannelCloseSummary_ClosureType; - /** - * - * 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. - * - * @generated from protobuf field: lnrpc.Initiator open_initiator = 11; - */ - openInitiator: Initiator; - /** - * - * 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. - * - * @generated from protobuf field: lnrpc.Initiator close_initiator = 12; - */ - closeInitiator: Initiator; - /** - * @generated from protobuf field: repeated lnrpc.Resolution resolutions = 13; - */ - resolutions: Resolution[]; - /** - * - * This lists out the set of alias short channel ids that existed for the - * closed channel. This may be empty. - * - * @generated from protobuf field: repeated uint64 alias_scids = 14; - */ - aliasScids: bigint[]; - /** - * The confirmed SCID for a zero-conf channel. - * - * @generated from protobuf field: uint64 zero_conf_confirmed_scid = 15 [jstype = JS_STRING]; - */ - zeroConfConfirmedScid: string; -} -/** - * @generated from protobuf enum lnrpc.ChannelCloseSummary.ClosureType - */ -export enum ChannelCloseSummary_ClosureType { - /** - * @generated from protobuf enum value: COOPERATIVE_CLOSE = 0; - */ - COOPERATIVE_CLOSE = 0, - /** - * @generated from protobuf enum value: LOCAL_FORCE_CLOSE = 1; - */ - LOCAL_FORCE_CLOSE = 1, - /** - * @generated from protobuf enum value: REMOTE_FORCE_CLOSE = 2; - */ - REMOTE_FORCE_CLOSE = 2, - /** - * @generated from protobuf enum value: BREACH_CLOSE = 3; - */ - BREACH_CLOSE = 3, - /** - * @generated from protobuf enum value: FUNDING_CANCELED = 4; - */ - FUNDING_CANCELED = 4, - /** - * @generated from protobuf enum value: ABANDONED = 5; - */ - ABANDONED = 5 -} -/** - * @generated from protobuf message lnrpc.Resolution - */ -export interface Resolution { - /** - * The type of output we are resolving. - * - * @generated from protobuf field: lnrpc.ResolutionType resolution_type = 1; - */ - resolutionType: ResolutionType; - /** - * The outcome of our on chain action that resolved the outpoint. - * - * @generated from protobuf field: lnrpc.ResolutionOutcome outcome = 2; - */ - outcome: ResolutionOutcome; - /** - * The outpoint that was spent by the resolution. - * - * @generated from protobuf field: lnrpc.OutPoint outpoint = 3; - */ - outpoint?: OutPoint; - /** - * The amount that was claimed by the resolution. - * - * @generated from protobuf field: uint64 amount_sat = 4; - */ - amountSat: bigint; - /** - * The hex-encoded transaction ID of the sweep transaction that spent the - * output. - * - * @generated from protobuf field: string sweep_txid = 5; - */ - sweepTxid: string; -} -/** - * @generated from protobuf message lnrpc.ClosedChannelsRequest - */ -export interface ClosedChannelsRequest { - /** - * @generated from protobuf field: bool cooperative = 1; - */ - cooperative: boolean; - /** - * @generated from protobuf field: bool local_force = 2; - */ - localForce: boolean; - /** - * @generated from protobuf field: bool remote_force = 3; - */ - remoteForce: boolean; - /** - * @generated from protobuf field: bool breach = 4; - */ - breach: boolean; - /** - * @generated from protobuf field: bool funding_canceled = 5; - */ - fundingCanceled: boolean; - /** - * @generated from protobuf field: bool abandoned = 6; - */ - abandoned: boolean; -} -/** - * @generated from protobuf message lnrpc.ClosedChannelsResponse - */ -export interface ClosedChannelsResponse { - /** - * @generated from protobuf field: repeated lnrpc.ChannelCloseSummary channels = 1; - */ - channels: ChannelCloseSummary[]; -} -/** - * @generated from protobuf message lnrpc.Peer - */ -export interface Peer { - /** - * The identity pubkey of the peer - * - * @generated from protobuf field: string pub_key = 1; - */ - pubKey: string; - /** - * Network address of the peer; eg `127.0.0.1:10011` - * - * @generated from protobuf field: string address = 3; - */ - address: string; - /** - * Bytes of data transmitted to this peer - * - * @generated from protobuf field: uint64 bytes_sent = 4; - */ - bytesSent: bigint; - /** - * Bytes of data transmitted from this peer - * - * @generated from protobuf field: uint64 bytes_recv = 5; - */ - bytesRecv: bigint; - /** - * Satoshis sent to this peer - * - * @generated from protobuf field: int64 sat_sent = 6; - */ - satSent: bigint; - /** - * Satoshis received from this peer - * - * @generated from protobuf field: int64 sat_recv = 7; - */ - satRecv: bigint; - /** - * A channel is inbound if the counterparty initiated the channel - * - * @generated from protobuf field: bool inbound = 8; - */ - inbound: boolean; - /** - * Ping time to this peer - * - * @generated from protobuf field: int64 ping_time = 9; - */ - pingTime: bigint; - /** - * The type of sync we are currently performing with this peer. - * - * @generated from protobuf field: lnrpc.Peer.SyncType sync_type = 10; - */ - syncType: Peer_SyncType; - /** - * Features advertised by the remote peer in their init message. - * - * @generated from protobuf field: map features = 11; - */ - features: { - [key: number]: Feature; - }; - /** - * - * 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. - * - * @generated from protobuf field: repeated lnrpc.TimestampedError errors = 12; - */ - errors: TimestampedError[]; - /** - * - * 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. - * - * @generated from protobuf field: int32 flap_count = 13; - */ - flapCount: number; - /** - * - * 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. - * - * @generated from protobuf field: int64 last_flap_ns = 14; - */ - lastFlapNs: bigint; - /** - * - * The last ping payload the peer has sent to us. - * - * @generated from protobuf field: bytes last_ping_payload = 15; - */ - lastPingPayload: Uint8Array; -} -/** - * @generated from protobuf enum lnrpc.Peer.SyncType - */ -export enum Peer_SyncType { - /** - * - * Denotes that we cannot determine the peer's current sync type. - * - * @generated from protobuf enum value: UNKNOWN_SYNC = 0; - */ - UNKNOWN_SYNC = 0, - /** - * - * Denotes that we are actively receiving new graph updates from the peer. - * - * @generated from protobuf enum value: ACTIVE_SYNC = 1; - */ - ACTIVE_SYNC = 1, - /** - * - * Denotes that we are not receiving new graph updates from the peer. - * - * @generated from protobuf enum value: PASSIVE_SYNC = 2; - */ - PASSIVE_SYNC = 2, - /** - * - * Denotes that this peer is pinned into an active sync. - * - * @generated from protobuf enum value: PINNED_SYNC = 3; - */ - PINNED_SYNC = 3 -} -/** - * @generated from protobuf message lnrpc.TimestampedError - */ -export interface TimestampedError { - /** - * The unix timestamp in seconds when the error occurred. - * - * @generated from protobuf field: uint64 timestamp = 1; - */ - timestamp: bigint; - /** - * The string representation of the error sent by our peer. - * - * @generated from protobuf field: string error = 2; - */ - error: string; -} -/** - * @generated from protobuf message lnrpc.ListPeersRequest - */ -export interface ListPeersRequest { - /** - * - * 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. - * - * @generated from protobuf field: bool latest_error = 1; - */ - latestError: boolean; -} -/** - * @generated from protobuf message lnrpc.ListPeersResponse - */ -export interface ListPeersResponse { - /** - * The list of currently connected peers - * - * @generated from protobuf field: repeated lnrpc.Peer peers = 1; - */ - peers: Peer[]; -} -/** - * @generated from protobuf message lnrpc.PeerEventSubscription - */ -export interface PeerEventSubscription { -} -/** - * @generated from protobuf message lnrpc.PeerEvent - */ -export interface PeerEvent { - /** - * The identity pubkey of the peer. - * - * @generated from protobuf field: string pub_key = 1; - */ - pubKey: string; - /** - * @generated from protobuf field: lnrpc.PeerEvent.EventType type = 2; - */ - type: PeerEvent_EventType; -} -/** - * @generated from protobuf enum lnrpc.PeerEvent.EventType - */ -export enum PeerEvent_EventType { - /** - * @generated from protobuf enum value: PEER_ONLINE = 0; - */ - PEER_ONLINE = 0, - /** - * @generated from protobuf enum value: PEER_OFFLINE = 1; - */ - PEER_OFFLINE = 1 -} -/** - * @generated from protobuf message lnrpc.GetInfoRequest - */ -export interface GetInfoRequest { -} -/** - * @generated from protobuf message lnrpc.GetInfoResponse - */ -export interface GetInfoResponse { - /** - * The version of the LND software that the node is running. - * - * @generated from protobuf field: string version = 14; - */ - version: string; - /** - * The SHA1 commit hash that the daemon is compiled with. - * - * @generated from protobuf field: string commit_hash = 20; - */ - commitHash: string; - /** - * The identity pubkey of the current node. - * - * @generated from protobuf field: string identity_pubkey = 1; - */ - identityPubkey: string; - /** - * If applicable, the alias of the current node, e.g. "bob" - * - * @generated from protobuf field: string alias = 2; - */ - alias: string; - /** - * The color of the current node in hex code format - * - * @generated from protobuf field: string color = 17; - */ - color: string; - /** - * Number of pending channels - * - * @generated from protobuf field: uint32 num_pending_channels = 3; - */ - numPendingChannels: number; - /** - * Number of active channels - * - * @generated from protobuf field: uint32 num_active_channels = 4; - */ - numActiveChannels: number; - /** - * Number of inactive channels - * - * @generated from protobuf field: uint32 num_inactive_channels = 15; - */ - numInactiveChannels: number; - /** - * Number of peers - * - * @generated from protobuf field: uint32 num_peers = 5; - */ - numPeers: number; - /** - * The node's current view of the height of the best block - * - * @generated from protobuf field: uint32 block_height = 6; - */ - blockHeight: number; - /** - * The node's current view of the hash of the best block - * - * @generated from protobuf field: string block_hash = 8; - */ - blockHash: string; - /** - * Timestamp of the block best known to the wallet - * - * @generated from protobuf field: int64 best_header_timestamp = 13; - */ - bestHeaderTimestamp: bigint; - /** - * Whether the wallet's view is synced to the main chain - * - * @generated from protobuf field: bool synced_to_chain = 9; - */ - syncedToChain: boolean; - /** - * Whether we consider ourselves synced with the public channel graph. - * - * @generated from protobuf field: bool synced_to_graph = 18; - */ - syncedToGraph: boolean; - /** - * - * Whether the current node is connected to testnet. This field is - * deprecated and the network field should be used instead - * - * @deprecated - * @generated from protobuf field: bool testnet = 10 [deprecated = true]; - */ - testnet: boolean; - /** - * A list of active chains the node is connected to - * - * @generated from protobuf field: repeated lnrpc.Chain chains = 16; - */ - chains: Chain[]; - /** - * The URIs of the current node. - * - * @generated from protobuf field: repeated string uris = 12; - */ - uris: string[]; - /** - * - * Features that our node has advertised in our init message, node - * announcements and invoices. - * - * @generated from protobuf field: map features = 19; - */ - features: { - [key: number]: Feature; - }; - /** - * - * Indicates whether the HTLC interceptor API is in always-on mode. - * - * @generated from protobuf field: bool require_htlc_interceptor = 21; - */ - requireHtlcInterceptor: boolean; -} -/** - * @generated from protobuf message lnrpc.GetRecoveryInfoRequest - */ -export interface GetRecoveryInfoRequest { -} -/** - * @generated from protobuf message lnrpc.GetRecoveryInfoResponse - */ -export interface GetRecoveryInfoResponse { - /** - * Whether the wallet is in recovery mode - * - * @generated from protobuf field: bool recovery_mode = 1; - */ - recoveryMode: boolean; - /** - * Whether the wallet recovery progress is finished - * - * @generated from protobuf field: bool recovery_finished = 2; - */ - recoveryFinished: boolean; - /** - * The recovery progress, ranging from 0 to 1. - * - * @generated from protobuf field: double progress = 3; - */ - progress: number; -} -/** - * @generated from protobuf message lnrpc.Chain - */ -export interface Chain { - /** - * The blockchain the node is on (eg bitcoin, litecoin) - * - * @generated from protobuf field: string chain = 1; - */ - chain: string; - /** - * The network the node is on (eg regtest, testnet, mainnet) - * - * @generated from protobuf field: string network = 2; - */ - network: string; -} -/** - * @generated from protobuf message lnrpc.ConfirmationUpdate - */ -export interface ConfirmationUpdate { - /** - * @generated from protobuf field: bytes block_sha = 1; - */ - blockSha: Uint8Array; - /** - * @generated from protobuf field: int32 block_height = 2; - */ - blockHeight: number; - /** - * @generated from protobuf field: uint32 num_confs_left = 3; - */ - numConfsLeft: number; -} -/** - * @generated from protobuf message lnrpc.ChannelOpenUpdate - */ -export interface ChannelOpenUpdate { - /** - * @generated from protobuf field: lnrpc.ChannelPoint channel_point = 1; - */ - channelPoint?: ChannelPoint; -} -/** - * @generated from protobuf message lnrpc.ChannelCloseUpdate - */ -export interface ChannelCloseUpdate { - /** - * @generated from protobuf field: bytes closing_txid = 1; - */ - closingTxid: Uint8Array; - /** - * @generated from protobuf field: bool success = 2; - */ - success: boolean; -} -/** - * @generated from protobuf message lnrpc.CloseChannelRequest - */ -export interface CloseChannelRequest { - /** - * - * 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. - * - * @generated from protobuf field: lnrpc.ChannelPoint channel_point = 1; - */ - channelPoint?: ChannelPoint; - /** - * If true, then the channel will be closed forcibly. This means the - * current commitment transaction will be signed and broadcast. - * - * @generated from protobuf field: bool force = 2; - */ - force: boolean; - /** - * The target number of blocks that the closure transaction should be - * confirmed by. - * - * @generated from protobuf field: int32 target_conf = 3; - */ - targetConf: number; - /** - * Deprecated, use sat_per_vbyte. - * A manual fee rate set in sat/vbyte that should be used when crafting the - * closure transaction. - * - * @deprecated - * @generated from protobuf field: int64 sat_per_byte = 4 [deprecated = true]; - */ - satPerByte: bigint; - /** - * - * 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. - * - * @generated from protobuf field: string delivery_address = 5; - */ - deliveryAddress: string; - /** - * A manual fee rate set in sat/vbyte that should be used when crafting the - * closure transaction. - * - * @generated from protobuf field: uint64 sat_per_vbyte = 6; - */ - satPerVbyte: bigint; - /** - * The maximum fee rate the closer is willing to pay. - * - * NOTE: This field is only respected if we're the initiator of the channel. - * - * @generated from protobuf field: uint64 max_fee_per_vbyte = 7; - */ - maxFeePerVbyte: bigint; -} -/** - * @generated from protobuf message lnrpc.CloseStatusUpdate - */ -export interface CloseStatusUpdate { - /** - * @generated from protobuf oneof: update - */ - update: { - oneofKind: "closePending"; - /** - * @generated from protobuf field: lnrpc.PendingUpdate close_pending = 1; - */ - closePending: PendingUpdate; - } | { - oneofKind: "chanClose"; - /** - * @generated from protobuf field: lnrpc.ChannelCloseUpdate chan_close = 3; - */ - chanClose: ChannelCloseUpdate; - } | { - oneofKind: undefined; - }; -} -/** - * @generated from protobuf message lnrpc.PendingUpdate - */ -export interface PendingUpdate { - /** - * @generated from protobuf field: bytes txid = 1; - */ - txid: Uint8Array; - /** - * @generated from protobuf field: uint32 output_index = 2; - */ - outputIndex: number; -} -/** - * @generated from protobuf message lnrpc.ReadyForPsbtFunding - */ -export interface ReadyForPsbtFunding { - /** - * - * The P2WSH address of the channel funding multisig address that the below - * specified amount in satoshis needs to be sent to. - * - * @generated from protobuf field: string funding_address = 1; - */ - fundingAddress: string; - /** - * - * The exact amount in satoshis that needs to be sent to the above address to - * fund the pending channel. - * - * @generated from protobuf field: int64 funding_amount = 2; - */ - fundingAmount: bigint; - /** - * - * 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. - * - * @generated from protobuf field: bytes psbt = 3; - */ - psbt: Uint8Array; -} -/** - * @generated from protobuf message lnrpc.BatchOpenChannelRequest - */ -export interface BatchOpenChannelRequest { - /** - * The list of channels to open. - * - * @generated from protobuf field: repeated lnrpc.BatchOpenChannel channels = 1; - */ - channels: BatchOpenChannel[]; - /** - * The target number of blocks that the funding transaction should be - * confirmed by. - * - * @generated from protobuf field: int32 target_conf = 2; - */ - targetConf: number; - /** - * A manual fee rate set in sat/vByte that should be used when crafting the - * funding transaction. - * - * @generated from protobuf field: int64 sat_per_vbyte = 3; - */ - satPerVbyte: bigint; - /** - * The minimum number of confirmations each one of your outputs used for - * the funding transaction must satisfy. - * - * @generated from protobuf field: int32 min_confs = 4; - */ - minConfs: number; - /** - * Whether unconfirmed outputs should be used as inputs for the funding - * transaction. - * - * @generated from protobuf field: bool spend_unconfirmed = 5; - */ - spendUnconfirmed: boolean; - /** - * An optional label for the batch transaction, limited to 500 characters. - * - * @generated from protobuf field: string label = 6; - */ - label: string; -} -/** - * @generated from protobuf message lnrpc.BatchOpenChannel - */ -export interface BatchOpenChannel { - /** - * The pubkey of the node to open a channel with. When using REST, this - * field must be encoded as base64. - * - * @generated from protobuf field: bytes node_pubkey = 1; - */ - nodePubkey: Uint8Array; - /** - * The number of satoshis the wallet should commit to the channel. - * - * @generated from protobuf field: int64 local_funding_amount = 2; - */ - localFundingAmount: bigint; - /** - * The number of satoshis to push to the remote side as part of the initial - * commitment state. - * - * @generated from protobuf field: int64 push_sat = 3; - */ - pushSat: bigint; - /** - * Whether this channel should be private, not announced to the greater - * network. - * - * @generated from protobuf field: bool private = 4; - */ - private: boolean; - /** - * The minimum value in millisatoshi we will require for incoming HTLCs on - * the channel. - * - * @generated from protobuf field: int64 min_htlc_msat = 5; - */ - minHtlcMsat: bigint; - /** - * The delay we require on the remote's commitment transaction. If this is - * not set, it will be scaled automatically with the channel size. - * - * @generated from protobuf field: uint32 remote_csv_delay = 6; - */ - remoteCsvDelay: number; - /** - * - * 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. - * - * @generated from protobuf field: string close_address = 7; - */ - closeAddress: string; - /** - * - * An optional, unique identifier of 32 random bytes that will be used as the - * pending channel ID to identify the channel while it is in the pre-pending - * state. - * - * @generated from protobuf field: bytes pending_chan_id = 8; - */ - pendingChanId: Uint8Array; - /** - * - * The explicit commitment type to use. Note this field will only be used if - * the remote peer supports explicit channel negotiation. - * - * @generated from protobuf field: lnrpc.CommitmentType commitment_type = 9; - */ - commitmentType: CommitmentType; -} -/** - * @generated from protobuf message lnrpc.BatchOpenChannelResponse - */ -export interface BatchOpenChannelResponse { - /** - * @generated from protobuf field: repeated lnrpc.PendingUpdate pending_channels = 1; - */ - pendingChannels: PendingUpdate[]; -} -/** - * @generated from protobuf message lnrpc.OpenChannelRequest - */ -export interface OpenChannelRequest { - /** - * A manual fee rate set in sat/vbyte that should be used when crafting the - * funding transaction. - * - * @generated from protobuf field: uint64 sat_per_vbyte = 1; - */ - satPerVbyte: bigint; - /** - * - * The pubkey of the node to open a channel with. When using REST, this field - * must be encoded as base64. - * - * @generated from protobuf field: bytes node_pubkey = 2; - */ - nodePubkey: Uint8Array; - /** - * - * 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 - * @generated from protobuf field: string node_pubkey_string = 3 [deprecated = true]; - */ - nodePubkeyString: string; - /** - * The number of satoshis the wallet should commit to the channel - * - * @generated from protobuf field: int64 local_funding_amount = 4; - */ - localFundingAmount: bigint; - /** - * The number of satoshis to push to the remote side as part of the initial - * commitment state - * - * @generated from protobuf field: int64 push_sat = 5; - */ - pushSat: bigint; - /** - * The target number of blocks that the funding transaction should be - * confirmed by. - * - * @generated from protobuf field: int32 target_conf = 6; - */ - targetConf: number; - /** - * Deprecated, use sat_per_vbyte. - * A manual fee rate set in sat/vbyte that should be used when crafting the - * funding transaction. - * - * @deprecated - * @generated from protobuf field: int64 sat_per_byte = 7 [deprecated = true]; - */ - satPerByte: bigint; - /** - * Whether this channel should be private, not announced to the greater - * network. - * - * @generated from protobuf field: bool private = 8; - */ - private: boolean; - /** - * The minimum value in millisatoshi we will require for incoming HTLCs on - * the channel. - * - * @generated from protobuf field: int64 min_htlc_msat = 9; - */ - minHtlcMsat: bigint; - /** - * The delay we require on the remote's commitment transaction. If this is - * not set, it will be scaled automatically with the channel size. - * - * @generated from protobuf field: uint32 remote_csv_delay = 10; - */ - remoteCsvDelay: number; - /** - * The minimum number of confirmations each one of your outputs used for - * the funding transaction must satisfy. - * - * @generated from protobuf field: int32 min_confs = 11; - */ - minConfs: number; - /** - * Whether unconfirmed outputs should be used as inputs for the funding - * transaction. - * - * @generated from protobuf field: bool spend_unconfirmed = 12; - */ - spendUnconfirmed: boolean; - /** - * - * 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. - * - * @generated from protobuf field: string close_address = 13; - */ - closeAddress: string; - /** - * - * 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). - * - * @generated from protobuf field: lnrpc.FundingShim funding_shim = 14; - */ - fundingShim?: FundingShim; - /** - * - * The maximum amount of coins in millisatoshi that can be pending within - * the channel. It only applies to the remote party. - * - * @generated from protobuf field: uint64 remote_max_value_in_flight_msat = 15; - */ - remoteMaxValueInFlightMsat: bigint; - /** - * - * The maximum number of concurrent HTLCs we will allow the remote party to add - * to the commitment transaction. - * - * @generated from protobuf field: uint32 remote_max_htlcs = 16; - */ - remoteMaxHtlcs: number; - /** - * - * Max local csv is the maximum csv delay we will allow for our own commitment - * transaction. - * - * @generated from protobuf field: uint32 max_local_csv = 17; - */ - maxLocalCsv: number; - /** - * - * The explicit commitment type to use. Note this field will only be used if - * the remote peer supports explicit channel negotiation. - * - * @generated from protobuf field: lnrpc.CommitmentType commitment_type = 18; - */ - commitmentType: CommitmentType; - /** - * - * If this is true, then a zero-conf channel open will be attempted. - * - * @generated from protobuf field: bool zero_conf = 19; - */ - zeroConf: boolean; - /** - * - * If this is true, then an option-scid-alias channel-type open will be - * attempted. - * - * @generated from protobuf field: bool scid_alias = 20; - */ - scidAlias: boolean; - /** - * - * The base fee charged regardless of the number of milli-satoshis sent. - * - * @generated from protobuf field: uint64 base_fee = 21; - */ - baseFee: bigint; - /** - * - * The fee rate in ppm (parts per million) that will be charged in - * proportion of the value of each forwarded HTLC. - * - * @generated from protobuf field: uint64 fee_rate = 22; - */ - feeRate: bigint; - /** - * - * If use_base_fee is true the open channel announcement will update the - * channel base fee with the value specified in base_fee. In the case of - * a base_fee of 0 use_base_fee is needed downstream to distinguish whether - * to use the default base fee value specified in the config or 0. - * - * @generated from protobuf field: bool use_base_fee = 23; - */ - useBaseFee: boolean; - /** - * - * If use_fee_rate is true the open channel announcement will update the - * channel fee rate with the value specified in fee_rate. In the case of - * a fee_rate of 0 use_fee_rate is needed downstream to distinguish whether - * to use the default fee rate value specified in the config or 0. - * - * @generated from protobuf field: bool use_fee_rate = 24; - */ - useFeeRate: boolean; - /** - * - * The number of satoshis we require the remote peer to reserve. This value, - * if specified, must be above the dust limit and below 20% of the channel - * capacity. - * - * @generated from protobuf field: uint64 remote_chan_reserve_sat = 25; - */ - remoteChanReserveSat: bigint; -} -/** - * @generated from protobuf message lnrpc.OpenStatusUpdate - */ -export interface OpenStatusUpdate { - /** - * @generated from protobuf oneof: update - */ - update: { - oneofKind: "chanPending"; - /** - * - * Signals that the channel is now fully negotiated and the funding - * transaction published. - * - * @generated from protobuf field: lnrpc.PendingUpdate chan_pending = 1; - */ - chanPending: PendingUpdate; - } | { - oneofKind: "chanOpen"; - /** - * - * Signals that the channel's funding transaction has now reached the - * required number of confirmations on chain and can be used. - * - * @generated from protobuf field: lnrpc.ChannelOpenUpdate chan_open = 3; - */ - chanOpen: ChannelOpenUpdate; - } | { - oneofKind: "psbtFund"; - /** - * - * Signals that the funding process has been suspended and the construction - * of a PSBT that funds the channel PK script is now required. - * - * @generated from protobuf field: lnrpc.ReadyForPsbtFunding psbt_fund = 5; - */ - psbtFund: ReadyForPsbtFunding; - } | { - oneofKind: undefined; - }; - /** - * - * The pending channel ID of the created channel. This value may be used to - * further the funding flow manually via the FundingStateStep method. - * - * @generated from protobuf field: bytes pending_chan_id = 4; - */ - pendingChanId: Uint8Array; -} -/** - * @generated from protobuf message lnrpc.KeyLocator - */ -export interface KeyLocator { - /** - * The family of key being identified. - * - * @generated from protobuf field: int32 key_family = 1; - */ - keyFamily: number; - /** - * The precise index of the key being identified. - * - * @generated from protobuf field: int32 key_index = 2; - */ - keyIndex: number; -} -/** - * @generated from protobuf message lnrpc.KeyDescriptor - */ -export interface KeyDescriptor { - /** - * - * The raw bytes of the key being identified. - * - * @generated from protobuf field: bytes raw_key_bytes = 1; - */ - rawKeyBytes: Uint8Array; - /** - * - * The key locator that identifies which key to use for signing. - * - * @generated from protobuf field: lnrpc.KeyLocator key_loc = 2; - */ - keyLoc?: KeyLocator; -} -/** - * @generated from protobuf message lnrpc.ChanPointShim - */ -export interface ChanPointShim { - /** - * - * The size of the pre-crafted output to be used as the channel point for this - * channel funding. - * - * @generated from protobuf field: int64 amt = 1; - */ - amt: bigint; - /** - * The target channel point to refrence in created commitment transactions. - * - * @generated from protobuf field: lnrpc.ChannelPoint chan_point = 2; - */ - chanPoint?: ChannelPoint; - /** - * Our local key to use when creating the multi-sig output. - * - * @generated from protobuf field: lnrpc.KeyDescriptor local_key = 3; - */ - localKey?: KeyDescriptor; - /** - * The key of the remote party to use when creating the multi-sig output. - * - * @generated from protobuf field: bytes remote_key = 4; - */ - remoteKey: Uint8Array; - /** - * - * 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. - * - * @generated from protobuf field: bytes pending_chan_id = 5; - */ - pendingChanId: Uint8Array; - /** - * - * 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. - * - * @generated from protobuf field: uint32 thaw_height = 6; - */ - thawHeight: number; -} -/** - * @generated from protobuf message lnrpc.PsbtShim - */ -export interface PsbtShim { - /** - * - * 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. - * - * @generated from protobuf field: bytes pending_chan_id = 1; - */ - pendingChanId: Uint8Array; - /** - * - * An optional base PSBT the new channel output will be added to. If this is - * non-empty, it must be a binary serialized PSBT. - * - * @generated from protobuf field: bytes base_psbt = 2; - */ - basePsbt: Uint8Array; - /** - * - * 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. - * - * @generated from protobuf field: bool no_publish = 3; - */ - noPublish: boolean; -} -/** - * @generated from protobuf message lnrpc.FundingShim - */ -export interface FundingShim { - /** - * @generated from protobuf oneof: shim - */ - shim: { - oneofKind: "chanPointShim"; - /** - * - * A channel shim where the channel point was fully constructed outside - * of lnd's wallet and the transaction might already be published. - * - * @generated from protobuf field: lnrpc.ChanPointShim chan_point_shim = 1; - */ - chanPointShim: ChanPointShim; - } | { - oneofKind: "psbtShim"; - /** - * - * A channel shim that uses a PSBT to fund and sign the channel funding - * transaction. - * - * @generated from protobuf field: lnrpc.PsbtShim psbt_shim = 2; - */ - psbtShim: PsbtShim; - } | { - oneofKind: undefined; - }; -} -/** - * @generated from protobuf message lnrpc.FundingShimCancel - */ -export interface FundingShimCancel { - /** - * The pending channel ID of the channel to cancel the funding shim for. - * - * @generated from protobuf field: bytes pending_chan_id = 1; - */ - pendingChanId: Uint8Array; -} -/** - * @generated from protobuf message lnrpc.FundingPsbtVerify - */ -export interface FundingPsbtVerify { - /** - * - * 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. - * - * @generated from protobuf field: bytes funded_psbt = 1; - */ - fundedPsbt: Uint8Array; - /** - * The pending channel ID of the channel to get the PSBT for. - * - * @generated from protobuf field: bytes pending_chan_id = 2; - */ - pendingChanId: Uint8Array; - /** - * - * Can only be used if the no_publish flag was set to true in the OpenChannel - * call meaning that the caller is solely responsible for publishing the final - * funding transaction. If skip_finalize is set to true then lnd will not wait - * for a FundingPsbtFinalize state step and instead assumes that a transaction - * with the same TXID as the passed in PSBT will eventually confirm. - * IT IS ABSOLUTELY IMPERATIVE that the TXID of the transaction that is - * eventually published does have the _same TXID_ as the verified PSBT. That - * means no inputs or outputs can change, only signatures can be added. If the - * TXID changes between this call and the publish step then the channel will - * never be created and the funds will be in limbo. - * - * @generated from protobuf field: bool skip_finalize = 3; - */ - skipFinalize: boolean; -} -/** - * @generated from protobuf message lnrpc.FundingPsbtFinalize - */ -export interface FundingPsbtFinalize { - /** - * - * 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. - * - * @generated from protobuf field: bytes signed_psbt = 1; - */ - signedPsbt: Uint8Array; - /** - * The pending channel ID of the channel to get the PSBT for. - * - * @generated from protobuf field: bytes pending_chan_id = 2; - */ - pendingChanId: Uint8Array; - /** - * - * 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. - * - * @generated from protobuf field: bytes final_raw_tx = 3; - */ - finalRawTx: Uint8Array; -} -/** - * @generated from protobuf message lnrpc.FundingTransitionMsg - */ -export interface FundingTransitionMsg { - /** - * @generated from protobuf oneof: trigger - */ - trigger: { - oneofKind: "shimRegister"; - /** - * - * 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. - * - * @generated from protobuf field: lnrpc.FundingShim shim_register = 1; - */ - shimRegister: FundingShim; - } | { - oneofKind: "shimCancel"; - /** - * Used to cancel an existing registered funding shim. - * - * @generated from protobuf field: lnrpc.FundingShimCancel shim_cancel = 2; - */ - shimCancel: FundingShimCancel; - } | { - oneofKind: "psbtVerify"; - /** - * - * 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. - * - * @generated from protobuf field: lnrpc.FundingPsbtVerify psbt_verify = 3; - */ - psbtVerify: FundingPsbtVerify; - } | { - oneofKind: "psbtFinalize"; - /** - * - * 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. - * - * @generated from protobuf field: lnrpc.FundingPsbtFinalize psbt_finalize = 4; - */ - psbtFinalize: FundingPsbtFinalize; - } | { - oneofKind: undefined; - }; -} -/** - * @generated from protobuf message lnrpc.FundingStateStepResp - */ -export interface FundingStateStepResp { -} -/** - * @generated from protobuf message lnrpc.PendingHTLC - */ -export interface PendingHTLC { - /** - * The direction within the channel that the htlc was sent - * - * @generated from protobuf field: bool incoming = 1; - */ - incoming: boolean; - /** - * The total value of the htlc - * - * @generated from protobuf field: int64 amount = 2; - */ - amount: bigint; - /** - * The final output to be swept back to the user's wallet - * - * @generated from protobuf field: string outpoint = 3; - */ - outpoint: string; - /** - * The next block height at which we can spend the current stage - * - * @generated from protobuf field: uint32 maturity_height = 4; - */ - maturityHeight: number; - /** - * - * The number of blocks remaining until the current stage can be swept. - * Negative values indicate how many blocks have passed since becoming - * mature. - * - * @generated from protobuf field: int32 blocks_til_maturity = 5; - */ - blocksTilMaturity: number; - /** - * Indicates whether the htlc is in its first or second stage of recovery - * - * @generated from protobuf field: uint32 stage = 6; - */ - stage: number; -} -/** - * @generated from protobuf message lnrpc.PendingChannelsRequest - */ -export interface PendingChannelsRequest { -} -/** - * @generated from protobuf message lnrpc.PendingChannelsResponse - */ -export interface PendingChannelsResponse { - /** - * The balance in satoshis encumbered in pending channels - * - * @generated from protobuf field: int64 total_limbo_balance = 1; - */ - totalLimboBalance: bigint; - /** - * Channels pending opening - * - * @generated from protobuf field: repeated lnrpc.PendingChannelsResponse.PendingOpenChannel pending_open_channels = 2; - */ - pendingOpenChannels: PendingChannelsResponse_PendingOpenChannel[]; - /** - * - * 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 - * @generated from protobuf field: repeated lnrpc.PendingChannelsResponse.ClosedChannel pending_closing_channels = 3 [deprecated = true]; - */ - pendingClosingChannels: PendingChannelsResponse_ClosedChannel[]; - /** - * Channels pending force closing - * - * @generated from protobuf field: repeated lnrpc.PendingChannelsResponse.ForceClosedChannel pending_force_closing_channels = 4; - */ - pendingForceClosingChannels: PendingChannelsResponse_ForceClosedChannel[]; - /** - * Channels waiting for closing tx to confirm - * - * @generated from protobuf field: repeated lnrpc.PendingChannelsResponse.WaitingCloseChannel waiting_close_channels = 5; - */ - waitingCloseChannels: PendingChannelsResponse_WaitingCloseChannel[]; -} -/** - * @generated from protobuf message lnrpc.PendingChannelsResponse.PendingChannel - */ -export interface PendingChannelsResponse_PendingChannel { - /** - * @generated from protobuf field: string remote_node_pub = 1; - */ - remoteNodePub: string; - /** - * @generated from protobuf field: string channel_point = 2; - */ - channelPoint: string; - /** - * @generated from protobuf field: int64 capacity = 3; - */ - capacity: bigint; - /** - * @generated from protobuf field: int64 local_balance = 4; - */ - localBalance: bigint; - /** - * @generated from protobuf field: int64 remote_balance = 5; - */ - remoteBalance: bigint; - /** - * The minimum satoshis this node is required to reserve in its - * balance. - * - * @generated from protobuf field: int64 local_chan_reserve_sat = 6; - */ - localChanReserveSat: bigint; - /** - * - * The minimum satoshis the other node is required to reserve in its - * balance. - * - * @generated from protobuf field: int64 remote_chan_reserve_sat = 7; - */ - remoteChanReserveSat: bigint; - /** - * The party that initiated opening the channel. - * - * @generated from protobuf field: lnrpc.Initiator initiator = 8; - */ - initiator: Initiator; - /** - * The commitment type used by this channel. - * - * @generated from protobuf field: lnrpc.CommitmentType commitment_type = 9; - */ - commitmentType: CommitmentType; - /** - * Total number of forwarding packages created in this channel. - * - * @generated from protobuf field: int64 num_forwarding_packages = 10; - */ - numForwardingPackages: bigint; - /** - * A set of flags showing the current state of the channel. - * - * @generated from protobuf field: string chan_status_flags = 11; - */ - chanStatusFlags: string; - /** - * Whether this channel is advertised to the network or not. - * - * @generated from protobuf field: bool private = 12; - */ - private: boolean; -} -/** - * @generated from protobuf message lnrpc.PendingChannelsResponse.PendingOpenChannel - */ -export interface PendingChannelsResponse_PendingOpenChannel { - /** - * The pending channel - * - * @generated from protobuf field: lnrpc.PendingChannelsResponse.PendingChannel channel = 1; - */ - channel?: PendingChannelsResponse_PendingChannel; - /** - * - * 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. - * - * @generated from protobuf field: int64 commit_fee = 4; - */ - commitFee: bigint; - /** - * The weight of the commitment transaction - * - * @generated from protobuf field: int64 commit_weight = 5; - */ - commitWeight: bigint; - /** - * - * 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. - * - * @generated from protobuf field: int64 fee_per_kw = 6; - */ - feePerKw: bigint; -} -/** - * @generated from protobuf message lnrpc.PendingChannelsResponse.WaitingCloseChannel - */ -export interface PendingChannelsResponse_WaitingCloseChannel { - /** - * The pending channel waiting for closing tx to confirm - * - * @generated from protobuf field: lnrpc.PendingChannelsResponse.PendingChannel channel = 1; - */ - channel?: PendingChannelsResponse_PendingChannel; - /** - * The balance in satoshis encumbered in this channel - * - * @generated from protobuf field: int64 limbo_balance = 2; - */ - limboBalance: bigint; - /** - * - * A list of valid commitment transactions. Any of these can confirm at - * this point. - * - * @generated from protobuf field: lnrpc.PendingChannelsResponse.Commitments commitments = 3; - */ - commitments?: PendingChannelsResponse_Commitments; - /** - * The transaction id of the closing transaction - * - * @generated from protobuf field: string closing_txid = 4; - */ - closingTxid: string; -} -/** - * @generated from protobuf message lnrpc.PendingChannelsResponse.Commitments - */ -export interface PendingChannelsResponse_Commitments { - /** - * Hash of the local version of the commitment tx. - * - * @generated from protobuf field: string local_txid = 1; - */ - localTxid: string; - /** - * Hash of the remote version of the commitment tx. - * - * @generated from protobuf field: string remote_txid = 2; - */ - remoteTxid: string; - /** - * Hash of the remote pending version of the commitment tx. - * - * @generated from protobuf field: string remote_pending_txid = 3; - */ - remotePendingTxid: string; - /** - * - * The amount in satoshis calculated to be paid in fees for the local - * commitment. - * - * @generated from protobuf field: uint64 local_commit_fee_sat = 4; - */ - localCommitFeeSat: bigint; - /** - * - * The amount in satoshis calculated to be paid in fees for the remote - * commitment. - * - * @generated from protobuf field: uint64 remote_commit_fee_sat = 5; - */ - remoteCommitFeeSat: bigint; - /** - * - * The amount in satoshis calculated to be paid in fees for the remote - * pending commitment. - * - * @generated from protobuf field: uint64 remote_pending_commit_fee_sat = 6; - */ - remotePendingCommitFeeSat: bigint; -} -/** - * @generated from protobuf message lnrpc.PendingChannelsResponse.ClosedChannel - */ -export interface PendingChannelsResponse_ClosedChannel { - /** - * The pending channel to be closed - * - * @generated from protobuf field: lnrpc.PendingChannelsResponse.PendingChannel channel = 1; - */ - channel?: PendingChannelsResponse_PendingChannel; - /** - * The transaction id of the closing transaction - * - * @generated from protobuf field: string closing_txid = 2; - */ - closingTxid: string; -} -/** - * @generated from protobuf message lnrpc.PendingChannelsResponse.ForceClosedChannel - */ -export interface PendingChannelsResponse_ForceClosedChannel { - /** - * The pending channel to be force closed - * - * @generated from protobuf field: lnrpc.PendingChannelsResponse.PendingChannel channel = 1; - */ - channel?: PendingChannelsResponse_PendingChannel; - /** - * The transaction id of the closing transaction - * - * @generated from protobuf field: string closing_txid = 2; - */ - closingTxid: string; - /** - * The balance in satoshis encumbered in this pending channel - * - * @generated from protobuf field: int64 limbo_balance = 3; - */ - limboBalance: bigint; - /** - * The height at which funds can be swept into the wallet - * - * @generated from protobuf field: uint32 maturity_height = 4; - */ - maturityHeight: number; - /** - * - * Remaining # of blocks until the commitment output can be swept. - * Negative values indicate how many blocks have passed since becoming - * mature. - * - * @generated from protobuf field: int32 blocks_til_maturity = 5; - */ - blocksTilMaturity: number; - /** - * The total value of funds successfully recovered from this channel - * - * @generated from protobuf field: int64 recovered_balance = 6; - */ - recoveredBalance: bigint; - /** - * @generated from protobuf field: repeated lnrpc.PendingHTLC pending_htlcs = 8; - */ - pendingHtlcs: PendingHTLC[]; - /** - * @generated from protobuf field: lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState anchor = 9; - */ - anchor: PendingChannelsResponse_ForceClosedChannel_AnchorState; -} -/** - * - * There are three resolution states for the anchor: - * limbo, lost and recovered. Derive the current state - * from the limbo and recovered balances. - * - * @generated from protobuf enum lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState - */ -export enum PendingChannelsResponse_ForceClosedChannel_AnchorState { - /** - * The recovered_balance is zero and limbo_balance is non-zero. - * - * @generated from protobuf enum value: LIMBO = 0; - */ - LIMBO = 0, - /** - * The recovered_balance is non-zero. - * - * @generated from protobuf enum value: RECOVERED = 1; - */ - RECOVERED = 1, - /** - * A state that is neither LIMBO nor RECOVERED. - * - * @generated from protobuf enum value: LOST = 2; - */ - LOST = 2 -} -/** - * @generated from protobuf message lnrpc.ChannelEventSubscription - */ -export interface ChannelEventSubscription { -} -/** - * @generated from protobuf message lnrpc.ChannelEventUpdate - */ -export interface ChannelEventUpdate { - /** - * @generated from protobuf oneof: channel - */ - channel: { - oneofKind: "openChannel"; - /** - * @generated from protobuf field: lnrpc.Channel open_channel = 1; - */ - openChannel: Channel; - } | { - oneofKind: "closedChannel"; - /** - * @generated from protobuf field: lnrpc.ChannelCloseSummary closed_channel = 2; - */ - closedChannel: ChannelCloseSummary; - } | { - oneofKind: "activeChannel"; - /** - * @generated from protobuf field: lnrpc.ChannelPoint active_channel = 3; - */ - activeChannel: ChannelPoint; - } | { - oneofKind: "inactiveChannel"; - /** - * @generated from protobuf field: lnrpc.ChannelPoint inactive_channel = 4; - */ - inactiveChannel: ChannelPoint; - } | { - oneofKind: "pendingOpenChannel"; - /** - * @generated from protobuf field: lnrpc.PendingUpdate pending_open_channel = 6; - */ - pendingOpenChannel: PendingUpdate; - } | { - oneofKind: "fullyResolvedChannel"; - /** - * @generated from protobuf field: lnrpc.ChannelPoint fully_resolved_channel = 7; - */ - fullyResolvedChannel: ChannelPoint; - } | { - oneofKind: undefined; - }; - /** - * @generated from protobuf field: lnrpc.ChannelEventUpdate.UpdateType type = 5; - */ - type: ChannelEventUpdate_UpdateType; -} -/** - * @generated from protobuf enum lnrpc.ChannelEventUpdate.UpdateType - */ -export enum ChannelEventUpdate_UpdateType { - /** - * @generated from protobuf enum value: OPEN_CHANNEL = 0; - */ - OPEN_CHANNEL = 0, - /** - * @generated from protobuf enum value: CLOSED_CHANNEL = 1; - */ - CLOSED_CHANNEL = 1, - /** - * @generated from protobuf enum value: ACTIVE_CHANNEL = 2; - */ - ACTIVE_CHANNEL = 2, - /** - * @generated from protobuf enum value: INACTIVE_CHANNEL = 3; - */ - INACTIVE_CHANNEL = 3, - /** - * @generated from protobuf enum value: PENDING_OPEN_CHANNEL = 4; - */ - PENDING_OPEN_CHANNEL = 4, - /** - * @generated from protobuf enum value: FULLY_RESOLVED_CHANNEL = 5; - */ - FULLY_RESOLVED_CHANNEL = 5 -} -/** - * @generated from protobuf message lnrpc.WalletAccountBalance - */ -export interface WalletAccountBalance { - /** - * The confirmed balance of the account (with >= 1 confirmations). - * - * @generated from protobuf field: int64 confirmed_balance = 1; - */ - confirmedBalance: bigint; - /** - * The unconfirmed balance of the account (with 0 confirmations). - * - * @generated from protobuf field: int64 unconfirmed_balance = 2; - */ - unconfirmedBalance: bigint; -} -/** - * @generated from protobuf message lnrpc.WalletBalanceRequest - */ -export interface WalletBalanceRequest { -} -/** - * @generated from protobuf message lnrpc.WalletBalanceResponse - */ -export interface WalletBalanceResponse { - /** - * The balance of the wallet - * - * @generated from protobuf field: int64 total_balance = 1; - */ - totalBalance: bigint; - /** - * The confirmed balance of a wallet(with >= 1 confirmations) - * - * @generated from protobuf field: int64 confirmed_balance = 2; - */ - confirmedBalance: bigint; - /** - * The unconfirmed balance of a wallet(with 0 confirmations) - * - * @generated from protobuf field: int64 unconfirmed_balance = 3; - */ - unconfirmedBalance: bigint; - /** - * The total amount of wallet UTXOs held in outputs that are locked for - * other usage. - * - * @generated from protobuf field: int64 locked_balance = 5; - */ - lockedBalance: bigint; - /** - * The amount of reserve required. - * - * @generated from protobuf field: int64 reserved_balance_anchor_chan = 6; - */ - reservedBalanceAnchorChan: bigint; - /** - * A mapping of each wallet account's name to its balance. - * - * @generated from protobuf field: map account_balance = 4; - */ - accountBalance: { - [key: string]: WalletAccountBalance; - }; -} -/** - * @generated from protobuf message lnrpc.Amount - */ -export interface Amount { - /** - * Value denominated in satoshis. - * - * @generated from protobuf field: uint64 sat = 1; - */ - sat: bigint; - /** - * Value denominated in milli-satoshis. - * - * @generated from protobuf field: uint64 msat = 2; - */ - msat: bigint; -} -/** - * @generated from protobuf message lnrpc.ChannelBalanceRequest - */ -export interface ChannelBalanceRequest { -} -/** - * @generated from protobuf message lnrpc.ChannelBalanceResponse - */ -export interface ChannelBalanceResponse { - /** - * Deprecated. Sum of channels balances denominated in satoshis - * - * @deprecated - * @generated from protobuf field: int64 balance = 1 [deprecated = true]; - */ - balance: bigint; - /** - * Deprecated. Sum of channels pending balances denominated in satoshis - * - * @deprecated - * @generated from protobuf field: int64 pending_open_balance = 2 [deprecated = true]; - */ - pendingOpenBalance: bigint; - /** - * Sum of channels local balances. - * - * @generated from protobuf field: lnrpc.Amount local_balance = 3; - */ - localBalance?: Amount; - /** - * Sum of channels remote balances. - * - * @generated from protobuf field: lnrpc.Amount remote_balance = 4; - */ - remoteBalance?: Amount; - /** - * Sum of channels local unsettled balances. - * - * @generated from protobuf field: lnrpc.Amount unsettled_local_balance = 5; - */ - unsettledLocalBalance?: Amount; - /** - * Sum of channels remote unsettled balances. - * - * @generated from protobuf field: lnrpc.Amount unsettled_remote_balance = 6; - */ - unsettledRemoteBalance?: Amount; - /** - * Sum of channels pending local balances. - * - * @generated from protobuf field: lnrpc.Amount pending_open_local_balance = 7; - */ - pendingOpenLocalBalance?: Amount; - /** - * Sum of channels pending remote balances. - * - * @generated from protobuf field: lnrpc.Amount pending_open_remote_balance = 8; - */ - pendingOpenRemoteBalance?: Amount; -} -/** - * @generated from protobuf message lnrpc.QueryRoutesRequest - */ -export interface QueryRoutesRequest { - /** - * The 33-byte hex-encoded public key for the payment destination - * - * @generated from protobuf field: string pub_key = 1; - */ - pubKey: string; - /** - * - * The amount to send expressed in satoshis. - * - * The fields amt and amt_msat are mutually exclusive. - * - * @generated from protobuf field: int64 amt = 2; - */ - amt: bigint; - /** - * - * The amount to send expressed in millisatoshis. - * - * The fields amt and amt_msat are mutually exclusive. - * - * @generated from protobuf field: int64 amt_msat = 12; - */ - amtMsat: bigint; - /** - * - * 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. - * - * @generated from protobuf field: int32 final_cltv_delta = 4; - */ - finalCltvDelta: number; - /** - * - * 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. If not specified, lnd will use a default value of 100% - * fees for small amounts (<=1k sat) or 5% fees for larger amounts. - * - * @generated from protobuf field: lnrpc.FeeLimit fee_limit = 5; - */ - feeLimit?: FeeLimit; - /** - * - * A list of nodes to ignore during path finding. When using REST, these fields - * must be encoded as base64. - * - * @generated from protobuf field: repeated bytes ignored_nodes = 6; - */ - ignoredNodes: Uint8Array[]; - /** - * - * Deprecated. A list of edges to ignore during path finding. - * - * @deprecated - * @generated from protobuf field: repeated lnrpc.EdgeLocator ignored_edges = 7 [deprecated = true]; - */ - ignoredEdges: EdgeLocator[]; - /** - * - * The source node where the request route should originated from. If empty, - * self is assumed. - * - * @generated from protobuf field: string source_pub_key = 8; - */ - sourcePubKey: string; - /** - * - * If set to true, edge probabilities from mission control will be used to get - * the optimal route. - * - * @generated from protobuf field: bool use_mission_control = 9; - */ - useMissionControl: boolean; - /** - * - * A list of directed node pairs that will be ignored during path finding. - * - * @generated from protobuf field: repeated lnrpc.NodePair ignored_pairs = 10; - */ - ignoredPairs: NodePair[]; - /** - * - * 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. - * - * @generated from protobuf field: uint32 cltv_limit = 11; - */ - cltvLimit: number; - /** - * - * 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. - * - * @generated from protobuf field: map dest_custom_records = 13; - */ - destCustomRecords: { - [key: string]: Uint8Array; - }; - /** - * - * The channel id of the channel that must be taken to the first hop. If zero, - * any channel may be used. - * - * @generated from protobuf field: uint64 outgoing_chan_id = 14 [jstype = JS_STRING]; - */ - outgoingChanId: string; - /** - * - * The pubkey of the last hop of the route. If empty, any hop may be used. - * - * @generated from protobuf field: bytes last_hop_pubkey = 15; - */ - lastHopPubkey: Uint8Array; - /** - * - * Optional route hints to reach the destination through private channels. - * - * @generated from protobuf field: repeated lnrpc.RouteHint route_hints = 16; - */ - routeHints: RouteHint[]; - /** - * - * 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. - * - * @generated from protobuf field: repeated lnrpc.FeatureBit dest_features = 17; - */ - destFeatures: FeatureBit[]; - /** - * - * The time preference for this payment. Set to -1 to optimize for fees - * only, to 1 to optimize for reliability only or a value inbetween for a mix. - * - * @generated from protobuf field: double time_pref = 18; - */ - timePref: number; -} -/** - * @generated from protobuf message lnrpc.NodePair - */ -export interface NodePair { - /** - * - * The sending node of the pair. When using REST, this field must be encoded as - * base64. - * - * @generated from protobuf field: bytes from = 1; - */ - from: Uint8Array; - /** - * - * The receiving node of the pair. When using REST, this field must be encoded - * as base64. - * - * @generated from protobuf field: bytes to = 2; - */ - to: Uint8Array; -} -/** - * @generated from protobuf message lnrpc.EdgeLocator - */ -export interface EdgeLocator { - /** - * The short channel id of this edge. - * - * @generated from protobuf field: uint64 channel_id = 1 [jstype = JS_STRING]; - */ - channelId: string; - /** - * - * 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. - * - * @generated from protobuf field: bool direction_reverse = 2; - */ - directionReverse: boolean; -} -/** - * @generated from protobuf message lnrpc.QueryRoutesResponse - */ -export interface QueryRoutesResponse { - /** - * - * The route that results from the path finding operation. This is still a - * repeated field to retain backwards compatibility. - * - * @generated from protobuf field: repeated lnrpc.Route routes = 1; - */ - routes: Route[]; - /** - * - * The success probability of the returned route based on the current mission - * control state. [EXPERIMENTAL] - * - * @generated from protobuf field: double success_prob = 2; - */ - successProb: number; -} -/** - * @generated from protobuf message lnrpc.Hop - */ -export interface Hop { - /** - * - * 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. - * - * @generated from protobuf field: uint64 chan_id = 1 [jstype = JS_STRING]; - */ - chanId: string; - /** - * @deprecated - * @generated from protobuf field: int64 chan_capacity = 2 [deprecated = true]; - */ - chanCapacity: bigint; - /** - * @deprecated - * @generated from protobuf field: int64 amt_to_forward = 3 [deprecated = true]; - */ - amtToForward: bigint; - /** - * @deprecated - * @generated from protobuf field: int64 fee = 4 [deprecated = true]; - */ - fee: bigint; - /** - * @generated from protobuf field: uint32 expiry = 5; - */ - expiry: number; - /** - * @generated from protobuf field: int64 amt_to_forward_msat = 6; - */ - amtToForwardMsat: bigint; - /** - * @generated from protobuf field: int64 fee_msat = 7; - */ - feeMsat: bigint; - /** - * - * 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. - * - * @generated from protobuf field: string pub_key = 8; - */ - pubKey: string; - /** - * - * 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. - * - * @deprecated - * @generated from protobuf field: bool tlv_payload = 9 [deprecated = true]; - */ - tlvPayload: boolean; - /** - * - * 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. - * - * @generated from protobuf field: lnrpc.MPPRecord mpp_record = 10; - */ - mppRecord?: MPPRecord; - /** - * - * 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. - * - * @generated from protobuf field: lnrpc.AMPRecord amp_record = 12; - */ - ampRecord?: AMPRecord; - /** - * - * 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. - * - * @generated from protobuf field: map custom_records = 11; - */ - customRecords: { - [key: string]: Uint8Array; - }; - /** - * The payment metadata to send along with the payment to the payee. - * - * @generated from protobuf field: bytes metadata = 13; - */ - metadata: Uint8Array; -} -/** - * @generated from protobuf message lnrpc.MPPRecord - */ -export interface MPPRecord { - /** - * - * 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. - * - * @generated from protobuf field: bytes payment_addr = 11; - */ - paymentAddr: Uint8Array; - /** - * - * 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. - * - * @generated from protobuf field: int64 total_amt_msat = 10; - */ - totalAmtMsat: bigint; -} -/** - * @generated from protobuf message lnrpc.AMPRecord - */ -export interface AMPRecord { - /** - * @generated from protobuf field: bytes root_share = 1; - */ - rootShare: Uint8Array; - /** - * @generated from protobuf field: bytes set_id = 2; - */ - setId: Uint8Array; - /** - * @generated from protobuf field: uint32 child_index = 3; - */ - childIndex: number; -} -/** - * - * 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. - * - * @generated from protobuf message lnrpc.Route - */ -export interface Route { - /** - * - * 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. - * - * @generated from protobuf field: uint32 total_time_lock = 1; - */ - totalTimeLock: number; - /** - * - * 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 - * @generated from protobuf field: int64 total_fees = 2 [deprecated = true]; - */ - totalFees: bigint; - /** - * - * 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 - * @generated from protobuf field: int64 total_amt = 3 [deprecated = true]; - */ - totalAmt: bigint; - /** - * - * Contains details concerning the specific forwarding details at each hop. - * - * @generated from protobuf field: repeated lnrpc.Hop hops = 4; - */ - hops: Hop[]; - /** - * - * The total fees in millisatoshis. - * - * @generated from protobuf field: int64 total_fees_msat = 5; - */ - totalFeesMsat: bigint; - /** - * - * The total amount in millisatoshis. - * - * @generated from protobuf field: int64 total_amt_msat = 6; - */ - totalAmtMsat: bigint; -} -/** - * @generated from protobuf message lnrpc.NodeInfoRequest - */ -export interface NodeInfoRequest { - /** - * The 33-byte hex-encoded compressed public of the target node - * - * @generated from protobuf field: string pub_key = 1; - */ - pubKey: string; - /** - * If true, will include all known channels associated with the node. - * - * @generated from protobuf field: bool include_channels = 2; - */ - includeChannels: boolean; -} -/** - * @generated from protobuf message lnrpc.NodeInfo - */ -export interface NodeInfo { - /** - * - * 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. - * - * @generated from protobuf field: lnrpc.LightningNode node = 1; - */ - node?: LightningNode; - /** - * The total number of channels for the node. - * - * @generated from protobuf field: uint32 num_channels = 2; - */ - numChannels: number; - /** - * The sum of all channels capacity for the node, denominated in satoshis. - * - * @generated from protobuf field: int64 total_capacity = 3; - */ - totalCapacity: bigint; - /** - * A list of all public channels for the node. - * - * @generated from protobuf field: repeated lnrpc.ChannelEdge channels = 4; - */ - channels: ChannelEdge[]; -} -/** - * - * 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. - * - * @generated from protobuf message lnrpc.LightningNode - */ -export interface LightningNode { - /** - * @generated from protobuf field: uint32 last_update = 1; - */ - lastUpdate: number; - /** - * @generated from protobuf field: string pub_key = 2; - */ - pubKey: string; - /** - * @generated from protobuf field: string alias = 3; - */ - alias: string; - /** - * @generated from protobuf field: repeated lnrpc.NodeAddress addresses = 4; - */ - addresses: NodeAddress[]; - /** - * @generated from protobuf field: string color = 5; - */ - color: string; - /** - * @generated from protobuf field: map features = 6; - */ - features: { - [key: number]: Feature; - }; - /** - * Custom node announcement tlv records. - * - * @generated from protobuf field: map custom_records = 7; - */ - customRecords: { - [key: string]: Uint8Array; - }; -} -/** - * @generated from protobuf message lnrpc.NodeAddress - */ -export interface NodeAddress { - /** - * @generated from protobuf field: string network = 1; - */ - network: string; - /** - * @generated from protobuf field: string addr = 2; - */ - addr: string; -} -/** - * @generated from protobuf message lnrpc.RoutingPolicy - */ -export interface RoutingPolicy { - /** - * @generated from protobuf field: uint32 time_lock_delta = 1; - */ - timeLockDelta: number; - /** - * @generated from protobuf field: int64 min_htlc = 2; - */ - minHtlc: bigint; - /** - * @generated from protobuf field: int64 fee_base_msat = 3; - */ - feeBaseMsat: bigint; - /** - * @generated from protobuf field: int64 fee_rate_milli_msat = 4; - */ - feeRateMilliMsat: bigint; - /** - * @generated from protobuf field: bool disabled = 5; - */ - disabled: boolean; - /** - * @generated from protobuf field: uint64 max_htlc_msat = 6; - */ - maxHtlcMsat: bigint; - /** - * @generated from protobuf field: uint32 last_update = 7; - */ - lastUpdate: number; - /** - * Custom channel update tlv records. - * - * @generated from protobuf field: map custom_records = 8; - */ - customRecords: { - [key: string]: Uint8Array; - }; -} -/** - * - * 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. - * - * @generated from protobuf message lnrpc.ChannelEdge - */ -export interface ChannelEdge { - /** - * - * 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. - * - * @generated from protobuf field: uint64 channel_id = 1 [jstype = JS_STRING]; - */ - channelId: string; - /** - * @generated from protobuf field: string chan_point = 2; - */ - chanPoint: string; - /** - * @deprecated - * @generated from protobuf field: uint32 last_update = 3 [deprecated = true]; - */ - lastUpdate: number; - /** - * @generated from protobuf field: string node1_pub = 4; - */ - node1Pub: string; - /** - * @generated from protobuf field: string node2_pub = 5; - */ - node2Pub: string; - /** - * @generated from protobuf field: int64 capacity = 6; - */ - capacity: bigint; - /** - * @generated from protobuf field: lnrpc.RoutingPolicy node1_policy = 7; - */ - node1Policy?: RoutingPolicy; - /** - * @generated from protobuf field: lnrpc.RoutingPolicy node2_policy = 8; - */ - node2Policy?: RoutingPolicy; - /** - * Custom channel announcement tlv records. - * - * @generated from protobuf field: map custom_records = 9; - */ - customRecords: { - [key: string]: Uint8Array; - }; -} -/** - * @generated from protobuf message lnrpc.ChannelGraphRequest - */ -export interface ChannelGraphRequest { - /** - * - * 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. - * - * @generated from protobuf field: bool include_unannounced = 1; - */ - includeUnannounced: boolean; -} -/** - * Returns a new instance of the directed channel graph. - * - * @generated from protobuf message lnrpc.ChannelGraph - */ -export interface ChannelGraph { - /** - * The list of `LightningNode`s in this channel graph - * - * @generated from protobuf field: repeated lnrpc.LightningNode nodes = 1; - */ - nodes: LightningNode[]; - /** - * The list of `ChannelEdge`s in this channel graph - * - * @generated from protobuf field: repeated lnrpc.ChannelEdge edges = 2; - */ - edges: ChannelEdge[]; -} -/** - * @generated from protobuf message lnrpc.NodeMetricsRequest - */ -export interface NodeMetricsRequest { - /** - * The requested node metrics. - * - * @generated from protobuf field: repeated lnrpc.NodeMetricType types = 1; - */ - types: NodeMetricType[]; -} -/** - * @generated from protobuf message lnrpc.NodeMetricsResponse - */ -export interface NodeMetricsResponse { - /** - * - * 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. - * - * @generated from protobuf field: map betweenness_centrality = 1; - */ - betweennessCentrality: { - [key: string]: FloatMetric; - }; -} -/** - * @generated from protobuf message lnrpc.FloatMetric - */ -export interface FloatMetric { - /** - * Arbitrary float value. - * - * @generated from protobuf field: double value = 1; - */ - value: number; - /** - * The value normalized to [0,1] or [-1,1]. - * - * @generated from protobuf field: double normalized_value = 2; - */ - normalizedValue: number; -} -/** - * @generated from protobuf message lnrpc.ChanInfoRequest - */ -export interface ChanInfoRequest { - /** - * - * 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. - * - * @generated from protobuf field: uint64 chan_id = 1 [jstype = JS_STRING]; - */ - chanId: string; -} -/** - * @generated from protobuf message lnrpc.NetworkInfoRequest - */ -export interface NetworkInfoRequest { -} -/** - * @generated from protobuf message lnrpc.NetworkInfo - */ -export interface NetworkInfo { - /** - * @generated from protobuf field: uint32 graph_diameter = 1; - */ - graphDiameter: number; - /** - * @generated from protobuf field: double avg_out_degree = 2; - */ - avgOutDegree: number; - /** - * @generated from protobuf field: uint32 max_out_degree = 3; - */ - maxOutDegree: number; - /** - * @generated from protobuf field: uint32 num_nodes = 4; - */ - numNodes: number; - /** - * @generated from protobuf field: uint32 num_channels = 5; - */ - numChannels: number; - /** - * @generated from protobuf field: int64 total_network_capacity = 6; - */ - totalNetworkCapacity: bigint; - /** - * @generated from protobuf field: double avg_channel_size = 7; - */ - avgChannelSize: number; - /** - * @generated from protobuf field: int64 min_channel_size = 8; - */ - minChannelSize: bigint; - /** - * @generated from protobuf field: int64 max_channel_size = 9; - */ - maxChannelSize: bigint; - /** - * @generated from protobuf field: int64 median_channel_size_sat = 10; - */ - medianChannelSizeSat: bigint; - /** - * The number of edges marked as zombies. - * - * @generated from protobuf field: uint64 num_zombie_chans = 11; - */ - numZombieChans: bigint; -} -/** - * @generated from protobuf message lnrpc.StopRequest - */ -export interface StopRequest { -} -/** - * @generated from protobuf message lnrpc.StopResponse - */ -export interface StopResponse { -} -/** - * @generated from protobuf message lnrpc.GraphTopologySubscription - */ -export interface GraphTopologySubscription { -} -/** - * @generated from protobuf message lnrpc.GraphTopologyUpdate - */ -export interface GraphTopologyUpdate { - /** - * @generated from protobuf field: repeated lnrpc.NodeUpdate node_updates = 1; - */ - nodeUpdates: NodeUpdate[]; - /** - * @generated from protobuf field: repeated lnrpc.ChannelEdgeUpdate channel_updates = 2; - */ - channelUpdates: ChannelEdgeUpdate[]; - /** - * @generated from protobuf field: repeated lnrpc.ClosedChannelUpdate closed_chans = 3; - */ - closedChans: ClosedChannelUpdate[]; -} -/** - * @generated from protobuf message lnrpc.NodeUpdate - */ -export interface NodeUpdate { - /** - * - * Deprecated, use node_addresses. - * - * @deprecated - * @generated from protobuf field: repeated string addresses = 1 [deprecated = true]; - */ - addresses: string[]; - /** - * @generated from protobuf field: string identity_key = 2; - */ - identityKey: string; - /** - * - * Deprecated, use features. - * - * @deprecated - * @generated from protobuf field: bytes global_features = 3 [deprecated = true]; - */ - globalFeatures: Uint8Array; - /** - * @generated from protobuf field: string alias = 4; - */ - alias: string; - /** - * @generated from protobuf field: string color = 5; - */ - color: string; - /** - * @generated from protobuf field: repeated lnrpc.NodeAddress node_addresses = 7; - */ - nodeAddresses: NodeAddress[]; - /** - * - * Features that the node has advertised in the init message, node - * announcements and invoices. - * - * @generated from protobuf field: map features = 6; - */ - features: { - [key: number]: Feature; - }; -} -/** - * @generated from protobuf message lnrpc.ChannelEdgeUpdate - */ -export interface ChannelEdgeUpdate { - /** - * - * 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. - * - * @generated from protobuf field: uint64 chan_id = 1 [jstype = JS_STRING]; - */ - chanId: string; - /** - * @generated from protobuf field: lnrpc.ChannelPoint chan_point = 2; - */ - chanPoint?: ChannelPoint; - /** - * @generated from protobuf field: int64 capacity = 3; - */ - capacity: bigint; - /** - * @generated from protobuf field: lnrpc.RoutingPolicy routing_policy = 4; - */ - routingPolicy?: RoutingPolicy; - /** - * @generated from protobuf field: string advertising_node = 5; - */ - advertisingNode: string; - /** - * @generated from protobuf field: string connecting_node = 6; - */ - connectingNode: string; -} -/** - * @generated from protobuf message lnrpc.ClosedChannelUpdate - */ -export interface ClosedChannelUpdate { - /** - * - * 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. - * - * @generated from protobuf field: uint64 chan_id = 1 [jstype = JS_STRING]; - */ - chanId: string; - /** - * @generated from protobuf field: int64 capacity = 2; - */ - capacity: bigint; - /** - * @generated from protobuf field: uint32 closed_height = 3; - */ - closedHeight: number; - /** - * @generated from protobuf field: lnrpc.ChannelPoint chan_point = 4; - */ - chanPoint?: ChannelPoint; -} -/** - * @generated from protobuf message lnrpc.HopHint - */ -export interface HopHint { - /** - * The public key of the node at the start of the channel. - * - * @generated from protobuf field: string node_id = 1; - */ - nodeId: string; - /** - * The unique identifier of the channel. - * - * @generated from protobuf field: uint64 chan_id = 2 [jstype = JS_STRING]; - */ - chanId: string; - /** - * The base fee of the channel denominated in millisatoshis. - * - * @generated from protobuf field: uint32 fee_base_msat = 3; - */ - feeBaseMsat: number; - /** - * - * The fee rate of the channel for sending one satoshi across it denominated in - * millionths of a satoshi. - * - * @generated from protobuf field: uint32 fee_proportional_millionths = 4; - */ - feeProportionalMillionths: number; - /** - * The time-lock delta of the channel. - * - * @generated from protobuf field: uint32 cltv_expiry_delta = 5; - */ - cltvExpiryDelta: number; -} -/** - * @generated from protobuf message lnrpc.SetID - */ -export interface SetID { - /** - * @generated from protobuf field: bytes set_id = 1; - */ - setId: Uint8Array; -} -/** - * @generated from protobuf message lnrpc.RouteHint - */ -export interface RouteHint { - /** - * - * A list of hop hints that when chained together can assist in reaching a - * specific destination. - * - * @generated from protobuf field: repeated lnrpc.HopHint hop_hints = 1; - */ - hopHints: HopHint[]; -} -/** - * @generated from protobuf message lnrpc.AMPInvoiceState - */ -export interface AMPInvoiceState { - /** - * The state the HTLCs associated with this setID are in. - * - * @generated from protobuf field: lnrpc.InvoiceHTLCState state = 1; - */ - state: InvoiceHTLCState; - /** - * The settle index of this HTLC set, if the invoice state is settled. - * - * @generated from protobuf field: uint64 settle_index = 2; - */ - settleIndex: bigint; - /** - * The time this HTLC set was settled expressed in unix epoch. - * - * @generated from protobuf field: int64 settle_time = 3; - */ - settleTime: bigint; - /** - * The total amount paid for the sub-invoice expressed in milli satoshis. - * - * @generated from protobuf field: int64 amt_paid_msat = 5; - */ - amtPaidMsat: bigint; -} -/** - * @generated from protobuf message lnrpc.Invoice - */ -export interface Invoice { - /** - * - * 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. - * - * @generated from protobuf field: string memo = 1; - */ - memo: string; - /** - * - * 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. - * - * @generated from protobuf field: bytes r_preimage = 3; - */ - rPreimage: Uint8Array; - /** - * - * The hash of the preimage. When using REST, this field must be encoded as - * base64. - * Note: Output only, don't specify for creating an invoice. - * - * @generated from protobuf field: bytes r_hash = 4; - */ - rHash: Uint8Array; - /** - * - * The value of this invoice in satoshis - * - * The fields value and value_msat are mutually exclusive. - * - * @generated from protobuf field: int64 value = 5; - */ - value: bigint; - /** - * - * The value of this invoice in millisatoshis - * - * The fields value and value_msat are mutually exclusive. - * - * @generated from protobuf field: int64 value_msat = 23; - */ - valueMsat: bigint; - /** - * - * Whether this invoice has been fulfilled - * - * The field is deprecated. Use the state field instead (compare to SETTLED). - * - * @deprecated - * @generated from protobuf field: bool settled = 6 [deprecated = true]; - */ - settled: boolean; - /** - * - * When this invoice was created. - * Note: Output only, don't specify for creating an invoice. - * - * @generated from protobuf field: int64 creation_date = 7; - */ - creationDate: bigint; - /** - * - * When this invoice was settled. - * Note: Output only, don't specify for creating an invoice. - * - * @generated from protobuf field: int64 settle_date = 8; - */ - settleDate: bigint; - /** - * - * 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. - * Note: Output only, don't specify for creating an invoice. - * - * @generated from protobuf field: string payment_request = 9; - */ - paymentRequest: string; - /** - * - * 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. - * - * @generated from protobuf field: bytes description_hash = 10; - */ - descriptionHash: Uint8Array; - /** - * Payment request expiry time in seconds. Default is 3600 (1 hour). - * - * @generated from protobuf field: int64 expiry = 11; - */ - expiry: bigint; - /** - * Fallback on-chain address. - * - * @generated from protobuf field: string fallback_addr = 12; - */ - fallbackAddr: string; - /** - * Delta to use for the time-lock of the CLTV extended to the final hop. - * - * @generated from protobuf field: uint64 cltv_expiry = 13; - */ - cltvExpiry: bigint; - /** - * - * Route hints that can each be individually used to assist in reaching the - * invoice's destination. - * - * @generated from protobuf field: repeated lnrpc.RouteHint route_hints = 14; - */ - routeHints: RouteHint[]; - /** - * Whether this invoice should include routing hints for private channels. - * - * @generated from protobuf field: bool private = 15; - */ - private: boolean; - /** - * - * 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. - * Note: Output only, don't specify for creating an invoice. - * - * @generated from protobuf field: uint64 add_index = 16; - */ - addIndex: bigint; - /** - * - * 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. - * Note: Output only, don't specify for creating an invoice. - * - * @generated from protobuf field: uint64 settle_index = 17; - */ - settleIndex: bigint; - /** - * Deprecated, use amt_paid_sat or amt_paid_msat. - * - * @deprecated - * @generated from protobuf field: int64 amt_paid = 18 [deprecated = true]; - */ - amtPaid: bigint; - /** - * - * 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. - * Note: Output only, don't specify for creating an invoice. - * - * @generated from protobuf field: int64 amt_paid_sat = 19; - */ - amtPaidSat: bigint; - /** - * - * 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. - * Note: Output only, don't specify for creating an invoice. - * - * @generated from protobuf field: int64 amt_paid_msat = 20; - */ - amtPaidMsat: bigint; - /** - * - * The state the invoice is in. - * Note: Output only, don't specify for creating an invoice. - * - * @generated from protobuf field: lnrpc.Invoice.InvoiceState state = 21; - */ - state: Invoice_InvoiceState; - /** - * - * List of HTLCs paying to this invoice [EXPERIMENTAL]. - * Note: Output only, don't specify for creating an invoice. - * - * @generated from protobuf field: repeated lnrpc.InvoiceHTLC htlcs = 22; - */ - htlcs: InvoiceHTLC[]; - /** - * - * List of features advertised on the invoice. - * Note: Output only, don't specify for creating an invoice. - * - * @generated from protobuf field: map features = 24; - */ - features: { - [key: number]: Feature; - }; - /** - * - * Indicates if this invoice was a spontaneous payment that arrived via keysend - * [EXPERIMENTAL]. - * Note: Output only, don't specify for creating an invoice. - * - * @generated from protobuf field: bool is_keysend = 25; - */ - isKeysend: boolean; - /** - * - * The payment address of this invoice. This value will be used in MPP - * payments, and also for newer invoices that always require the MPP payload - * for added end-to-end security. - * Note: Output only, don't specify for creating an invoice. - * - * @generated from protobuf field: bytes payment_addr = 26; - */ - paymentAddr: Uint8Array; - /** - * - * Signals whether or not this is an AMP invoice. - * - * @generated from protobuf field: bool is_amp = 27; - */ - isAmp: boolean; - /** - * - * [EXPERIMENTAL]: - * - * Maps a 32-byte hex-encoded set ID to the sub-invoice AMP state for the - * given set ID. This field is always populated for AMP invoices, and can be - * used along side LookupInvoice to obtain the HTLC information related to a - * given sub-invoice. - * Note: Output only, don't specify for creating an invoice. - * - * @generated from protobuf field: map amp_invoice_state = 28; - */ - ampInvoiceState: { - [key: string]: AMPInvoiceState; - }; -} -/** - * @generated from protobuf enum lnrpc.Invoice.InvoiceState - */ -export enum Invoice_InvoiceState { - /** - * @generated from protobuf enum value: OPEN = 0; - */ - OPEN = 0, - /** - * @generated from protobuf enum value: SETTLED = 1; - */ - SETTLED = 1, - /** - * @generated from protobuf enum value: CANCELED = 2; - */ - CANCELED = 2, - /** - * @generated from protobuf enum value: ACCEPTED = 3; - */ - ACCEPTED = 3 -} -/** - * Details of an HTLC that paid to an invoice - * - * @generated from protobuf message lnrpc.InvoiceHTLC - */ -export interface InvoiceHTLC { - /** - * Short channel id over which the htlc was received. - * - * @generated from protobuf field: uint64 chan_id = 1 [jstype = JS_STRING]; - */ - chanId: string; - /** - * Index identifying the htlc on the channel. - * - * @generated from protobuf field: uint64 htlc_index = 2; - */ - htlcIndex: bigint; - /** - * The amount of the htlc in msat. - * - * @generated from protobuf field: uint64 amt_msat = 3; - */ - amtMsat: bigint; - /** - * Block height at which this htlc was accepted. - * - * @generated from protobuf field: int32 accept_height = 4; - */ - acceptHeight: number; - /** - * Time at which this htlc was accepted. - * - * @generated from protobuf field: int64 accept_time = 5; - */ - acceptTime: bigint; - /** - * Time at which this htlc was settled or canceled. - * - * @generated from protobuf field: int64 resolve_time = 6; - */ - resolveTime: bigint; - /** - * Block height at which this htlc expires. - * - * @generated from protobuf field: int32 expiry_height = 7; - */ - expiryHeight: number; - /** - * Current state the htlc is in. - * - * @generated from protobuf field: lnrpc.InvoiceHTLCState state = 8; - */ - state: InvoiceHTLCState; - /** - * Custom tlv records. - * - * @generated from protobuf field: map custom_records = 9; - */ - customRecords: { - [key: string]: Uint8Array; - }; - /** - * The total amount of the mpp payment in msat. - * - * @generated from protobuf field: uint64 mpp_total_amt_msat = 10; - */ - mppTotalAmtMsat: bigint; - /** - * Details relevant to AMP HTLCs, only populated if this is an AMP HTLC. - * - * @generated from protobuf field: lnrpc.AMP amp = 11; - */ - amp?: AMP; -} -/** - * Details specific to AMP HTLCs. - * - * @generated from protobuf message lnrpc.AMP - */ -export interface AMP { - /** - * An n-of-n secret share of the root seed from which child payment hashes - * and preimages are derived. - * - * @generated from protobuf field: bytes root_share = 1; - */ - rootShare: Uint8Array; - /** - * An identifier for the HTLC set that this HTLC belongs to. - * - * @generated from protobuf field: bytes set_id = 2; - */ - setId: Uint8Array; - /** - * A nonce used to randomize the child preimage and child hash from a given - * root_share. - * - * @generated from protobuf field: uint32 child_index = 3; - */ - childIndex: number; - /** - * The payment hash of the AMP HTLC. - * - * @generated from protobuf field: bytes hash = 4; - */ - hash: Uint8Array; - /** - * The preimage used to settle this AMP htlc. This field will only be - * populated if the invoice is in InvoiceState_ACCEPTED or - * InvoiceState_SETTLED. - * - * @generated from protobuf field: bytes preimage = 5; - */ - preimage: Uint8Array; -} -/** - * @generated from protobuf message lnrpc.AddInvoiceResponse - */ -export interface AddInvoiceResponse { - /** - * @generated from protobuf field: bytes r_hash = 1; - */ - rHash: Uint8Array; - /** - * - * 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. - * - * @generated from protobuf field: string payment_request = 2; - */ - paymentRequest: string; - /** - * - * 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. - * - * @generated from protobuf field: uint64 add_index = 16; - */ - addIndex: bigint; - /** - * - * 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. - * - * @generated from protobuf field: bytes payment_addr = 17; - */ - paymentAddr: Uint8Array; -} -/** - * @generated from protobuf message lnrpc.PaymentHash - */ -export interface PaymentHash { - /** - * - * 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 - * @generated from protobuf field: string r_hash_str = 1 [deprecated = true]; - */ - rHashStr: string; - /** - * - * The payment hash of the invoice to be looked up. When using REST, this field - * must be encoded as base64. - * - * @generated from protobuf field: bytes r_hash = 2; - */ - rHash: Uint8Array; -} -/** - * @generated from protobuf message lnrpc.ListInvoiceRequest - */ -export interface ListInvoiceRequest { - /** - * - * If set, only invoices that are not settled and not canceled will be returned - * in the response. - * - * @generated from protobuf field: bool pending_only = 1; - */ - pendingOnly: boolean; - /** - * - * 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. - * - * @generated from protobuf field: uint64 index_offset = 4; - */ - indexOffset: bigint; - /** - * The max number of invoices to return in the response to this query. - * - * @generated from protobuf field: uint64 num_max_invoices = 5; - */ - numMaxInvoices: bigint; - /** - * - * If set, the invoices returned will result from seeking backwards from the - * specified index offset. This can be used to paginate backwards. - * - * @generated from protobuf field: bool reversed = 6; - */ - reversed: boolean; -} -/** - * @generated from protobuf message lnrpc.ListInvoiceResponse - */ -export interface ListInvoiceResponse { - /** - * - * A list of invoices from the time slice of the time series specified in the - * request. - * - * @generated from protobuf field: repeated lnrpc.Invoice invoices = 1; - */ - invoices: Invoice[]; - /** - * - * The index of the last item in the set of returned invoices. This can be used - * to seek further, pagination style. - * - * @generated from protobuf field: uint64 last_index_offset = 2; - */ - lastIndexOffset: bigint; - /** - * - * The index of the last item in the set of returned invoices. This can be used - * to seek backwards, pagination style. - * - * @generated from protobuf field: uint64 first_index_offset = 3; - */ - firstIndexOffset: bigint; -} -/** - * @generated from protobuf message lnrpc.InvoiceSubscription - */ -export interface InvoiceSubscription { - /** - * - * 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. - * - * @generated from protobuf field: uint64 add_index = 1; - */ - addIndex: bigint; - /** - * - * 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. - * - * @generated from protobuf field: uint64 settle_index = 2; - */ - settleIndex: bigint; -} -/** - * @generated from protobuf message lnrpc.Payment - */ -export interface Payment { - /** - * The payment hash - * - * @generated from protobuf field: string payment_hash = 1; - */ - paymentHash: string; - /** - * Deprecated, use value_sat or value_msat. - * - * @deprecated - * @generated from protobuf field: int64 value = 2 [deprecated = true]; - */ - value: bigint; - /** - * Deprecated, use creation_time_ns - * - * @deprecated - * @generated from protobuf field: int64 creation_date = 3 [deprecated = true]; - */ - creationDate: bigint; - /** - * Deprecated, use fee_sat or fee_msat. - * - * @deprecated - * @generated from protobuf field: int64 fee = 5 [deprecated = true]; - */ - fee: bigint; - /** - * The payment preimage - * - * @generated from protobuf field: string payment_preimage = 6; - */ - paymentPreimage: string; - /** - * The value of the payment in satoshis - * - * @generated from protobuf field: int64 value_sat = 7; - */ - valueSat: bigint; - /** - * The value of the payment in milli-satoshis - * - * @generated from protobuf field: int64 value_msat = 8; - */ - valueMsat: bigint; - /** - * The optional payment request being fulfilled. - * - * @generated from protobuf field: string payment_request = 9; - */ - paymentRequest: string; - /** - * The status of the payment. - * - * @generated from protobuf field: lnrpc.Payment.PaymentStatus status = 10; - */ - status: Payment_PaymentStatus; - /** - * The fee paid for this payment in satoshis - * - * @generated from protobuf field: int64 fee_sat = 11; - */ - feeSat: bigint; - /** - * The fee paid for this payment in milli-satoshis - * - * @generated from protobuf field: int64 fee_msat = 12; - */ - feeMsat: bigint; - /** - * The time in UNIX nanoseconds at which the payment was created. - * - * @generated from protobuf field: int64 creation_time_ns = 13; - */ - creationTimeNs: bigint; - /** - * The HTLCs made in attempt to settle the payment. - * - * @generated from protobuf field: repeated lnrpc.HTLCAttempt htlcs = 14; - */ - htlcs: HTLCAttempt[]; - /** - * - * 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. - * - * @generated from protobuf field: uint64 payment_index = 15; - */ - paymentIndex: bigint; - /** - * @generated from protobuf field: lnrpc.PaymentFailureReason failure_reason = 16; - */ - failureReason: PaymentFailureReason; -} -/** - * @generated from protobuf enum lnrpc.Payment.PaymentStatus - */ -export enum Payment_PaymentStatus { - /** - * @generated from protobuf enum value: UNKNOWN = 0; - */ - UNKNOWN = 0, - /** - * @generated from protobuf enum value: IN_FLIGHT = 1; - */ - IN_FLIGHT = 1, - /** - * @generated from protobuf enum value: SUCCEEDED = 2; - */ - SUCCEEDED = 2, - /** - * @generated from protobuf enum value: FAILED = 3; - */ - FAILED = 3 -} -/** - * @generated from protobuf message lnrpc.HTLCAttempt - */ -export interface HTLCAttempt { - /** - * The unique ID that is used for this attempt. - * - * @generated from protobuf field: uint64 attempt_id = 7; - */ - attemptId: bigint; - /** - * The status of the HTLC. - * - * @generated from protobuf field: lnrpc.HTLCAttempt.HTLCStatus status = 1; - */ - status: HTLCAttempt_HTLCStatus; - /** - * The route taken by this HTLC. - * - * @generated from protobuf field: lnrpc.Route route = 2; - */ - route?: Route; - /** - * The time in UNIX nanoseconds at which this HTLC was sent. - * - * @generated from protobuf field: int64 attempt_time_ns = 3; - */ - attemptTimeNs: bigint; - /** - * - * 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. - * - * @generated from protobuf field: int64 resolve_time_ns = 4; - */ - resolveTimeNs: bigint; - /** - * Detailed htlc failure info. - * - * @generated from protobuf field: lnrpc.Failure failure = 5; - */ - failure?: Failure; - /** - * The preimage that was used to settle the HTLC. - * - * @generated from protobuf field: bytes preimage = 6; - */ - preimage: Uint8Array; -} -/** - * @generated from protobuf enum lnrpc.HTLCAttempt.HTLCStatus - */ -export enum HTLCAttempt_HTLCStatus { - /** - * @generated from protobuf enum value: IN_FLIGHT = 0; - */ - IN_FLIGHT = 0, - /** - * @generated from protobuf enum value: SUCCEEDED = 1; - */ - SUCCEEDED = 1, - /** - * @generated from protobuf enum value: FAILED = 2; - */ - FAILED = 2 -} -/** - * @generated from protobuf message lnrpc.ListPaymentsRequest - */ -export interface ListPaymentsRequest { - /** - * - * 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. - * - * @generated from protobuf field: bool include_incomplete = 1; - */ - includeIncomplete: boolean; - /** - * - * 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. - * - * @generated from protobuf field: uint64 index_offset = 2; - */ - indexOffset: bigint; - /** - * The maximal number of payments returned in the response to this query. - * - * @generated from protobuf field: uint64 max_payments = 3; - */ - maxPayments: bigint; - /** - * - * 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). - * - * @generated from protobuf field: bool reversed = 4; - */ - reversed: boolean; - /** - * - * If set, all payments (complete and incomplete, independent of the - * max_payments parameter) will be counted. Note that setting this to true will - * increase the run time of the call significantly on systems that have a lot - * of payments, as all of them have to be iterated through to be counted. - * - * @generated from protobuf field: bool count_total_payments = 5; - */ - countTotalPayments: boolean; -} -/** - * @generated from protobuf message lnrpc.ListPaymentsResponse - */ -export interface ListPaymentsResponse { - /** - * The list of payments - * - * @generated from protobuf field: repeated lnrpc.Payment payments = 1; - */ - payments: Payment[]; - /** - * - * 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. - * - * @generated from protobuf field: uint64 first_index_offset = 2; - */ - firstIndexOffset: bigint; - /** - * - * 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. - * - * @generated from protobuf field: uint64 last_index_offset = 3; - */ - lastIndexOffset: bigint; - /** - * - * Will only be set if count_total_payments in the request was set. Represents - * the total number of payments (complete and incomplete, independent of the - * number of payments requested in the query) currently present in the payments - * database. - * - * @generated from protobuf field: uint64 total_num_payments = 4; - */ - totalNumPayments: bigint; -} -/** - * @generated from protobuf message lnrpc.DeletePaymentRequest - */ -export interface DeletePaymentRequest { - /** - * Payment hash to delete. - * - * @generated from protobuf field: bytes payment_hash = 1; - */ - paymentHash: Uint8Array; - /** - * - * Only delete failed HTLCs from the payment, not the payment itself. - * - * @generated from protobuf field: bool failed_htlcs_only = 2; - */ - failedHtlcsOnly: boolean; -} -/** - * @generated from protobuf message lnrpc.DeleteAllPaymentsRequest - */ -export interface DeleteAllPaymentsRequest { - /** - * Only delete failed payments. - * - * @generated from protobuf field: bool failed_payments_only = 1; - */ - failedPaymentsOnly: boolean; - /** - * - * Only delete failed HTLCs from payments, not the payment itself. - * - * @generated from protobuf field: bool failed_htlcs_only = 2; - */ - failedHtlcsOnly: boolean; -} -/** - * @generated from protobuf message lnrpc.DeletePaymentResponse - */ -export interface DeletePaymentResponse { -} -/** - * @generated from protobuf message lnrpc.DeleteAllPaymentsResponse - */ -export interface DeleteAllPaymentsResponse { -} -/** - * @generated from protobuf message lnrpc.AbandonChannelRequest - */ -export interface AbandonChannelRequest { - /** - * @generated from protobuf field: lnrpc.ChannelPoint channel_point = 1; - */ - channelPoint?: ChannelPoint; - /** - * @generated from protobuf field: bool pending_funding_shim_only = 2; - */ - pendingFundingShimOnly: boolean; - /** - * - * 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. - * - * @generated from protobuf field: bool i_know_what_i_am_doing = 3; - */ - iKnowWhatIAmDoing: boolean; -} -/** - * @generated from protobuf message lnrpc.AbandonChannelResponse - */ -export interface AbandonChannelResponse { -} -/** - * @generated from protobuf message lnrpc.DebugLevelRequest - */ -export interface DebugLevelRequest { - /** - * @generated from protobuf field: bool show = 1; - */ - show: boolean; - /** - * @generated from protobuf field: string level_spec = 2; - */ - levelSpec: string; -} -/** - * @generated from protobuf message lnrpc.DebugLevelResponse - */ -export interface DebugLevelResponse { - /** - * @generated from protobuf field: string sub_systems = 1; - */ - subSystems: string; -} -/** - * @generated from protobuf message lnrpc.PayReqString - */ -export interface PayReqString { - /** - * The payment request string to be decoded - * - * @generated from protobuf field: string pay_req = 1; - */ - payReq: string; -} -/** - * @generated from protobuf message lnrpc.PayReq - */ -export interface PayReq { - /** - * @generated from protobuf field: string destination = 1; - */ - destination: string; - /** - * @generated from protobuf field: string payment_hash = 2; - */ - paymentHash: string; - /** - * @generated from protobuf field: int64 num_satoshis = 3; - */ - numSatoshis: bigint; - /** - * @generated from protobuf field: int64 timestamp = 4; - */ - timestamp: bigint; - /** - * @generated from protobuf field: int64 expiry = 5; - */ - expiry: bigint; - /** - * @generated from protobuf field: string description = 6; - */ - description: string; - /** - * @generated from protobuf field: string description_hash = 7; - */ - descriptionHash: string; - /** - * @generated from protobuf field: string fallback_addr = 8; - */ - fallbackAddr: string; - /** - * @generated from protobuf field: int64 cltv_expiry = 9; - */ - cltvExpiry: bigint; - /** - * @generated from protobuf field: repeated lnrpc.RouteHint route_hints = 10; - */ - routeHints: RouteHint[]; - /** - * @generated from protobuf field: bytes payment_addr = 11; - */ - paymentAddr: Uint8Array; - /** - * @generated from protobuf field: int64 num_msat = 12; - */ - numMsat: bigint; - /** - * @generated from protobuf field: map features = 13; - */ - features: { - [key: number]: Feature; - }; -} -/** - * @generated from protobuf message lnrpc.Feature - */ -export interface Feature { - /** - * @generated from protobuf field: string name = 2; - */ - name: string; - /** - * @generated from protobuf field: bool is_required = 3; - */ - isRequired: boolean; - /** - * @generated from protobuf field: bool is_known = 4; - */ - isKnown: boolean; -} -/** - * @generated from protobuf message lnrpc.FeeReportRequest - */ -export interface FeeReportRequest { -} -/** - * @generated from protobuf message lnrpc.ChannelFeeReport - */ -export interface ChannelFeeReport { - /** - * The short channel id that this fee report belongs to. - * - * @generated from protobuf field: uint64 chan_id = 5 [jstype = JS_STRING]; - */ - chanId: string; - /** - * The channel that this fee report belongs to. - * - * @generated from protobuf field: string channel_point = 1; - */ - channelPoint: string; - /** - * The base fee charged regardless of the number of milli-satoshis sent. - * - * @generated from protobuf field: int64 base_fee_msat = 2; - */ - baseFeeMsat: bigint; - /** - * The amount charged per milli-satoshis transferred expressed in - * millionths of a satoshi. - * - * @generated from protobuf field: int64 fee_per_mil = 3; - */ - feePerMil: bigint; - /** - * The effective fee rate in milli-satoshis. Computed by dividing the - * fee_per_mil value by 1 million. - * - * @generated from protobuf field: double fee_rate = 4; - */ - feeRate: number; -} -/** - * @generated from protobuf message lnrpc.FeeReportResponse - */ -export interface FeeReportResponse { - /** - * An array of channel fee reports which describes the current fee schedule - * for each channel. - * - * @generated from protobuf field: repeated lnrpc.ChannelFeeReport channel_fees = 1; - */ - channelFees: ChannelFeeReport[]; - /** - * The total amount of fee revenue (in satoshis) the switch has collected - * over the past 24 hrs. - * - * @generated from protobuf field: uint64 day_fee_sum = 2; - */ - dayFeeSum: bigint; - /** - * The total amount of fee revenue (in satoshis) the switch has collected - * over the past 1 week. - * - * @generated from protobuf field: uint64 week_fee_sum = 3; - */ - weekFeeSum: bigint; - /** - * The total amount of fee revenue (in satoshis) the switch has collected - * over the past 1 month. - * - * @generated from protobuf field: uint64 month_fee_sum = 4; - */ - monthFeeSum: bigint; -} -/** - * @generated from protobuf message lnrpc.PolicyUpdateRequest - */ -export interface PolicyUpdateRequest { - /** - * @generated from protobuf oneof: scope - */ - scope: { - oneofKind: "global"; - /** - * If set, then this update applies to all currently active channels. - * - * @generated from protobuf field: bool global = 1; - */ - global: boolean; - } | { - oneofKind: "chanPoint"; - /** - * If set, this update will target a specific channel. - * - * @generated from protobuf field: lnrpc.ChannelPoint chan_point = 2; - */ - chanPoint: ChannelPoint; - } | { - oneofKind: undefined; - }; - /** - * The base fee charged regardless of the number of milli-satoshis sent. - * - * @generated from protobuf field: int64 base_fee_msat = 3; - */ - baseFeeMsat: bigint; - /** - * The effective fee rate in milli-satoshis. The precision of this value - * goes up to 6 decimal places, so 1e-6. - * - * @generated from protobuf field: double fee_rate = 4; - */ - feeRate: number; - /** - * The effective fee rate in micro-satoshis (parts per million). - * - * @generated from protobuf field: uint32 fee_rate_ppm = 9; - */ - feeRatePpm: number; - /** - * The required timelock delta for HTLCs forwarded over the channel. - * - * @generated from protobuf field: uint32 time_lock_delta = 5; - */ - timeLockDelta: number; - /** - * If set, the maximum HTLC size in milli-satoshis. If unset, the maximum - * HTLC will be unchanged. - * - * @generated from protobuf field: uint64 max_htlc_msat = 6; - */ - maxHtlcMsat: bigint; - /** - * The minimum HTLC size in milli-satoshis. Only applied if - * min_htlc_msat_specified is true. - * - * @generated from protobuf field: uint64 min_htlc_msat = 7; - */ - minHtlcMsat: bigint; - /** - * If true, min_htlc_msat is applied. - * - * @generated from protobuf field: bool min_htlc_msat_specified = 8; - */ - minHtlcMsatSpecified: boolean; -} -/** - * @generated from protobuf message lnrpc.FailedUpdate - */ -export interface FailedUpdate { - /** - * The outpoint in format txid:n - * - * @generated from protobuf field: lnrpc.OutPoint outpoint = 1; - */ - outpoint?: OutPoint; - /** - * Reason for the policy update failure. - * - * @generated from protobuf field: lnrpc.UpdateFailure reason = 2; - */ - reason: UpdateFailure; - /** - * A string representation of the policy update error. - * - * @generated from protobuf field: string update_error = 3; - */ - updateError: string; -} -/** - * @generated from protobuf message lnrpc.PolicyUpdateResponse - */ -export interface PolicyUpdateResponse { - /** - * List of failed policy updates. - * - * @generated from protobuf field: repeated lnrpc.FailedUpdate failed_updates = 1; - */ - failedUpdates: FailedUpdate[]; -} -/** - * @generated from protobuf message lnrpc.ForwardingHistoryRequest - */ -export interface ForwardingHistoryRequest { - /** - * 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. - * - * @generated from protobuf field: uint64 start_time = 1; - */ - startTime: bigint; - /** - * 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. - * - * @generated from protobuf field: uint64 end_time = 2; - */ - endTime: bigint; - /** - * 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. - * - * @generated from protobuf field: uint32 index_offset = 3; - */ - indexOffset: number; - /** - * The max number of events to return in the response to this query. - * - * @generated from protobuf field: uint32 num_max_events = 4; - */ - numMaxEvents: number; - /** - * Informs the server if the peer alias should be looked up for each - * forwarding event. - * - * @generated from protobuf field: bool peer_alias_lookup = 5; - */ - peerAliasLookup: boolean; -} -/** - * @generated from protobuf message lnrpc.ForwardingEvent - */ -export interface ForwardingEvent { - /** - * Timestamp is the time (unix epoch offset) that this circuit was - * completed. Deprecated by timestamp_ns. - * - * @deprecated - * @generated from protobuf field: uint64 timestamp = 1 [deprecated = true]; - */ - timestamp: bigint; - /** - * The incoming channel ID that carried the HTLC that created the circuit. - * - * @generated from protobuf field: uint64 chan_id_in = 2 [jstype = JS_STRING]; - */ - chanIdIn: string; - /** - * The outgoing channel ID that carried the preimage that completed the - * circuit. - * - * @generated from protobuf field: uint64 chan_id_out = 4 [jstype = JS_STRING]; - */ - chanIdOut: string; - /** - * The total amount (in satoshis) of the incoming HTLC that created half - * the circuit. - * - * @generated from protobuf field: uint64 amt_in = 5; - */ - amtIn: bigint; - /** - * The total amount (in satoshis) of the outgoing HTLC that created the - * second half of the circuit. - * - * @generated from protobuf field: uint64 amt_out = 6; - */ - amtOut: bigint; - /** - * The total fee (in satoshis) that this payment circuit carried. - * - * @generated from protobuf field: uint64 fee = 7; - */ - fee: bigint; - /** - * The total fee (in milli-satoshis) that this payment circuit carried. - * - * @generated from protobuf field: uint64 fee_msat = 8; - */ - feeMsat: bigint; - /** - * The total amount (in milli-satoshis) of the incoming HTLC that created - * half the circuit. - * - * @generated from protobuf field: uint64 amt_in_msat = 9; - */ - amtInMsat: bigint; - /** - * The total amount (in milli-satoshis) of the outgoing HTLC that created - * the second half of the circuit. - * - * @generated from protobuf field: uint64 amt_out_msat = 10; - */ - amtOutMsat: bigint; - /** - * The number of nanoseconds elapsed since January 1, 1970 UTC when this - * circuit was completed. - * - * @generated from protobuf field: uint64 timestamp_ns = 11; - */ - timestampNs: bigint; - /** - * The peer alias of the incoming channel. - * - * @generated from protobuf field: string peer_alias_in = 12; - */ - peerAliasIn: string; - /** - * The peer alias of the outgoing channel. - * - * @generated from protobuf field: string peer_alias_out = 13; - */ - peerAliasOut: string; -} -/** - * @generated from protobuf message lnrpc.ForwardingHistoryResponse - */ -export interface ForwardingHistoryResponse { - /** - * A list of forwarding events from the time slice of the time series - * specified in the request. - * - * @generated from protobuf field: repeated lnrpc.ForwardingEvent forwarding_events = 1; - */ - forwardingEvents: ForwardingEvent[]; - /** - * The index of the last time in the set of returned forwarding events. Can - * be used to seek further, pagination style. - * - * @generated from protobuf field: uint32 last_offset_index = 2; - */ - lastOffsetIndex: number; -} -/** - * @generated from protobuf message lnrpc.ExportChannelBackupRequest - */ -export interface ExportChannelBackupRequest { - /** - * The target channel point to obtain a back up for. - * - * @generated from protobuf field: lnrpc.ChannelPoint chan_point = 1; - */ - chanPoint?: ChannelPoint; -} -/** - * @generated from protobuf message lnrpc.ChannelBackup - */ -export interface ChannelBackup { - /** - * - * Identifies the channel that this backup belongs to. - * - * @generated from protobuf field: lnrpc.ChannelPoint chan_point = 1; - */ - chanPoint?: ChannelPoint; - /** - * - * 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. - * - * @generated from protobuf field: bytes chan_backup = 2; - */ - chanBackup: Uint8Array; -} -/** - * @generated from protobuf message lnrpc.MultiChanBackup - */ -export interface MultiChanBackup { - /** - * - * Is the set of all channels that are included in this multi-channel backup. - * - * @generated from protobuf field: repeated lnrpc.ChannelPoint chan_points = 1; - */ - chanPoints: ChannelPoint[]; - /** - * - * 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. - * - * @generated from protobuf field: bytes multi_chan_backup = 2; - */ - multiChanBackup: Uint8Array; -} -/** - * @generated from protobuf message lnrpc.ChanBackupExportRequest - */ -export interface ChanBackupExportRequest { -} -/** - * @generated from protobuf message lnrpc.ChanBackupSnapshot - */ -export interface ChanBackupSnapshot { - /** - * - * The set of new channels that have been added since the last channel backup - * snapshot was requested. - * - * @generated from protobuf field: lnrpc.ChannelBackups single_chan_backups = 1; - */ - singleChanBackups?: ChannelBackups; - /** - * - * A multi-channel backup that covers all open channels currently known to - * lnd. - * - * @generated from protobuf field: lnrpc.MultiChanBackup multi_chan_backup = 2; - */ - multiChanBackup?: MultiChanBackup; -} -/** - * @generated from protobuf message lnrpc.ChannelBackups - */ -export interface ChannelBackups { - /** - * - * A set of single-chan static channel backups. - * - * @generated from protobuf field: repeated lnrpc.ChannelBackup chan_backups = 1; - */ - chanBackups: ChannelBackup[]; -} -/** - * @generated from protobuf message lnrpc.RestoreChanBackupRequest - */ -export interface RestoreChanBackupRequest { - /** - * @generated from protobuf oneof: backup - */ - backup: { - oneofKind: "chanBackups"; - /** - * - * The channels to restore as a list of channel/backup pairs. - * - * @generated from protobuf field: lnrpc.ChannelBackups chan_backups = 1; - */ - chanBackups: ChannelBackups; - } | { - oneofKind: "multiChanBackup"; - /** - * - * The channels to restore in the packed multi backup format. When using - * REST, this field must be encoded as base64. - * - * @generated from protobuf field: bytes multi_chan_backup = 2; - */ - multiChanBackup: Uint8Array; - } | { - oneofKind: undefined; - }; -} -/** - * @generated from protobuf message lnrpc.RestoreBackupResponse - */ -export interface RestoreBackupResponse { -} -/** - * @generated from protobuf message lnrpc.ChannelBackupSubscription - */ -export interface ChannelBackupSubscription { -} -/** - * @generated from protobuf message lnrpc.VerifyChanBackupResponse - */ -export interface VerifyChanBackupResponse { -} -/** - * @generated from protobuf message lnrpc.MacaroonPermission - */ -export interface MacaroonPermission { - /** - * The entity a permission grants access to. - * - * @generated from protobuf field: string entity = 1; - */ - entity: string; - /** - * The action that is granted. - * - * @generated from protobuf field: string action = 2; - */ - action: string; -} -/** - * @generated from protobuf message lnrpc.BakeMacaroonRequest - */ -export interface BakeMacaroonRequest { - /** - * The list of permissions the new macaroon should grant. - * - * @generated from protobuf field: repeated lnrpc.MacaroonPermission permissions = 1; - */ - permissions: MacaroonPermission[]; - /** - * The root key ID used to create the macaroon, must be a positive integer. - * - * @generated from protobuf field: uint64 root_key_id = 2; - */ - rootKeyId: bigint; - /** - * - * Informs the RPC on whether to allow external permissions that LND is not - * aware of. - * - * @generated from protobuf field: bool allow_external_permissions = 3; - */ - allowExternalPermissions: boolean; -} -/** - * @generated from protobuf message lnrpc.BakeMacaroonResponse - */ -export interface BakeMacaroonResponse { - /** - * The hex encoded macaroon, serialized in binary format. - * - * @generated from protobuf field: string macaroon = 1; - */ - macaroon: string; -} -/** - * @generated from protobuf message lnrpc.ListMacaroonIDsRequest - */ -export interface ListMacaroonIDsRequest { -} -/** - * @generated from protobuf message lnrpc.ListMacaroonIDsResponse - */ -export interface ListMacaroonIDsResponse { - /** - * The list of root key IDs that are in use. - * - * @generated from protobuf field: repeated uint64 root_key_ids = 1; - */ - rootKeyIds: bigint[]; -} -/** - * @generated from protobuf message lnrpc.DeleteMacaroonIDRequest - */ -export interface DeleteMacaroonIDRequest { - /** - * The root key ID to be removed. - * - * @generated from protobuf field: uint64 root_key_id = 1; - */ - rootKeyId: bigint; -} -/** - * @generated from protobuf message lnrpc.DeleteMacaroonIDResponse - */ -export interface DeleteMacaroonIDResponse { - /** - * A boolean indicates that the deletion is successful. - * - * @generated from protobuf field: bool deleted = 1; - */ - deleted: boolean; -} -/** - * @generated from protobuf message lnrpc.MacaroonPermissionList - */ -export interface MacaroonPermissionList { - /** - * A list of macaroon permissions. - * - * @generated from protobuf field: repeated lnrpc.MacaroonPermission permissions = 1; - */ - permissions: MacaroonPermission[]; -} -/** - * @generated from protobuf message lnrpc.ListPermissionsRequest - */ -export interface ListPermissionsRequest { -} -/** - * @generated from protobuf message lnrpc.ListPermissionsResponse - */ -export interface ListPermissionsResponse { - /** - * - * A map between all RPC method URIs and their required macaroon permissions to - * access them. - * - * @generated from protobuf field: map method_permissions = 1; - */ - methodPermissions: { - [key: string]: MacaroonPermissionList; - }; -} -/** - * @generated from protobuf message lnrpc.Failure - */ -export interface Failure { - /** - * Failure code as defined in the Lightning spec - * - * @generated from protobuf field: lnrpc.Failure.FailureCode code = 1; - */ - code: Failure_FailureCode; - /** - * An optional channel update message. - * - * @generated from protobuf field: lnrpc.ChannelUpdate channel_update = 3; - */ - channelUpdate?: ChannelUpdate; - /** - * A failure type-dependent htlc value. - * - * @generated from protobuf field: uint64 htlc_msat = 4; - */ - htlcMsat: bigint; - /** - * The sha256 sum of the onion payload. - * - * @generated from protobuf field: bytes onion_sha_256 = 5; - */ - onionSha256: Uint8Array; - /** - * A failure type-dependent cltv expiry value. - * - * @generated from protobuf field: uint32 cltv_expiry = 6; - */ - cltvExpiry: number; - /** - * A failure type-dependent flags value. - * - * @generated from protobuf field: uint32 flags = 7; - */ - flags: number; - /** - * - * The position in the path of the intermediate or final node that generated - * the failure message. Position zero is the sender node. - * - * @generated from protobuf field: uint32 failure_source_index = 8; - */ - failureSourceIndex: number; - /** - * A failure type-dependent block height. - * - * @generated from protobuf field: uint32 height = 9; - */ - height: number; -} -/** - * @generated from protobuf enum lnrpc.Failure.FailureCode - */ -export enum Failure_FailureCode { - /** - * - * 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. - * - * @generated from protobuf enum value: RESERVED = 0; - */ - RESERVED = 0, - /** - * @generated from protobuf enum value: INCORRECT_OR_UNKNOWN_PAYMENT_DETAILS = 1; - */ - INCORRECT_OR_UNKNOWN_PAYMENT_DETAILS = 1, - /** - * @generated from protobuf enum value: INCORRECT_PAYMENT_AMOUNT = 2; - */ - INCORRECT_PAYMENT_AMOUNT = 2, - /** - * @generated from protobuf enum value: FINAL_INCORRECT_CLTV_EXPIRY = 3; - */ - FINAL_INCORRECT_CLTV_EXPIRY = 3, - /** - * @generated from protobuf enum value: FINAL_INCORRECT_HTLC_AMOUNT = 4; - */ - FINAL_INCORRECT_HTLC_AMOUNT = 4, - /** - * @generated from protobuf enum value: FINAL_EXPIRY_TOO_SOON = 5; - */ - FINAL_EXPIRY_TOO_SOON = 5, - /** - * @generated from protobuf enum value: INVALID_REALM = 6; - */ - INVALID_REALM = 6, - /** - * @generated from protobuf enum value: EXPIRY_TOO_SOON = 7; - */ - EXPIRY_TOO_SOON = 7, - /** - * @generated from protobuf enum value: INVALID_ONION_VERSION = 8; - */ - INVALID_ONION_VERSION = 8, - /** - * @generated from protobuf enum value: INVALID_ONION_HMAC = 9; - */ - INVALID_ONION_HMAC = 9, - /** - * @generated from protobuf enum value: INVALID_ONION_KEY = 10; - */ - INVALID_ONION_KEY = 10, - /** - * @generated from protobuf enum value: AMOUNT_BELOW_MINIMUM = 11; - */ - AMOUNT_BELOW_MINIMUM = 11, - /** - * @generated from protobuf enum value: FEE_INSUFFICIENT = 12; - */ - FEE_INSUFFICIENT = 12, - /** - * @generated from protobuf enum value: INCORRECT_CLTV_EXPIRY = 13; - */ - INCORRECT_CLTV_EXPIRY = 13, - /** - * @generated from protobuf enum value: CHANNEL_DISABLED = 14; - */ - CHANNEL_DISABLED = 14, - /** - * @generated from protobuf enum value: TEMPORARY_CHANNEL_FAILURE = 15; - */ - TEMPORARY_CHANNEL_FAILURE = 15, - /** - * @generated from protobuf enum value: REQUIRED_NODE_FEATURE_MISSING = 16; - */ - REQUIRED_NODE_FEATURE_MISSING = 16, - /** - * @generated from protobuf enum value: REQUIRED_CHANNEL_FEATURE_MISSING = 17; - */ - REQUIRED_CHANNEL_FEATURE_MISSING = 17, - /** - * @generated from protobuf enum value: UNKNOWN_NEXT_PEER = 18; - */ - UNKNOWN_NEXT_PEER = 18, - /** - * @generated from protobuf enum value: TEMPORARY_NODE_FAILURE = 19; - */ - TEMPORARY_NODE_FAILURE = 19, - /** - * @generated from protobuf enum value: PERMANENT_NODE_FAILURE = 20; - */ - PERMANENT_NODE_FAILURE = 20, - /** - * @generated from protobuf enum value: PERMANENT_CHANNEL_FAILURE = 21; - */ - PERMANENT_CHANNEL_FAILURE = 21, - /** - * @generated from protobuf enum value: EXPIRY_TOO_FAR = 22; - */ - EXPIRY_TOO_FAR = 22, - /** - * @generated from protobuf enum value: MPP_TIMEOUT = 23; - */ - MPP_TIMEOUT = 23, - /** - * @generated from protobuf enum value: INVALID_ONION_PAYLOAD = 24; - */ - INVALID_ONION_PAYLOAD = 24, - /** - * - * An internal error occurred. - * - * @generated from protobuf enum value: INTERNAL_FAILURE = 997; - */ - INTERNAL_FAILURE = 997, - /** - * - * The error source is known, but the failure itself couldn't be decoded. - * - * @generated from protobuf enum value: UNKNOWN_FAILURE = 998; - */ - UNKNOWN_FAILURE = 998, - /** - * - * An unreadable failure result is returned if the received failure message - * cannot be decrypted. In that case the error source is unknown. - * - * @generated from protobuf enum value: UNREADABLE_FAILURE = 999; - */ - UNREADABLE_FAILURE = 999 -} -/** - * @generated from protobuf message lnrpc.ChannelUpdate - */ -export interface ChannelUpdate { - /** - * - * The signature that validates the announced data and proves the ownership - * of node id. - * - * @generated from protobuf field: bytes signature = 1; - */ - signature: Uint8Array; - /** - * - * 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. - * - * @generated from protobuf field: bytes chain_hash = 2; - */ - chainHash: Uint8Array; - /** - * - * The unique description of the funding transaction. - * - * @generated from protobuf field: uint64 chan_id = 3 [jstype = JS_STRING]; - */ - chanId: string; - /** - * - * 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. - * - * @generated from protobuf field: uint32 timestamp = 4; - */ - timestamp: number; - /** - * - * 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. - * - * @generated from protobuf field: uint32 message_flags = 10; - */ - messageFlags: number; - /** - * - * 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. - * - * @generated from protobuf field: uint32 channel_flags = 5; - */ - channelFlags: number; - /** - * - * 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. - * - * @generated from protobuf field: uint32 time_lock_delta = 6; - */ - timeLockDelta: number; - /** - * - * The minimum HTLC value which will be accepted. - * - * @generated from protobuf field: uint64 htlc_minimum_msat = 7; - */ - htlcMinimumMsat: bigint; - /** - * - * 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. - * - * @generated from protobuf field: uint32 base_fee = 8; - */ - baseFee: number; - /** - * - * The fee rate that will be charged per millionth of a satoshi. - * - * @generated from protobuf field: uint32 fee_rate = 9; - */ - feeRate: number; - /** - * - * The maximum HTLC value which will be accepted. - * - * @generated from protobuf field: uint64 htlc_maximum_msat = 11; - */ - htlcMaximumMsat: bigint; - /** - * - * 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. - * - * @generated from protobuf field: bytes extra_opaque_data = 12; - */ - extraOpaqueData: Uint8Array; -} -/** - * @generated from protobuf message lnrpc.MacaroonId - */ -export interface MacaroonId { - /** - * @generated from protobuf field: bytes nonce = 1; - */ - nonce: Uint8Array; - /** - * @generated from protobuf field: bytes storageId = 2; - */ - storageId: Uint8Array; - /** - * @generated from protobuf field: repeated lnrpc.Op ops = 3; - */ - ops: Op[]; -} -/** - * @generated from protobuf message lnrpc.Op - */ -export interface Op { - /** - * @generated from protobuf field: string entity = 1; - */ - entity: string; - /** - * @generated from protobuf field: repeated string actions = 2; - */ - actions: string[]; -} -/** - * @generated from protobuf message lnrpc.CheckMacPermRequest - */ -export interface CheckMacPermRequest { - /** - * @generated from protobuf field: bytes macaroon = 1; - */ - macaroon: Uint8Array; - /** - * @generated from protobuf field: repeated lnrpc.MacaroonPermission permissions = 2; - */ - permissions: MacaroonPermission[]; - /** - * @generated from protobuf field: string fullMethod = 3; - */ - fullMethod: string; -} -/** - * @generated from protobuf message lnrpc.CheckMacPermResponse - */ -export interface CheckMacPermResponse { - /** - * @generated from protobuf field: bool valid = 1; - */ - valid: boolean; -} -/** - * @generated from protobuf message lnrpc.RPCMiddlewareRequest - */ -export interface RPCMiddlewareRequest { - /** - * - * The unique ID of the intercepted original gRPC request. Useful for mapping - * request to response when implementing full duplex message interception. For - * streaming requests, this will be the same ID for all incoming and outgoing - * middleware intercept messages of the _same_ stream. - * - * @generated from protobuf field: uint64 request_id = 1; - */ - requestId: bigint; - /** - * - * The raw bytes of the complete macaroon as sent by the gRPC client in the - * original request. This might be empty for a request that doesn't require - * macaroons such as the wallet unlocker RPCs. - * - * @generated from protobuf field: bytes raw_macaroon = 2; - */ - rawMacaroon: Uint8Array; - /** - * - * The parsed condition of the macaroon's custom caveat for convenient access. - * This field only contains the value of the custom caveat that the handling - * middleware has registered itself for. The condition _must_ be validated for - * messages of intercept_type stream_auth and request! - * - * @generated from protobuf field: string custom_caveat_condition = 3; - */ - customCaveatCondition: string; - /** - * @generated from protobuf oneof: intercept_type - */ - interceptType: { - oneofKind: "streamAuth"; - /** - * - * Intercept stream authentication: each new streaming RPC call that is - * initiated against lnd and contains the middleware's custom macaroon - * caveat can be approved or denied based upon the macaroon in the stream - * header. This message will only be sent for streaming RPCs, unary RPCs - * must handle the macaroon authentication in the request interception to - * avoid an additional message round trip between lnd and the middleware. - * - * @generated from protobuf field: lnrpc.StreamAuth stream_auth = 4; - */ - streamAuth: StreamAuth; - } | { - oneofKind: "request"; - /** - * - * Intercept incoming gRPC client request message: all incoming messages, - * both on streaming and unary RPCs, are forwarded to the middleware for - * inspection. For unary RPC messages the middleware is also expected to - * validate the custom macaroon caveat of the request. - * - * @generated from protobuf field: lnrpc.RPCMessage request = 5; - */ - request: RPCMessage; - } | { - oneofKind: "response"; - /** - * - * Intercept outgoing gRPC response message: all outgoing messages, both on - * streaming and unary RPCs, are forwarded to the middleware for inspection - * and amendment. The response in this message is the original response as - * it was generated by the main RPC server. It can either be accepted - * (=forwarded to the client), replaced/overwritten with a new message of - * the same type, or replaced by an error message. - * - * @generated from protobuf field: lnrpc.RPCMessage response = 6; - */ - response: RPCMessage; - } | { - oneofKind: "regComplete"; - /** - * - * This is used to indicate to the client that the server has successfully - * registered the interceptor. This is only used in the very first message - * that the server sends to the client after the client sends the server - * the middleware registration message. - * - * @generated from protobuf field: bool reg_complete = 8; - */ - regComplete: boolean; - } | { - oneofKind: undefined; - }; - /** - * - * The unique message ID of this middleware intercept message. There can be - * multiple middleware intercept messages per single gRPC request (one for the - * incoming request and one for the outgoing response) or gRPC stream (one for - * each incoming message and one for each outgoing response). This message ID - * must be referenced when responding (accepting/rejecting/modifying) to an - * intercept message. - * - * @generated from protobuf field: uint64 msg_id = 7; - */ - msgId: bigint; -} -/** - * @generated from protobuf message lnrpc.StreamAuth - */ -export interface StreamAuth { - /** - * - * The full URI (in the format /./MethodName, for - * example /lnrpc.Lightning/GetInfo) of the streaming RPC method that was just - * established. - * - * @generated from protobuf field: string method_full_uri = 1; - */ - methodFullUri: string; -} -/** - * @generated from protobuf message lnrpc.RPCMessage - */ -export interface RPCMessage { - /** - * - * The full URI (in the format /./MethodName, for - * example /lnrpc.Lightning/GetInfo) of the RPC method the message was sent - * to/from. - * - * @generated from protobuf field: string method_full_uri = 1; - */ - methodFullUri: string; - /** - * - * Indicates whether the message was sent over a streaming RPC method or not. - * - * @generated from protobuf field: bool stream_rpc = 2; - */ - streamRpc: boolean; - /** - * - * The full canonical gRPC name of the message type (in the format - * .TypeName, for example lnrpc.GetInfoRequest). In case of an - * error being returned from lnd, this simply contains the string "error". - * - * @generated from protobuf field: string type_name = 3; - */ - typeName: string; - /** - * - * The full content of the gRPC message, serialized in the binary protobuf - * format. - * - * @generated from protobuf field: bytes serialized = 4; - */ - serialized: Uint8Array; - /** - * - * Indicates that the response from lnd was an error, not a gRPC response. If - * this is set to true then the type_name contains the string "error" and - * serialized contains the error string. - * - * @generated from protobuf field: bool is_error = 5; - */ - isError: boolean; -} -/** - * @generated from protobuf message lnrpc.RPCMiddlewareResponse - */ -export interface RPCMiddlewareResponse { - /** - * - * The request message ID this response refers to. Must always be set when - * giving feedback to an intercept but is ignored for the initial registration - * message. - * - * @generated from protobuf field: uint64 ref_msg_id = 1; - */ - refMsgId: bigint; - /** - * @generated from protobuf oneof: middleware_message - */ - middlewareMessage: { - oneofKind: "register"; - /** - * - * The registration message identifies the middleware that's being - * registered in lnd. The registration message must be sent immediately - * after initiating the RegisterRpcMiddleware stream, otherwise lnd will - * time out the attempt and terminate the request. NOTE: The middleware - * will only receive interception messages for requests that contain a - * macaroon with the custom caveat that the middleware declares it is - * responsible for handling in the registration message! As a security - * measure, _no_ middleware can intercept requests made with _unencumbered_ - * macaroons! - * - * @generated from protobuf field: lnrpc.MiddlewareRegistration register = 2; - */ - register: MiddlewareRegistration; - } | { - oneofKind: "feedback"; - /** - * - * The middleware received an interception request and gives feedback to - * it. The request_id indicates what message the feedback refers to. - * - * @generated from protobuf field: lnrpc.InterceptFeedback feedback = 3; - */ - feedback: InterceptFeedback; - } | { - oneofKind: undefined; - }; -} -/** - * @generated from protobuf message lnrpc.MiddlewareRegistration - */ -export interface MiddlewareRegistration { - /** - * - * The name of the middleware to register. The name should be as informative - * as possible and is logged on registration. - * - * @generated from protobuf field: string middleware_name = 1; - */ - middlewareName: string; - /** - * - * The name of the custom macaroon caveat that this middleware is responsible - * for. Only requests/responses that contain a macaroon with the registered - * custom caveat are forwarded for interception to the middleware. The - * exception being the read-only mode: All requests/responses are forwarded to - * a middleware that requests read-only access but such a middleware won't be - * allowed to _alter_ responses. As a security measure, _no_ middleware can - * change responses to requests made with _unencumbered_ macaroons! - * NOTE: Cannot be used at the same time as read_only_mode. - * - * @generated from protobuf field: string custom_macaroon_caveat_name = 2; - */ - customMacaroonCaveatName: string; - /** - * - * Instead of defining a custom macaroon caveat name a middleware can register - * itself for read-only access only. In that mode all requests/responses are - * forwarded to the middleware but the middleware isn't allowed to alter any of - * the responses. - * NOTE: Cannot be used at the same time as custom_macaroon_caveat_name. - * - * @generated from protobuf field: bool read_only_mode = 3; - */ - readOnlyMode: boolean; -} -/** - * @generated from protobuf message lnrpc.InterceptFeedback - */ -export interface InterceptFeedback { - /** - * - * The error to return to the user. If this is non-empty, the incoming gRPC - * stream/request is aborted and the error is returned to the gRPC client. If - * this value is empty, it means the middleware accepts the stream/request/ - * response and the processing of it can continue. - * - * @generated from protobuf field: string error = 1; - */ - error: string; - /** - * - * A boolean indicating that the gRPC message should be replaced/overwritten. - * This boolean is needed because in protobuf an empty message is serialized as - * a 0-length or nil byte slice and we wouldn't be able to distinguish between - * an empty replacement message and the "don't replace anything" case. - * - * @generated from protobuf field: bool replace_response = 2; - */ - replaceResponse: boolean; - /** - * - * If the replace_response field is set to true, this field must contain the - * binary serialized gRPC message in the protobuf format. - * - * @generated from protobuf field: bytes replacement_serialized = 3; - */ - replacementSerialized: Uint8Array; -} -/** - * @generated from protobuf enum lnrpc.OutputScriptType - */ -export enum OutputScriptType { - /** - * @generated from protobuf enum value: SCRIPT_TYPE_PUBKEY_HASH = 0; - */ - SCRIPT_TYPE_PUBKEY_HASH = 0, - /** - * @generated from protobuf enum value: SCRIPT_TYPE_SCRIPT_HASH = 1; - */ - SCRIPT_TYPE_SCRIPT_HASH = 1, - /** - * @generated from protobuf enum value: SCRIPT_TYPE_WITNESS_V0_PUBKEY_HASH = 2; - */ - SCRIPT_TYPE_WITNESS_V0_PUBKEY_HASH = 2, - /** - * @generated from protobuf enum value: SCRIPT_TYPE_WITNESS_V0_SCRIPT_HASH = 3; - */ - SCRIPT_TYPE_WITNESS_V0_SCRIPT_HASH = 3, - /** - * @generated from protobuf enum value: SCRIPT_TYPE_PUBKEY = 4; - */ - SCRIPT_TYPE_PUBKEY = 4, - /** - * @generated from protobuf enum value: SCRIPT_TYPE_MULTISIG = 5; - */ - SCRIPT_TYPE_MULTISIG = 5, - /** - * @generated from protobuf enum value: SCRIPT_TYPE_NULLDATA = 6; - */ - SCRIPT_TYPE_NULLDATA = 6, - /** - * @generated from protobuf enum value: SCRIPT_TYPE_NON_STANDARD = 7; - */ - SCRIPT_TYPE_NON_STANDARD = 7, - /** - * @generated from protobuf enum value: SCRIPT_TYPE_WITNESS_UNKNOWN = 8; - */ - SCRIPT_TYPE_WITNESS_UNKNOWN = 8, - /** - * @generated from protobuf enum value: SCRIPT_TYPE_WITNESS_V1_TAPROOT = 9; - */ - SCRIPT_TYPE_WITNESS_V1_TAPROOT = 9 -} -/** - * - * `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) - * - `p2tr`: Pay to taproot pubkey (`TAPROOT_PUBKEY` = 4) - * - * @generated from protobuf enum lnrpc.AddressType - */ -export enum AddressType { - /** - * @generated from protobuf enum value: WITNESS_PUBKEY_HASH = 0; - */ - WITNESS_PUBKEY_HASH = 0, - /** - * @generated from protobuf enum value: NESTED_PUBKEY_HASH = 1; - */ - NESTED_PUBKEY_HASH = 1, - /** - * @generated from protobuf enum value: UNUSED_WITNESS_PUBKEY_HASH = 2; - */ - UNUSED_WITNESS_PUBKEY_HASH = 2, - /** - * @generated from protobuf enum value: UNUSED_NESTED_PUBKEY_HASH = 3; - */ - UNUSED_NESTED_PUBKEY_HASH = 3, - /** - * @generated from protobuf enum value: TAPROOT_PUBKEY = 4; - */ - TAPROOT_PUBKEY = 4, - /** - * @generated from protobuf enum value: UNUSED_TAPROOT_PUBKEY = 5; - */ - UNUSED_TAPROOT_PUBKEY = 5 -} -/** - * @generated from protobuf enum lnrpc.CommitmentType - */ -export enum CommitmentType { - /** - * - * Returned when the commitment type isn't known or unavailable. - * - * @generated from protobuf enum value: UNKNOWN_COMMITMENT_TYPE = 0; - */ - UNKNOWN_COMMITMENT_TYPE = 0, - /** - * - * A channel using the legacy commitment format having tweaked to_remote - * keys. - * - * @generated from protobuf enum value: LEGACY = 1; - */ - LEGACY = 1, - /** - * - * 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. - * - * @generated from protobuf enum value: STATIC_REMOTE_KEY = 2; - */ - STATIC_REMOTE_KEY = 2, - /** - * - * 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. - * - * @generated from protobuf enum value: ANCHORS = 3; - */ - ANCHORS = 3, - /** - * - * A channel that uses a commitment type that builds upon the anchors - * commitment format, but in addition requires a CLTV clause to spend outputs - * paying to the channel initiator. This is intended for use on leased channels - * to guarantee that the channel initiator has no incentives to close a leased - * channel before its maturity date. - * - * @generated from protobuf enum value: SCRIPT_ENFORCED_LEASE = 4; - */ - SCRIPT_ENFORCED_LEASE = 4 -} -/** - * @generated from protobuf enum lnrpc.Initiator - */ -export enum Initiator { - /** - * @generated from protobuf enum value: INITIATOR_UNKNOWN = 0; - */ - UNKNOWN = 0, - /** - * @generated from protobuf enum value: INITIATOR_LOCAL = 1; - */ - LOCAL = 1, - /** - * @generated from protobuf enum value: INITIATOR_REMOTE = 2; - */ - REMOTE = 2, - /** - * @generated from protobuf enum value: INITIATOR_BOTH = 3; - */ - BOTH = 3 -} -/** - * @generated from protobuf enum lnrpc.ResolutionType - */ -export enum ResolutionType { - /** - * @generated from protobuf enum value: TYPE_UNKNOWN = 0; - */ - TYPE_UNKNOWN = 0, - /** - * We resolved an anchor output. - * - * @generated from protobuf enum value: ANCHOR = 1; - */ - ANCHOR = 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. - * - * @generated from protobuf enum value: INCOMING_HTLC = 2; - */ - INCOMING_HTLC = 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. - * - * @generated from protobuf enum value: OUTGOING_HTLC = 3; - */ - OUTGOING_HTLC = 3, - /** - * We force closed and need to sweep our time locked commitment output. - * - * @generated from protobuf enum value: COMMIT = 4; - */ - COMMIT = 4 -} -/** - * @generated from protobuf enum lnrpc.ResolutionOutcome - */ -export enum ResolutionOutcome { - /** - * Outcome unknown. - * - * @generated from protobuf enum value: OUTCOME_UNKNOWN = 0; - */ - OUTCOME_UNKNOWN = 0, - /** - * An output was claimed on chain. - * - * @generated from protobuf enum value: CLAIMED = 1; - */ - CLAIMED = 1, - /** - * An output was left unclaimed on chain. - * - * @generated from protobuf enum value: UNCLAIMED = 2; - */ - UNCLAIMED = 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. - * - * @generated from protobuf enum value: ABANDONED = 3; - */ - ABANDONED = 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. - * - * @generated from protobuf enum value: FIRST_STAGE = 4; - */ - FIRST_STAGE = 4, - /** - * A htlc was timed out on chain. - * - * @generated from protobuf enum value: TIMEOUT = 5; - */ - TIMEOUT = 5 -} -/** - * @generated from protobuf enum lnrpc.NodeMetricType - */ -export enum NodeMetricType { - /** - * @generated from protobuf enum value: UNKNOWN = 0; - */ - UNKNOWN = 0, - /** - * @generated from protobuf enum value: BETWEENNESS_CENTRALITY = 1; - */ - BETWEENNESS_CENTRALITY = 1 -} -/** - * @generated from protobuf enum lnrpc.InvoiceHTLCState - */ -export enum InvoiceHTLCState { - /** - * @generated from protobuf enum value: ACCEPTED = 0; - */ - ACCEPTED = 0, - /** - * @generated from protobuf enum value: SETTLED = 1; - */ - SETTLED = 1, - /** - * @generated from protobuf enum value: CANCELED = 2; - */ - CANCELED = 2 -} -/** - * @generated from protobuf enum lnrpc.PaymentFailureReason - */ -export enum PaymentFailureReason { - /** - * - * Payment isn't failed (yet). - * - * @generated from protobuf enum value: FAILURE_REASON_NONE = 0; - */ - FAILURE_REASON_NONE = 0, - /** - * - * There are more routes to try, but the payment timeout was exceeded. - * - * @generated from protobuf enum value: FAILURE_REASON_TIMEOUT = 1; - */ - FAILURE_REASON_TIMEOUT = 1, - /** - * - * All possible routes were tried and failed permanently. Or were no - * routes to the destination at all. - * - * @generated from protobuf enum value: FAILURE_REASON_NO_ROUTE = 2; - */ - FAILURE_REASON_NO_ROUTE = 2, - /** - * - * A non-recoverable error has occured. - * - * @generated from protobuf enum value: FAILURE_REASON_ERROR = 3; - */ - FAILURE_REASON_ERROR = 3, - /** - * - * Payment details incorrect (unknown hash, invalid amt or - * invalid final cltv delta) - * - * @generated from protobuf enum value: FAILURE_REASON_INCORRECT_PAYMENT_DETAILS = 4; - */ - FAILURE_REASON_INCORRECT_PAYMENT_DETAILS = 4, - /** - * - * Insufficient local balance. - * - * @generated from protobuf enum value: FAILURE_REASON_INSUFFICIENT_BALANCE = 5; - */ - FAILURE_REASON_INSUFFICIENT_BALANCE = 5 -} -/** - * @generated from protobuf enum lnrpc.FeatureBit - */ -export enum FeatureBit { - /** - * @generated from protobuf enum value: DATALOSS_PROTECT_REQ = 0; - */ - DATALOSS_PROTECT_REQ = 0, - /** - * @generated from protobuf enum value: DATALOSS_PROTECT_OPT = 1; - */ - DATALOSS_PROTECT_OPT = 1, - /** - * @generated from protobuf enum value: INITIAL_ROUING_SYNC = 3; - */ - INITIAL_ROUING_SYNC = 3, - /** - * @generated from protobuf enum value: UPFRONT_SHUTDOWN_SCRIPT_REQ = 4; - */ - UPFRONT_SHUTDOWN_SCRIPT_REQ = 4, - /** - * @generated from protobuf enum value: UPFRONT_SHUTDOWN_SCRIPT_OPT = 5; - */ - UPFRONT_SHUTDOWN_SCRIPT_OPT = 5, - /** - * @generated from protobuf enum value: GOSSIP_QUERIES_REQ = 6; - */ - GOSSIP_QUERIES_REQ = 6, - /** - * @generated from protobuf enum value: GOSSIP_QUERIES_OPT = 7; - */ - GOSSIP_QUERIES_OPT = 7, - /** - * @generated from protobuf enum value: TLV_ONION_REQ = 8; - */ - TLV_ONION_REQ = 8, - /** - * @generated from protobuf enum value: TLV_ONION_OPT = 9; - */ - TLV_ONION_OPT = 9, - /** - * @generated from protobuf enum value: EXT_GOSSIP_QUERIES_REQ = 10; - */ - EXT_GOSSIP_QUERIES_REQ = 10, - /** - * @generated from protobuf enum value: EXT_GOSSIP_QUERIES_OPT = 11; - */ - EXT_GOSSIP_QUERIES_OPT = 11, - /** - * @generated from protobuf enum value: STATIC_REMOTE_KEY_REQ = 12; - */ - STATIC_REMOTE_KEY_REQ = 12, - /** - * @generated from protobuf enum value: STATIC_REMOTE_KEY_OPT = 13; - */ - STATIC_REMOTE_KEY_OPT = 13, - /** - * @generated from protobuf enum value: PAYMENT_ADDR_REQ = 14; - */ - PAYMENT_ADDR_REQ = 14, - /** - * @generated from protobuf enum value: PAYMENT_ADDR_OPT = 15; - */ - PAYMENT_ADDR_OPT = 15, - /** - * @generated from protobuf enum value: MPP_REQ = 16; - */ - MPP_REQ = 16, - /** - * @generated from protobuf enum value: MPP_OPT = 17; - */ - MPP_OPT = 17, - /** - * @generated from protobuf enum value: WUMBO_CHANNELS_REQ = 18; - */ - WUMBO_CHANNELS_REQ = 18, - /** - * @generated from protobuf enum value: WUMBO_CHANNELS_OPT = 19; - */ - WUMBO_CHANNELS_OPT = 19, - /** - * @generated from protobuf enum value: ANCHORS_REQ = 20; - */ - ANCHORS_REQ = 20, - /** - * @generated from protobuf enum value: ANCHORS_OPT = 21; - */ - ANCHORS_OPT = 21, - /** - * @generated from protobuf enum value: ANCHORS_ZERO_FEE_HTLC_REQ = 22; - */ - ANCHORS_ZERO_FEE_HTLC_REQ = 22, - /** - * @generated from protobuf enum value: ANCHORS_ZERO_FEE_HTLC_OPT = 23; - */ - ANCHORS_ZERO_FEE_HTLC_OPT = 23, - /** - * @generated from protobuf enum value: AMP_REQ = 30; - */ - AMP_REQ = 30, - /** - * @generated from protobuf enum value: AMP_OPT = 31; - */ - AMP_OPT = 31 -} -/** - * @generated from protobuf enum lnrpc.UpdateFailure - */ -export enum UpdateFailure { - /** - * @generated from protobuf enum value: UPDATE_FAILURE_UNKNOWN = 0; - */ - UNKNOWN = 0, - /** - * @generated from protobuf enum value: UPDATE_FAILURE_PENDING = 1; - */ - PENDING = 1, - /** - * @generated from protobuf enum value: UPDATE_FAILURE_NOT_FOUND = 2; - */ - NOT_FOUND = 2, - /** - * @generated from protobuf enum value: UPDATE_FAILURE_INTERNAL_ERR = 3; - */ - INTERNAL_ERR = 3, - /** - * @generated from protobuf enum value: UPDATE_FAILURE_INVALID_PARAMETER = 4; - */ - INVALID_PARAMETER = 4 -} -// @generated message type with reflection information, may provide speed optimized methods -class LookupHtlcRequest$Type extends MessageType { - constructor() { - super("lnrpc.LookupHtlcRequest", [ - { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "htlc_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): LookupHtlcRequest { - const message = { chanId: 0n, htlcIndex: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LookupHtlcRequest): LookupHtlcRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 chan_id */ 1: - message.chanId = reader.uint64().toBigInt(); - break; - case /* uint64 htlc_index */ 2: - message.htlcIndex = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: LookupHtlcRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 chan_id = 1; */ - if (message.chanId !== 0n) - writer.tag(1, WireType.Varint).uint64(message.chanId); - /* uint64 htlc_index = 2; */ - if (message.htlcIndex !== 0n) - writer.tag(2, WireType.Varint).uint64(message.htlcIndex); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.LookupHtlcRequest - */ -export const LookupHtlcRequest = new LookupHtlcRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class LookupHtlcResponse$Type extends MessageType { - constructor() { - super("lnrpc.LookupHtlcResponse", [ - { no: 1, name: "settled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "offchain", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): LookupHtlcResponse { - const message = { settled: false, offchain: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LookupHtlcResponse): LookupHtlcResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool settled */ 1: - message.settled = reader.bool(); - break; - case /* bool offchain */ 2: - message.offchain = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: LookupHtlcResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool settled = 1; */ - if (message.settled !== false) - writer.tag(1, WireType.Varint).bool(message.settled); - /* bool offchain = 2; */ - if (message.offchain !== false) - writer.tag(2, WireType.Varint).bool(message.offchain); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.LookupHtlcResponse - */ -export const LookupHtlcResponse = new LookupHtlcResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SubscribeCustomMessagesRequest$Type extends MessageType { - constructor() { - super("lnrpc.SubscribeCustomMessagesRequest", []); - } - create(value?: PartialMessage): SubscribeCustomMessagesRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SubscribeCustomMessagesRequest): SubscribeCustomMessagesRequest { - return target ?? this.create(); - } - internalBinaryWrite(message: SubscribeCustomMessagesRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SubscribeCustomMessagesRequest - */ -export const SubscribeCustomMessagesRequest = new SubscribeCustomMessagesRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class CustomMessage$Type extends MessageType { - constructor() { - super("lnrpc.CustomMessage", [ - { no: 1, name: "peer", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "type", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 3, name: "data", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): CustomMessage { - const message = { peer: new Uint8Array(0), type: 0, data: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CustomMessage): CustomMessage { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes peer */ 1: - message.peer = reader.bytes(); - break; - case /* uint32 type */ 2: - message.type = reader.uint32(); - break; - case /* bytes data */ 3: - message.data = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: CustomMessage, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes peer = 1; */ - if (message.peer.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.peer); - /* uint32 type = 2; */ - if (message.type !== 0) - writer.tag(2, WireType.Varint).uint32(message.type); - /* bytes data = 3; */ - if (message.data.length) - writer.tag(3, WireType.LengthDelimited).bytes(message.data); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.CustomMessage - */ -export const CustomMessage = new CustomMessage$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendCustomMessageRequest$Type extends MessageType { - constructor() { - super("lnrpc.SendCustomMessageRequest", [ - { no: 1, name: "peer", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "type", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 3, name: "data", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): SendCustomMessageRequest { - const message = { peer: new Uint8Array(0), type: 0, data: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendCustomMessageRequest): SendCustomMessageRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes peer */ 1: - message.peer = reader.bytes(); - break; - case /* uint32 type */ 2: - message.type = reader.uint32(); - break; - case /* bytes data */ 3: - message.data = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: SendCustomMessageRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes peer = 1; */ - if (message.peer.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.peer); - /* uint32 type = 2; */ - if (message.type !== 0) - writer.tag(2, WireType.Varint).uint32(message.type); - /* bytes data = 3; */ - if (message.data.length) - writer.tag(3, WireType.LengthDelimited).bytes(message.data); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SendCustomMessageRequest - */ -export const SendCustomMessageRequest = new SendCustomMessageRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendCustomMessageResponse$Type extends MessageType { - constructor() { - super("lnrpc.SendCustomMessageResponse", []); - } - create(value?: PartialMessage): SendCustomMessageResponse { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendCustomMessageResponse): SendCustomMessageResponse { - return target ?? this.create(); - } - internalBinaryWrite(message: SendCustomMessageResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SendCustomMessageResponse - */ -export const SendCustomMessageResponse = new SendCustomMessageResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Utxo$Type extends MessageType { - constructor() { - super("lnrpc.Utxo", [ - { no: 1, name: "address_type", kind: "enum", T: () => ["lnrpc.AddressType", AddressType] }, - { no: 2, name: "address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "amount_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "pk_script", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 5, name: "outpoint", kind: "message", T: () => OutPoint }, - { no: 6, name: "confirmations", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): Utxo { - const message = { addressType: 0, address: "", amountSat: 0n, pkScript: "", confirmations: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Utxo): Utxo { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.AddressType address_type */ 1: - message.addressType = reader.int32(); - break; - case /* string address */ 2: - message.address = reader.string(); - break; - case /* int64 amount_sat */ 3: - message.amountSat = reader.int64().toBigInt(); - break; - case /* string pk_script */ 4: - message.pkScript = reader.string(); - break; - case /* lnrpc.OutPoint outpoint */ 5: - message.outpoint = OutPoint.internalBinaryRead(reader, reader.uint32(), options, message.outpoint); - break; - case /* int64 confirmations */ 6: - message.confirmations = reader.int64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: Utxo, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.AddressType address_type = 1; */ - if (message.addressType !== 0) - writer.tag(1, WireType.Varint).int32(message.addressType); - /* string address = 2; */ - if (message.address !== "") - writer.tag(2, WireType.LengthDelimited).string(message.address); - /* int64 amount_sat = 3; */ - if (message.amountSat !== 0n) - writer.tag(3, WireType.Varint).int64(message.amountSat); - /* string pk_script = 4; */ - if (message.pkScript !== "") - writer.tag(4, WireType.LengthDelimited).string(message.pkScript); - /* lnrpc.OutPoint outpoint = 5; */ - if (message.outpoint) - OutPoint.internalBinaryWrite(message.outpoint, writer.tag(5, WireType.LengthDelimited).fork(), options).join(); - /* int64 confirmations = 6; */ - if (message.confirmations !== 0n) - writer.tag(6, WireType.Varint).int64(message.confirmations); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Utxo - */ -export const Utxo = new Utxo$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class OutputDetail$Type extends MessageType { - constructor() { - super("lnrpc.OutputDetail", [ - { no: 1, name: "output_type", kind: "enum", T: () => ["lnrpc.OutputScriptType", OutputScriptType] }, - { no: 2, name: "address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "pk_script", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "output_index", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "amount", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "is_our_address", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): OutputDetail { - const message = { outputType: 0, address: "", pkScript: "", outputIndex: 0n, amount: 0n, isOurAddress: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: OutputDetail): OutputDetail { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.OutputScriptType output_type */ 1: - message.outputType = reader.int32(); - break; - case /* string address */ 2: - message.address = reader.string(); - break; - case /* string pk_script */ 3: - message.pkScript = reader.string(); - break; - case /* int64 output_index */ 4: - message.outputIndex = reader.int64().toBigInt(); - break; - case /* int64 amount */ 5: - message.amount = reader.int64().toBigInt(); - break; - case /* bool is_our_address */ 6: - message.isOurAddress = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: OutputDetail, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.OutputScriptType output_type = 1; */ - if (message.outputType !== 0) - writer.tag(1, WireType.Varint).int32(message.outputType); - /* string address = 2; */ - if (message.address !== "") - writer.tag(2, WireType.LengthDelimited).string(message.address); - /* string pk_script = 3; */ - if (message.pkScript !== "") - writer.tag(3, WireType.LengthDelimited).string(message.pkScript); - /* int64 output_index = 4; */ - if (message.outputIndex !== 0n) - writer.tag(4, WireType.Varint).int64(message.outputIndex); - /* int64 amount = 5; */ - if (message.amount !== 0n) - writer.tag(5, WireType.Varint).int64(message.amount); - /* bool is_our_address = 6; */ - if (message.isOurAddress !== false) - writer.tag(6, WireType.Varint).bool(message.isOurAddress); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.OutputDetail - */ -export const OutputDetail = new OutputDetail$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Transaction$Type extends MessageType { - constructor() { - super("lnrpc.Transaction", [ - { no: 1, name: "tx_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "amount", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "num_confirmations", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 4, name: "block_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 5, name: "block_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 6, name: "time_stamp", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 7, name: "total_fees", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 8, name: "dest_addresses", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ }, - { no: 11, name: "output_details", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => OutputDetail }, - { no: 9, name: "raw_tx_hex", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 10, name: "label", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 12, name: "previous_outpoints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => PreviousOutPoint } - ]); - } - create(value?: PartialMessage): Transaction { - const message = { txHash: "", amount: 0n, numConfirmations: 0, blockHash: "", blockHeight: 0, timeStamp: 0n, totalFees: 0n, destAddresses: [], outputDetails: [], rawTxHex: "", label: "", previousOutpoints: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Transaction): Transaction { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string tx_hash */ 1: - message.txHash = reader.string(); - break; - case /* int64 amount */ 2: - message.amount = reader.int64().toBigInt(); - break; - case /* int32 num_confirmations */ 3: - message.numConfirmations = reader.int32(); - break; - case /* string block_hash */ 4: - message.blockHash = reader.string(); - break; - case /* int32 block_height */ 5: - message.blockHeight = reader.int32(); - break; - case /* int64 time_stamp */ 6: - message.timeStamp = reader.int64().toBigInt(); - break; - case /* int64 total_fees */ 7: - message.totalFees = reader.int64().toBigInt(); - break; - case /* repeated string dest_addresses = 8 [deprecated = true];*/ 8: - message.destAddresses.push(reader.string()); - break; - case /* repeated lnrpc.OutputDetail output_details */ 11: - message.outputDetails.push(OutputDetail.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* string raw_tx_hex */ 9: - message.rawTxHex = reader.string(); - break; - case /* string label */ 10: - message.label = reader.string(); - break; - case /* repeated lnrpc.PreviousOutPoint previous_outpoints */ 12: - message.previousOutpoints.push(PreviousOutPoint.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: Transaction, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string tx_hash = 1; */ - if (message.txHash !== "") - writer.tag(1, WireType.LengthDelimited).string(message.txHash); - /* int64 amount = 2; */ - if (message.amount !== 0n) - writer.tag(2, WireType.Varint).int64(message.amount); - /* int32 num_confirmations = 3; */ - if (message.numConfirmations !== 0) - writer.tag(3, WireType.Varint).int32(message.numConfirmations); - /* string block_hash = 4; */ - if (message.blockHash !== "") - writer.tag(4, WireType.LengthDelimited).string(message.blockHash); - /* int32 block_height = 5; */ - if (message.blockHeight !== 0) - writer.tag(5, WireType.Varint).int32(message.blockHeight); - /* int64 time_stamp = 6; */ - if (message.timeStamp !== 0n) - writer.tag(6, WireType.Varint).int64(message.timeStamp); - /* int64 total_fees = 7; */ - if (message.totalFees !== 0n) - writer.tag(7, WireType.Varint).int64(message.totalFees); - /* repeated string dest_addresses = 8 [deprecated = true]; */ - for (let i = 0; i < message.destAddresses.length; i++) - writer.tag(8, WireType.LengthDelimited).string(message.destAddresses[i]); - /* repeated lnrpc.OutputDetail output_details = 11; */ - for (let i = 0; i < message.outputDetails.length; i++) - OutputDetail.internalBinaryWrite(message.outputDetails[i], writer.tag(11, WireType.LengthDelimited).fork(), options).join(); - /* string raw_tx_hex = 9; */ - if (message.rawTxHex !== "") - writer.tag(9, WireType.LengthDelimited).string(message.rawTxHex); - /* string label = 10; */ - if (message.label !== "") - writer.tag(10, WireType.LengthDelimited).string(message.label); - /* repeated lnrpc.PreviousOutPoint previous_outpoints = 12; */ - for (let i = 0; i < message.previousOutpoints.length; i++) - PreviousOutPoint.internalBinaryWrite(message.previousOutpoints[i], writer.tag(12, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Transaction - */ -export const Transaction = new Transaction$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class GetTransactionsRequest$Type extends MessageType { - constructor() { - super("lnrpc.GetTransactionsRequest", [ - { no: 1, name: "start_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 2, name: "end_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 3, name: "account", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): GetTransactionsRequest { - const message = { startHeight: 0, endHeight: 0, account: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetTransactionsRequest): GetTransactionsRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int32 start_height */ 1: - message.startHeight = reader.int32(); - break; - case /* int32 end_height */ 2: - message.endHeight = reader.int32(); - break; - case /* string account */ 3: - message.account = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: GetTransactionsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* int32 start_height = 1; */ - if (message.startHeight !== 0) - writer.tag(1, WireType.Varint).int32(message.startHeight); - /* int32 end_height = 2; */ - if (message.endHeight !== 0) - writer.tag(2, WireType.Varint).int32(message.endHeight); - /* string account = 3; */ - if (message.account !== "") - writer.tag(3, WireType.LengthDelimited).string(message.account); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.GetTransactionsRequest - */ -export const GetTransactionsRequest = new GetTransactionsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class TransactionDetails$Type extends MessageType { - constructor() { - super("lnrpc.TransactionDetails", [ - { no: 1, name: "transactions", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Transaction } - ]); - } - create(value?: PartialMessage): TransactionDetails { - const message = { transactions: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TransactionDetails): TransactionDetails { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.Transaction transactions */ 1: - message.transactions.push(Transaction.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: TransactionDetails, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.Transaction transactions = 1; */ - for (let i = 0; i < message.transactions.length; i++) - Transaction.internalBinaryWrite(message.transactions[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.TransactionDetails - */ -export const TransactionDetails = new TransactionDetails$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FeeLimit$Type extends MessageType { - constructor() { - super("lnrpc.FeeLimit", [ - { no: 1, name: "fixed", kind: "scalar", oneof: "limit", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "fixed_msat", kind: "scalar", oneof: "limit", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "percent", kind: "scalar", oneof: "limit", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): FeeLimit { - const message = { limit: { oneofKind: undefined } }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FeeLimit): FeeLimit { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 fixed */ 1: - message.limit = { - oneofKind: "fixed", - fixed: reader.int64().toBigInt() - }; - break; - case /* int64 fixed_msat */ 3: - message.limit = { - oneofKind: "fixedMsat", - fixedMsat: reader.int64().toBigInt() - }; - break; - case /* int64 percent */ 2: - message.limit = { - oneofKind: "percent", - percent: reader.int64().toBigInt() - }; - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: FeeLimit, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* int64 fixed = 1; */ - if (message.limit.oneofKind === "fixed") - writer.tag(1, WireType.Varint).int64(message.limit.fixed); - /* int64 fixed_msat = 3; */ - if (message.limit.oneofKind === "fixedMsat") - writer.tag(3, WireType.Varint).int64(message.limit.fixedMsat); - /* int64 percent = 2; */ - if (message.limit.oneofKind === "percent") - writer.tag(2, WireType.Varint).int64(message.limit.percent); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FeeLimit - */ -export const FeeLimit = new FeeLimit$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendRequest$Type extends MessageType { - constructor() { - super("lnrpc.SendRequest", [ - { no: 1, name: "dest", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "dest_string", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "amt", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 12, name: "amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 5, name: "payment_hash_string", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 6, name: "payment_request", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 7, name: "final_cltv_delta", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 8, name: "fee_limit", kind: "message", T: () => FeeLimit }, - { no: 9, name: "outgoing_chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 13, name: "last_hop_pubkey", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 10, name: "cltv_limit", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 11, name: "dest_custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } }, - { no: 14, name: "allow_self_payment", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 15, name: "dest_features", kind: "enum", repeat: 1 /*RepeatType.PACKED*/, T: () => ["lnrpc.FeatureBit", FeatureBit] }, - { no: 16, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): SendRequest { - const message = { dest: new Uint8Array(0), destString: "", amt: 0n, amtMsat: 0n, paymentHash: new Uint8Array(0), paymentHashString: "", paymentRequest: "", finalCltvDelta: 0, outgoingChanId: "0", lastHopPubkey: new Uint8Array(0), cltvLimit: 0, destCustomRecords: {}, allowSelfPayment: false, destFeatures: [], paymentAddr: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendRequest): SendRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes dest */ 1: - message.dest = reader.bytes(); - break; - case /* string dest_string = 2 [deprecated = true];*/ 2: - message.destString = reader.string(); - break; - case /* int64 amt */ 3: - message.amt = reader.int64().toBigInt(); - break; - case /* int64 amt_msat */ 12: - message.amtMsat = reader.int64().toBigInt(); - break; - case /* bytes payment_hash */ 4: - message.paymentHash = reader.bytes(); - break; - case /* string payment_hash_string = 5 [deprecated = true];*/ 5: - message.paymentHashString = reader.string(); - break; - case /* string payment_request */ 6: - message.paymentRequest = reader.string(); - break; - case /* int32 final_cltv_delta */ 7: - message.finalCltvDelta = reader.int32(); - break; - case /* lnrpc.FeeLimit fee_limit */ 8: - message.feeLimit = FeeLimit.internalBinaryRead(reader, reader.uint32(), options, message.feeLimit); - break; - case /* uint64 outgoing_chan_id = 9 [jstype = JS_STRING];*/ 9: - message.outgoingChanId = reader.uint64().toString(); - break; - case /* bytes last_hop_pubkey */ 13: - message.lastHopPubkey = reader.bytes(); - break; - case /* uint32 cltv_limit */ 10: - message.cltvLimit = reader.uint32(); - break; - case /* map dest_custom_records */ 11: - this.binaryReadMap11(message.destCustomRecords, reader, options); - break; - case /* bool allow_self_payment */ 14: - message.allowSelfPayment = reader.bool(); - break; - case /* repeated lnrpc.FeatureBit dest_features */ 15: - if (wireType === WireType.LengthDelimited) - for (let e = reader.int32() + reader.pos; reader.pos < e;) - message.destFeatures.push(reader.int32()); - else - message.destFeatures.push(reader.int32()); - break; - case /* bytes payment_addr */ 16: - message.paymentAddr = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap11(map: SendRequest["destCustomRecords"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof SendRequest["destCustomRecords"] | undefined, val: SendRequest["destCustomRecords"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint64().toString(); - break; - case 2: - val = reader.bytes(); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.SendRequest.dest_custom_records"); - } - } - map[key ?? "0"] = val ?? new Uint8Array(0); - } - internalBinaryWrite(message: SendRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes dest = 1; */ - if (message.dest.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.dest); - /* string dest_string = 2 [deprecated = true]; */ - if (message.destString !== "") - writer.tag(2, WireType.LengthDelimited).string(message.destString); - /* int64 amt = 3; */ - if (message.amt !== 0n) - writer.tag(3, WireType.Varint).int64(message.amt); - /* int64 amt_msat = 12; */ - if (message.amtMsat !== 0n) - writer.tag(12, WireType.Varint).int64(message.amtMsat); - /* bytes payment_hash = 4; */ - if (message.paymentHash.length) - writer.tag(4, WireType.LengthDelimited).bytes(message.paymentHash); - /* string payment_hash_string = 5 [deprecated = true]; */ - if (message.paymentHashString !== "") - writer.tag(5, WireType.LengthDelimited).string(message.paymentHashString); - /* string payment_request = 6; */ - if (message.paymentRequest !== "") - writer.tag(6, WireType.LengthDelimited).string(message.paymentRequest); - /* int32 final_cltv_delta = 7; */ - if (message.finalCltvDelta !== 0) - writer.tag(7, WireType.Varint).int32(message.finalCltvDelta); - /* lnrpc.FeeLimit fee_limit = 8; */ - if (message.feeLimit) - FeeLimit.internalBinaryWrite(message.feeLimit, writer.tag(8, WireType.LengthDelimited).fork(), options).join(); - /* uint64 outgoing_chan_id = 9 [jstype = JS_STRING]; */ - if (message.outgoingChanId !== "0") - writer.tag(9, WireType.Varint).uint64(message.outgoingChanId); - /* bytes last_hop_pubkey = 13; */ - if (message.lastHopPubkey.length) - writer.tag(13, WireType.LengthDelimited).bytes(message.lastHopPubkey); - /* uint32 cltv_limit = 10; */ - if (message.cltvLimit !== 0) - writer.tag(10, WireType.Varint).uint32(message.cltvLimit); - /* map dest_custom_records = 11; */ - for (let k of Object.keys(message.destCustomRecords)) - writer.tag(11, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint64(k).tag(2, WireType.LengthDelimited).bytes(message.destCustomRecords[k]).join(); - /* bool allow_self_payment = 14; */ - if (message.allowSelfPayment !== false) - writer.tag(14, WireType.Varint).bool(message.allowSelfPayment); - /* repeated lnrpc.FeatureBit dest_features = 15; */ - if (message.destFeatures.length) { - writer.tag(15, WireType.LengthDelimited).fork(); - for (let i = 0; i < message.destFeatures.length; i++) - writer.int32(message.destFeatures[i]); - writer.join(); - } - /* bytes payment_addr = 16; */ - if (message.paymentAddr.length) - writer.tag(16, WireType.LengthDelimited).bytes(message.paymentAddr); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SendRequest - */ -export const SendRequest = new SendRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendResponse$Type extends MessageType { - constructor() { - super("lnrpc.SendResponse", [ - { no: 1, name: "payment_error", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "payment_preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "payment_route", kind: "message", T: () => Route }, - { no: 4, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): SendResponse { - const message = { paymentError: "", paymentPreimage: new Uint8Array(0), paymentHash: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendResponse): SendResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string payment_error */ 1: - message.paymentError = reader.string(); - break; - case /* bytes payment_preimage */ 2: - message.paymentPreimage = reader.bytes(); - break; - case /* lnrpc.Route payment_route */ 3: - message.paymentRoute = Route.internalBinaryRead(reader, reader.uint32(), options, message.paymentRoute); - break; - case /* bytes payment_hash */ 4: - message.paymentHash = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: SendResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string payment_error = 1; */ - if (message.paymentError !== "") - writer.tag(1, WireType.LengthDelimited).string(message.paymentError); - /* bytes payment_preimage = 2; */ - if (message.paymentPreimage.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.paymentPreimage); - /* lnrpc.Route payment_route = 3; */ - if (message.paymentRoute) - Route.internalBinaryWrite(message.paymentRoute, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); - /* bytes payment_hash = 4; */ - if (message.paymentHash.length) - writer.tag(4, WireType.LengthDelimited).bytes(message.paymentHash); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SendResponse - */ -export const SendResponse = new SendResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendToRouteRequest$Type extends MessageType { - constructor() { - super("lnrpc.SendToRouteRequest", [ - { no: 1, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "payment_hash_string", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "route", kind: "message", T: () => Route } - ]); - } - create(value?: PartialMessage): SendToRouteRequest { - const message = { paymentHash: new Uint8Array(0), paymentHashString: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendToRouteRequest): SendToRouteRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes payment_hash */ 1: - message.paymentHash = reader.bytes(); - break; - case /* string payment_hash_string = 2 [deprecated = true];*/ 2: - message.paymentHashString = reader.string(); - break; - case /* lnrpc.Route route */ 4: - message.route = Route.internalBinaryRead(reader, reader.uint32(), options, message.route); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: SendToRouteRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes payment_hash = 1; */ - if (message.paymentHash.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.paymentHash); - /* string payment_hash_string = 2 [deprecated = true]; */ - if (message.paymentHashString !== "") - writer.tag(2, WireType.LengthDelimited).string(message.paymentHashString); - /* lnrpc.Route route = 4; */ - if (message.route) - Route.internalBinaryWrite(message.route, writer.tag(4, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SendToRouteRequest - */ -export const SendToRouteRequest = new SendToRouteRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelAcceptRequest$Type extends MessageType { - constructor() { - super("lnrpc.ChannelAcceptRequest", [ - { no: 1, name: "node_pubkey", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "chain_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 4, name: "funding_amt", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "push_amt", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "dust_limit", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 7, name: "max_value_in_flight", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 8, name: "channel_reserve", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 9, name: "min_htlc", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 10, name: "fee_per_kw", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 11, name: "csv_delay", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 12, name: "max_accepted_htlcs", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 13, name: "channel_flags", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 14, name: "commitment_type", kind: "enum", T: () => ["lnrpc.CommitmentType", CommitmentType] }, - { no: 15, name: "wants_zero_conf", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 16, name: "wants_scid_alias", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): ChannelAcceptRequest { - const message = { nodePubkey: new Uint8Array(0), chainHash: new Uint8Array(0), pendingChanId: new Uint8Array(0), fundingAmt: 0n, pushAmt: 0n, dustLimit: 0n, maxValueInFlight: 0n, channelReserve: 0n, minHtlc: 0n, feePerKw: 0n, csvDelay: 0, maxAcceptedHtlcs: 0, channelFlags: 0, commitmentType: 0, wantsZeroConf: false, wantsScidAlias: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelAcceptRequest): ChannelAcceptRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes node_pubkey */ 1: - message.nodePubkey = reader.bytes(); - break; - case /* bytes chain_hash */ 2: - message.chainHash = reader.bytes(); - break; - case /* bytes pending_chan_id */ 3: - message.pendingChanId = reader.bytes(); - break; - case /* uint64 funding_amt */ 4: - message.fundingAmt = reader.uint64().toBigInt(); - break; - case /* uint64 push_amt */ 5: - message.pushAmt = reader.uint64().toBigInt(); - break; - case /* uint64 dust_limit */ 6: - message.dustLimit = reader.uint64().toBigInt(); - break; - case /* uint64 max_value_in_flight */ 7: - message.maxValueInFlight = reader.uint64().toBigInt(); - break; - case /* uint64 channel_reserve */ 8: - message.channelReserve = reader.uint64().toBigInt(); - break; - case /* uint64 min_htlc */ 9: - message.minHtlc = reader.uint64().toBigInt(); - break; - case /* uint64 fee_per_kw */ 10: - message.feePerKw = reader.uint64().toBigInt(); - break; - case /* uint32 csv_delay */ 11: - message.csvDelay = reader.uint32(); - break; - case /* uint32 max_accepted_htlcs */ 12: - message.maxAcceptedHtlcs = reader.uint32(); - break; - case /* uint32 channel_flags */ 13: - message.channelFlags = reader.uint32(); - break; - case /* lnrpc.CommitmentType commitment_type */ 14: - message.commitmentType = reader.int32(); - break; - case /* bool wants_zero_conf */ 15: - message.wantsZeroConf = reader.bool(); - break; - case /* bool wants_scid_alias */ 16: - message.wantsScidAlias = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChannelAcceptRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes node_pubkey = 1; */ - if (message.nodePubkey.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.nodePubkey); - /* bytes chain_hash = 2; */ - if (message.chainHash.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.chainHash); - /* bytes pending_chan_id = 3; */ - if (message.pendingChanId.length) - writer.tag(3, WireType.LengthDelimited).bytes(message.pendingChanId); - /* uint64 funding_amt = 4; */ - if (message.fundingAmt !== 0n) - writer.tag(4, WireType.Varint).uint64(message.fundingAmt); - /* uint64 push_amt = 5; */ - if (message.pushAmt !== 0n) - writer.tag(5, WireType.Varint).uint64(message.pushAmt); - /* uint64 dust_limit = 6; */ - if (message.dustLimit !== 0n) - writer.tag(6, WireType.Varint).uint64(message.dustLimit); - /* uint64 max_value_in_flight = 7; */ - if (message.maxValueInFlight !== 0n) - writer.tag(7, WireType.Varint).uint64(message.maxValueInFlight); - /* uint64 channel_reserve = 8; */ - if (message.channelReserve !== 0n) - writer.tag(8, WireType.Varint).uint64(message.channelReserve); - /* uint64 min_htlc = 9; */ - if (message.minHtlc !== 0n) - writer.tag(9, WireType.Varint).uint64(message.minHtlc); - /* uint64 fee_per_kw = 10; */ - if (message.feePerKw !== 0n) - writer.tag(10, WireType.Varint).uint64(message.feePerKw); - /* uint32 csv_delay = 11; */ - if (message.csvDelay !== 0) - writer.tag(11, WireType.Varint).uint32(message.csvDelay); - /* uint32 max_accepted_htlcs = 12; */ - if (message.maxAcceptedHtlcs !== 0) - writer.tag(12, WireType.Varint).uint32(message.maxAcceptedHtlcs); - /* uint32 channel_flags = 13; */ - if (message.channelFlags !== 0) - writer.tag(13, WireType.Varint).uint32(message.channelFlags); - /* lnrpc.CommitmentType commitment_type = 14; */ - if (message.commitmentType !== 0) - writer.tag(14, WireType.Varint).int32(message.commitmentType); - /* bool wants_zero_conf = 15; */ - if (message.wantsZeroConf !== false) - writer.tag(15, WireType.Varint).bool(message.wantsZeroConf); - /* bool wants_scid_alias = 16; */ - if (message.wantsScidAlias !== false) - writer.tag(16, WireType.Varint).bool(message.wantsScidAlias); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelAcceptRequest - */ -export const ChannelAcceptRequest = new ChannelAcceptRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelAcceptResponse$Type extends MessageType { - constructor() { - super("lnrpc.ChannelAcceptResponse", [ - { no: 1, name: "accept", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "error", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "upfront_shutdown", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 5, name: "csv_delay", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 6, name: "reserve_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 7, name: "in_flight_max_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 8, name: "max_htlc_count", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 9, name: "min_htlc_in", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 10, name: "min_accept_depth", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 11, name: "zero_conf", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): ChannelAcceptResponse { - const message = { accept: false, pendingChanId: new Uint8Array(0), error: "", upfrontShutdown: "", csvDelay: 0, reserveSat: 0n, inFlightMaxMsat: 0n, maxHtlcCount: 0, minHtlcIn: 0n, minAcceptDepth: 0, zeroConf: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelAcceptResponse): ChannelAcceptResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool accept */ 1: - message.accept = reader.bool(); - break; - case /* bytes pending_chan_id */ 2: - message.pendingChanId = reader.bytes(); - break; - case /* string error */ 3: - message.error = reader.string(); - break; - case /* string upfront_shutdown */ 4: - message.upfrontShutdown = reader.string(); - break; - case /* uint32 csv_delay */ 5: - message.csvDelay = reader.uint32(); - break; - case /* uint64 reserve_sat */ 6: - message.reserveSat = reader.uint64().toBigInt(); - break; - case /* uint64 in_flight_max_msat */ 7: - message.inFlightMaxMsat = reader.uint64().toBigInt(); - break; - case /* uint32 max_htlc_count */ 8: - message.maxHtlcCount = reader.uint32(); - break; - case /* uint64 min_htlc_in */ 9: - message.minHtlcIn = reader.uint64().toBigInt(); - break; - case /* uint32 min_accept_depth */ 10: - message.minAcceptDepth = reader.uint32(); - break; - case /* bool zero_conf */ 11: - message.zeroConf = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChannelAcceptResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool accept = 1; */ - if (message.accept !== false) - writer.tag(1, WireType.Varint).bool(message.accept); - /* bytes pending_chan_id = 2; */ - if (message.pendingChanId.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.pendingChanId); - /* string error = 3; */ - if (message.error !== "") - writer.tag(3, WireType.LengthDelimited).string(message.error); - /* string upfront_shutdown = 4; */ - if (message.upfrontShutdown !== "") - writer.tag(4, WireType.LengthDelimited).string(message.upfrontShutdown); - /* uint32 csv_delay = 5; */ - if (message.csvDelay !== 0) - writer.tag(5, WireType.Varint).uint32(message.csvDelay); - /* uint64 reserve_sat = 6; */ - if (message.reserveSat !== 0n) - writer.tag(6, WireType.Varint).uint64(message.reserveSat); - /* uint64 in_flight_max_msat = 7; */ - if (message.inFlightMaxMsat !== 0n) - writer.tag(7, WireType.Varint).uint64(message.inFlightMaxMsat); - /* uint32 max_htlc_count = 8; */ - if (message.maxHtlcCount !== 0) - writer.tag(8, WireType.Varint).uint32(message.maxHtlcCount); - /* uint64 min_htlc_in = 9; */ - if (message.minHtlcIn !== 0n) - writer.tag(9, WireType.Varint).uint64(message.minHtlcIn); - /* uint32 min_accept_depth = 10; */ - if (message.minAcceptDepth !== 0) - writer.tag(10, WireType.Varint).uint32(message.minAcceptDepth); - /* bool zero_conf = 11; */ - if (message.zeroConf !== false) - writer.tag(11, WireType.Varint).bool(message.zeroConf); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelAcceptResponse - */ -export const ChannelAcceptResponse = new ChannelAcceptResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelPoint$Type extends MessageType { - constructor() { - super("lnrpc.ChannelPoint", [ - { no: 1, name: "funding_txid_bytes", kind: "scalar", oneof: "fundingTxid", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "funding_txid_str", kind: "scalar", oneof: "fundingTxid", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "output_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value?: PartialMessage): ChannelPoint { - const message = { fundingTxid: { oneofKind: undefined }, outputIndex: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelPoint): ChannelPoint { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes funding_txid_bytes */ 1: - message.fundingTxid = { - oneofKind: "fundingTxidBytes", - fundingTxidBytes: reader.bytes() - }; - break; - case /* string funding_txid_str */ 2: - message.fundingTxid = { - oneofKind: "fundingTxidStr", - fundingTxidStr: reader.string() - }; - break; - case /* uint32 output_index */ 3: - message.outputIndex = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChannelPoint, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes funding_txid_bytes = 1; */ - if (message.fundingTxid.oneofKind === "fundingTxidBytes") - writer.tag(1, WireType.LengthDelimited).bytes(message.fundingTxid.fundingTxidBytes); - /* string funding_txid_str = 2; */ - if (message.fundingTxid.oneofKind === "fundingTxidStr") - writer.tag(2, WireType.LengthDelimited).string(message.fundingTxid.fundingTxidStr); - /* uint32 output_index = 3; */ - if (message.outputIndex !== 0) - writer.tag(3, WireType.Varint).uint32(message.outputIndex); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelPoint - */ -export const ChannelPoint = new ChannelPoint$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class OutPoint$Type extends MessageType { - constructor() { - super("lnrpc.OutPoint", [ - { no: 1, name: "txid_bytes", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "txid_str", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "output_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value?: PartialMessage): OutPoint { - const message = { txidBytes: new Uint8Array(0), txidStr: "", outputIndex: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: OutPoint): OutPoint { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes txid_bytes */ 1: - message.txidBytes = reader.bytes(); - break; - case /* string txid_str */ 2: - message.txidStr = reader.string(); - break; - case /* uint32 output_index */ 3: - message.outputIndex = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: OutPoint, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes txid_bytes = 1; */ - if (message.txidBytes.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.txidBytes); - /* string txid_str = 2; */ - if (message.txidStr !== "") - writer.tag(2, WireType.LengthDelimited).string(message.txidStr); - /* uint32 output_index = 3; */ - if (message.outputIndex !== 0) - writer.tag(3, WireType.Varint).uint32(message.outputIndex); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.OutPoint - */ -export const OutPoint = new OutPoint$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PreviousOutPoint$Type extends MessageType { - constructor() { - super("lnrpc.PreviousOutPoint", [ - { no: 1, name: "outpoint", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "is_our_output", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): PreviousOutPoint { - const message = { outpoint: "", isOurOutput: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PreviousOutPoint): PreviousOutPoint { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string outpoint */ 1: - message.outpoint = reader.string(); - break; - case /* bool is_our_output */ 2: - message.isOurOutput = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PreviousOutPoint, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string outpoint = 1; */ - if (message.outpoint !== "") - writer.tag(1, WireType.LengthDelimited).string(message.outpoint); - /* bool is_our_output = 2; */ - if (message.isOurOutput !== false) - writer.tag(2, WireType.Varint).bool(message.isOurOutput); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PreviousOutPoint - */ -export const PreviousOutPoint = new PreviousOutPoint$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class LightningAddress$Type extends MessageType { - constructor() { - super("lnrpc.LightningAddress", [ - { no: 1, name: "pubkey", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "host", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): LightningAddress { - const message = { pubkey: "", host: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LightningAddress): LightningAddress { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string pubkey */ 1: - message.pubkey = reader.string(); - break; - case /* string host */ 2: - message.host = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: LightningAddress, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string pubkey = 1; */ - if (message.pubkey !== "") - writer.tag(1, WireType.LengthDelimited).string(message.pubkey); - /* string host = 2; */ - if (message.host !== "") - writer.tag(2, WireType.LengthDelimited).string(message.host); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.LightningAddress - */ -export const LightningAddress = new LightningAddress$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class EstimateFeeRequest$Type extends MessageType { - constructor() { - super("lnrpc.EstimateFeeRequest", [ - { no: 1, name: "AddrToAmount", kind: "map", jsonName: "AddrToAmount", K: 9 /*ScalarType.STRING*/, V: { kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } }, - { no: 2, name: "target_conf", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 3, name: "min_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 4, name: "spend_unconfirmed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): EstimateFeeRequest { - const message = { addrToAmount: {}, targetConf: 0, minConfs: 0, spendUnconfirmed: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: EstimateFeeRequest): EstimateFeeRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* map AddrToAmount = 1 [json_name = "AddrToAmount"];*/ 1: - this.binaryReadMap1(message.addrToAmount, reader, options); - break; - case /* int32 target_conf */ 2: - message.targetConf = reader.int32(); - break; - case /* int32 min_confs */ 3: - message.minConfs = reader.int32(); - break; - case /* bool spend_unconfirmed */ 4: - message.spendUnconfirmed = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap1(map: EstimateFeeRequest["addrToAmount"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof EstimateFeeRequest["addrToAmount"] | undefined, val: EstimateFeeRequest["addrToAmount"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.string(); - break; - case 2: - val = reader.int64().toBigInt(); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.EstimateFeeRequest.AddrToAmount"); - } - } - map[key ?? ""] = val ?? 0n; - } - internalBinaryWrite(message: EstimateFeeRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* map AddrToAmount = 1 [json_name = "AddrToAmount"]; */ - for (let k of Object.keys(message.addrToAmount)) - writer.tag(1, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k).tag(2, WireType.Varint).int64(message.addrToAmount[k]).join(); - /* int32 target_conf = 2; */ - if (message.targetConf !== 0) - writer.tag(2, WireType.Varint).int32(message.targetConf); - /* int32 min_confs = 3; */ - if (message.minConfs !== 0) - writer.tag(3, WireType.Varint).int32(message.minConfs); - /* bool spend_unconfirmed = 4; */ - if (message.spendUnconfirmed !== false) - writer.tag(4, WireType.Varint).bool(message.spendUnconfirmed); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.EstimateFeeRequest - */ -export const EstimateFeeRequest = new EstimateFeeRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class EstimateFeeResponse$Type extends MessageType { - constructor() { - super("lnrpc.EstimateFeeResponse", [ - { no: 1, name: "fee_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "feerate_sat_per_byte", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "sat_per_vbyte", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): EstimateFeeResponse { - const message = { feeSat: 0n, feerateSatPerByte: 0n, satPerVbyte: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: EstimateFeeResponse): EstimateFeeResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 fee_sat */ 1: - message.feeSat = reader.int64().toBigInt(); - break; - case /* int64 feerate_sat_per_byte = 2 [deprecated = true];*/ 2: - message.feerateSatPerByte = reader.int64().toBigInt(); - break; - case /* uint64 sat_per_vbyte */ 3: - message.satPerVbyte = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: EstimateFeeResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* int64 fee_sat = 1; */ - if (message.feeSat !== 0n) - writer.tag(1, WireType.Varint).int64(message.feeSat); - /* int64 feerate_sat_per_byte = 2 [deprecated = true]; */ - if (message.feerateSatPerByte !== 0n) - writer.tag(2, WireType.Varint).int64(message.feerateSatPerByte); - /* uint64 sat_per_vbyte = 3; */ - if (message.satPerVbyte !== 0n) - writer.tag(3, WireType.Varint).uint64(message.satPerVbyte); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.EstimateFeeResponse - */ -export const EstimateFeeResponse = new EstimateFeeResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendManyRequest$Type extends MessageType { - constructor() { - super("lnrpc.SendManyRequest", [ - { no: 1, name: "AddrToAmount", kind: "map", jsonName: "AddrToAmount", K: 9 /*ScalarType.STRING*/, V: { kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } }, - { no: 3, name: "target_conf", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 4, name: "sat_per_vbyte", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "sat_per_byte", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "label", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 7, name: "min_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 8, name: "spend_unconfirmed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): SendManyRequest { - const message = { addrToAmount: {}, targetConf: 0, satPerVbyte: 0n, satPerByte: 0n, label: "", minConfs: 0, spendUnconfirmed: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendManyRequest): SendManyRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* map AddrToAmount = 1 [json_name = "AddrToAmount"];*/ 1: - this.binaryReadMap1(message.addrToAmount, reader, options); - break; - case /* int32 target_conf */ 3: - message.targetConf = reader.int32(); - break; - case /* uint64 sat_per_vbyte */ 4: - message.satPerVbyte = reader.uint64().toBigInt(); - break; - case /* int64 sat_per_byte = 5 [deprecated = true];*/ 5: - message.satPerByte = reader.int64().toBigInt(); - break; - case /* string label */ 6: - message.label = reader.string(); - break; - case /* int32 min_confs */ 7: - message.minConfs = reader.int32(); - break; - case /* bool spend_unconfirmed */ 8: - message.spendUnconfirmed = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap1(map: SendManyRequest["addrToAmount"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof SendManyRequest["addrToAmount"] | undefined, val: SendManyRequest["addrToAmount"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.string(); - break; - case 2: - val = reader.int64().toBigInt(); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.SendManyRequest.AddrToAmount"); - } - } - map[key ?? ""] = val ?? 0n; - } - internalBinaryWrite(message: SendManyRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* map AddrToAmount = 1 [json_name = "AddrToAmount"]; */ - for (let k of Object.keys(message.addrToAmount)) - writer.tag(1, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k).tag(2, WireType.Varint).int64(message.addrToAmount[k]).join(); - /* int32 target_conf = 3; */ - if (message.targetConf !== 0) - writer.tag(3, WireType.Varint).int32(message.targetConf); - /* uint64 sat_per_vbyte = 4; */ - if (message.satPerVbyte !== 0n) - writer.tag(4, WireType.Varint).uint64(message.satPerVbyte); - /* int64 sat_per_byte = 5 [deprecated = true]; */ - if (message.satPerByte !== 0n) - writer.tag(5, WireType.Varint).int64(message.satPerByte); - /* string label = 6; */ - if (message.label !== "") - writer.tag(6, WireType.LengthDelimited).string(message.label); - /* int32 min_confs = 7; */ - if (message.minConfs !== 0) - writer.tag(7, WireType.Varint).int32(message.minConfs); - /* bool spend_unconfirmed = 8; */ - if (message.spendUnconfirmed !== false) - writer.tag(8, WireType.Varint).bool(message.spendUnconfirmed); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SendManyRequest - */ -export const SendManyRequest = new SendManyRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendManyResponse$Type extends MessageType { - constructor() { - super("lnrpc.SendManyResponse", [ - { no: 1, name: "txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): SendManyResponse { - const message = { txid: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendManyResponse): SendManyResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string txid */ 1: - message.txid = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: SendManyResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string txid = 1; */ - if (message.txid !== "") - writer.tag(1, WireType.LengthDelimited).string(message.txid); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SendManyResponse - */ -export const SendManyResponse = new SendManyResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendCoinsRequest$Type extends MessageType { - constructor() { - super("lnrpc.SendCoinsRequest", [ - { no: 1, name: "addr", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "amount", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "target_conf", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 4, name: "sat_per_vbyte", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "sat_per_byte", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "send_all", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 7, name: "label", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 8, name: "min_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 9, name: "spend_unconfirmed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): SendCoinsRequest { - const message = { addr: "", amount: 0n, targetConf: 0, satPerVbyte: 0n, satPerByte: 0n, sendAll: false, label: "", minConfs: 0, spendUnconfirmed: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendCoinsRequest): SendCoinsRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string addr */ 1: - message.addr = reader.string(); - break; - case /* int64 amount */ 2: - message.amount = reader.int64().toBigInt(); - break; - case /* int32 target_conf */ 3: - message.targetConf = reader.int32(); - break; - case /* uint64 sat_per_vbyte */ 4: - message.satPerVbyte = reader.uint64().toBigInt(); - break; - case /* int64 sat_per_byte = 5 [deprecated = true];*/ 5: - message.satPerByte = reader.int64().toBigInt(); - break; - case /* bool send_all */ 6: - message.sendAll = reader.bool(); - break; - case /* string label */ 7: - message.label = reader.string(); - break; - case /* int32 min_confs */ 8: - message.minConfs = reader.int32(); - break; - case /* bool spend_unconfirmed */ 9: - message.spendUnconfirmed = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: SendCoinsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string addr = 1; */ - if (message.addr !== "") - writer.tag(1, WireType.LengthDelimited).string(message.addr); - /* int64 amount = 2; */ - if (message.amount !== 0n) - writer.tag(2, WireType.Varint).int64(message.amount); - /* int32 target_conf = 3; */ - if (message.targetConf !== 0) - writer.tag(3, WireType.Varint).int32(message.targetConf); - /* uint64 sat_per_vbyte = 4; */ - if (message.satPerVbyte !== 0n) - writer.tag(4, WireType.Varint).uint64(message.satPerVbyte); - /* int64 sat_per_byte = 5 [deprecated = true]; */ - if (message.satPerByte !== 0n) - writer.tag(5, WireType.Varint).int64(message.satPerByte); - /* bool send_all = 6; */ - if (message.sendAll !== false) - writer.tag(6, WireType.Varint).bool(message.sendAll); - /* string label = 7; */ - if (message.label !== "") - writer.tag(7, WireType.LengthDelimited).string(message.label); - /* int32 min_confs = 8; */ - if (message.minConfs !== 0) - writer.tag(8, WireType.Varint).int32(message.minConfs); - /* bool spend_unconfirmed = 9; */ - if (message.spendUnconfirmed !== false) - writer.tag(9, WireType.Varint).bool(message.spendUnconfirmed); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SendCoinsRequest - */ -export const SendCoinsRequest = new SendCoinsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendCoinsResponse$Type extends MessageType { - constructor() { - super("lnrpc.SendCoinsResponse", [ - { no: 1, name: "txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): SendCoinsResponse { - const message = { txid: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendCoinsResponse): SendCoinsResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string txid */ 1: - message.txid = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: SendCoinsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string txid = 1; */ - if (message.txid !== "") - writer.tag(1, WireType.LengthDelimited).string(message.txid); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SendCoinsResponse - */ -export const SendCoinsResponse = new SendCoinsResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListUnspentRequest$Type extends MessageType { - constructor() { - super("lnrpc.ListUnspentRequest", [ - { no: 1, name: "min_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 2, name: "max_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 3, name: "account", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): ListUnspentRequest { - const message = { minConfs: 0, maxConfs: 0, account: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListUnspentRequest): ListUnspentRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int32 min_confs */ 1: - message.minConfs = reader.int32(); - break; - case /* int32 max_confs */ 2: - message.maxConfs = reader.int32(); - break; - case /* string account */ 3: - message.account = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ListUnspentRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* int32 min_confs = 1; */ - if (message.minConfs !== 0) - writer.tag(1, WireType.Varint).int32(message.minConfs); - /* int32 max_confs = 2; */ - if (message.maxConfs !== 0) - writer.tag(2, WireType.Varint).int32(message.maxConfs); - /* string account = 3; */ - if (message.account !== "") - writer.tag(3, WireType.LengthDelimited).string(message.account); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListUnspentRequest - */ -export const ListUnspentRequest = new ListUnspentRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListUnspentResponse$Type extends MessageType { - constructor() { - super("lnrpc.ListUnspentResponse", [ - { no: 1, name: "utxos", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Utxo } - ]); - } - create(value?: PartialMessage): ListUnspentResponse { - const message = { utxos: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListUnspentResponse): ListUnspentResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.Utxo utxos */ 1: - message.utxos.push(Utxo.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ListUnspentResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.Utxo utxos = 1; */ - for (let i = 0; i < message.utxos.length; i++) - Utxo.internalBinaryWrite(message.utxos[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListUnspentResponse - */ -export const ListUnspentResponse = new ListUnspentResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NewAddressRequest$Type extends MessageType { - constructor() { - super("lnrpc.NewAddressRequest", [ - { no: 1, name: "type", kind: "enum", T: () => ["lnrpc.AddressType", AddressType] }, - { no: 2, name: "account", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): NewAddressRequest { - const message = { type: 0, account: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NewAddressRequest): NewAddressRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.AddressType type */ 1: - message.type = reader.int32(); - break; - case /* string account */ 2: - message.account = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: NewAddressRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.AddressType type = 1; */ - if (message.type !== 0) - writer.tag(1, WireType.Varint).int32(message.type); - /* string account = 2; */ - if (message.account !== "") - writer.tag(2, WireType.LengthDelimited).string(message.account); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NewAddressRequest - */ -export const NewAddressRequest = new NewAddressRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NewAddressResponse$Type extends MessageType { - constructor() { - super("lnrpc.NewAddressResponse", [ - { no: 1, name: "address", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): NewAddressResponse { - const message = { address: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NewAddressResponse): NewAddressResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string address */ 1: - message.address = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: NewAddressResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string address = 1; */ - if (message.address !== "") - writer.tag(1, WireType.LengthDelimited).string(message.address); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NewAddressResponse - */ -export const NewAddressResponse = new NewAddressResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SignMessageRequest$Type extends MessageType { - constructor() { - super("lnrpc.SignMessageRequest", [ - { no: 1, name: "msg", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "single_hash", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): SignMessageRequest { - const message = { msg: new Uint8Array(0), singleHash: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SignMessageRequest): SignMessageRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes msg */ 1: - message.msg = reader.bytes(); - break; - case /* bool single_hash */ 2: - message.singleHash = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: SignMessageRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes msg = 1; */ - if (message.msg.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.msg); - /* bool single_hash = 2; */ - if (message.singleHash !== false) - writer.tag(2, WireType.Varint).bool(message.singleHash); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SignMessageRequest - */ -export const SignMessageRequest = new SignMessageRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SignMessageResponse$Type extends MessageType { - constructor() { - super("lnrpc.SignMessageResponse", [ - { no: 1, name: "signature", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): SignMessageResponse { - const message = { signature: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SignMessageResponse): SignMessageResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string signature */ 1: - message.signature = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: SignMessageResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string signature = 1; */ - if (message.signature !== "") - writer.tag(1, WireType.LengthDelimited).string(message.signature); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SignMessageResponse - */ -export const SignMessageResponse = new SignMessageResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class VerifyMessageRequest$Type extends MessageType { - constructor() { - super("lnrpc.VerifyMessageRequest", [ - { no: 1, name: "msg", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "signature", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): VerifyMessageRequest { - const message = { msg: new Uint8Array(0), signature: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: VerifyMessageRequest): VerifyMessageRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes msg */ 1: - message.msg = reader.bytes(); - break; - case /* string signature */ 2: - message.signature = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: VerifyMessageRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes msg = 1; */ - if (message.msg.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.msg); - /* string signature = 2; */ - if (message.signature !== "") - writer.tag(2, WireType.LengthDelimited).string(message.signature); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.VerifyMessageRequest - */ -export const VerifyMessageRequest = new VerifyMessageRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class VerifyMessageResponse$Type extends MessageType { - constructor() { - super("lnrpc.VerifyMessageResponse", [ - { no: 1, name: "valid", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "pubkey", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): VerifyMessageResponse { - const message = { valid: false, pubkey: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: VerifyMessageResponse): VerifyMessageResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool valid */ 1: - message.valid = reader.bool(); - break; - case /* string pubkey */ 2: - message.pubkey = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: VerifyMessageResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool valid = 1; */ - if (message.valid !== false) - writer.tag(1, WireType.Varint).bool(message.valid); - /* string pubkey = 2; */ - if (message.pubkey !== "") - writer.tag(2, WireType.LengthDelimited).string(message.pubkey); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.VerifyMessageResponse - */ -export const VerifyMessageResponse = new VerifyMessageResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ConnectPeerRequest$Type extends MessageType { - constructor() { - super("lnrpc.ConnectPeerRequest", [ - { no: 1, name: "addr", kind: "message", T: () => LightningAddress }, - { no: 2, name: "perm", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 3, name: "timeout", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): ConnectPeerRequest { - const message = { perm: false, timeout: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ConnectPeerRequest): ConnectPeerRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.LightningAddress addr */ 1: - message.addr = LightningAddress.internalBinaryRead(reader, reader.uint32(), options, message.addr); - break; - case /* bool perm */ 2: - message.perm = reader.bool(); - break; - case /* uint64 timeout */ 3: - message.timeout = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ConnectPeerRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.LightningAddress addr = 1; */ - if (message.addr) - LightningAddress.internalBinaryWrite(message.addr, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* bool perm = 2; */ - if (message.perm !== false) - writer.tag(2, WireType.Varint).bool(message.perm); - /* uint64 timeout = 3; */ - if (message.timeout !== 0n) - writer.tag(3, WireType.Varint).uint64(message.timeout); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ConnectPeerRequest - */ -export const ConnectPeerRequest = new ConnectPeerRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ConnectPeerResponse$Type extends MessageType { - constructor() { - super("lnrpc.ConnectPeerResponse", []); - } - create(value?: PartialMessage): ConnectPeerResponse { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ConnectPeerResponse): ConnectPeerResponse { - return target ?? this.create(); - } - internalBinaryWrite(message: ConnectPeerResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ConnectPeerResponse - */ -export const ConnectPeerResponse = new ConnectPeerResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class DisconnectPeerRequest$Type extends MessageType { - constructor() { - super("lnrpc.DisconnectPeerRequest", [ - { no: 1, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): DisconnectPeerRequest { - const message = { pubKey: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DisconnectPeerRequest): DisconnectPeerRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string pub_key */ 1: - message.pubKey = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: DisconnectPeerRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string pub_key = 1; */ - if (message.pubKey !== "") - writer.tag(1, WireType.LengthDelimited).string(message.pubKey); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.DisconnectPeerRequest - */ -export const DisconnectPeerRequest = new DisconnectPeerRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class DisconnectPeerResponse$Type extends MessageType { - constructor() { - super("lnrpc.DisconnectPeerResponse", []); - } - create(value?: PartialMessage): DisconnectPeerResponse { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DisconnectPeerResponse): DisconnectPeerResponse { - return target ?? this.create(); - } - internalBinaryWrite(message: DisconnectPeerResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.DisconnectPeerResponse - */ -export const DisconnectPeerResponse = new DisconnectPeerResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class HTLC$Type extends MessageType { - constructor() { - super("lnrpc.HTLC", [ - { no: 1, name: "incoming", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "amount", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "hash_lock", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 4, name: "expiration_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "htlc_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "forwarding_channel", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 7, name: "forwarding_htlc_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): HTLC { - const message = { incoming: false, amount: 0n, hashLock: new Uint8Array(0), expirationHeight: 0, htlcIndex: 0n, forwardingChannel: 0n, forwardingHtlcIndex: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: HTLC): HTLC { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool incoming */ 1: - message.incoming = reader.bool(); - break; - case /* int64 amount */ 2: - message.amount = reader.int64().toBigInt(); - break; - case /* bytes hash_lock */ 3: - message.hashLock = reader.bytes(); - break; - case /* uint32 expiration_height */ 4: - message.expirationHeight = reader.uint32(); - break; - case /* uint64 htlc_index */ 5: - message.htlcIndex = reader.uint64().toBigInt(); - break; - case /* uint64 forwarding_channel */ 6: - message.forwardingChannel = reader.uint64().toBigInt(); - break; - case /* uint64 forwarding_htlc_index */ 7: - message.forwardingHtlcIndex = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: HTLC, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool incoming = 1; */ - if (message.incoming !== false) - writer.tag(1, WireType.Varint).bool(message.incoming); - /* int64 amount = 2; */ - if (message.amount !== 0n) - writer.tag(2, WireType.Varint).int64(message.amount); - /* bytes hash_lock = 3; */ - if (message.hashLock.length) - writer.tag(3, WireType.LengthDelimited).bytes(message.hashLock); - /* uint32 expiration_height = 4; */ - if (message.expirationHeight !== 0) - writer.tag(4, WireType.Varint).uint32(message.expirationHeight); - /* uint64 htlc_index = 5; */ - if (message.htlcIndex !== 0n) - writer.tag(5, WireType.Varint).uint64(message.htlcIndex); - /* uint64 forwarding_channel = 6; */ - if (message.forwardingChannel !== 0n) - writer.tag(6, WireType.Varint).uint64(message.forwardingChannel); - /* uint64 forwarding_htlc_index = 7; */ - if (message.forwardingHtlcIndex !== 0n) - writer.tag(7, WireType.Varint).uint64(message.forwardingHtlcIndex); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.HTLC - */ -export const HTLC = new HTLC$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelConstraints$Type extends MessageType { - constructor() { - super("lnrpc.ChannelConstraints", [ - { no: 1, name: "csv_delay", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 2, name: "chan_reserve_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "dust_limit_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "max_pending_amt_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "min_htlc_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "max_accepted_htlcs", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value?: PartialMessage): ChannelConstraints { - const message = { csvDelay: 0, chanReserveSat: 0n, dustLimitSat: 0n, maxPendingAmtMsat: 0n, minHtlcMsat: 0n, maxAcceptedHtlcs: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelConstraints): ChannelConstraints { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint32 csv_delay */ 1: - message.csvDelay = reader.uint32(); - break; - case /* uint64 chan_reserve_sat */ 2: - message.chanReserveSat = reader.uint64().toBigInt(); - break; - case /* uint64 dust_limit_sat */ 3: - message.dustLimitSat = reader.uint64().toBigInt(); - break; - case /* uint64 max_pending_amt_msat */ 4: - message.maxPendingAmtMsat = reader.uint64().toBigInt(); - break; - case /* uint64 min_htlc_msat */ 5: - message.minHtlcMsat = reader.uint64().toBigInt(); - break; - case /* uint32 max_accepted_htlcs */ 6: - message.maxAcceptedHtlcs = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChannelConstraints, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint32 csv_delay = 1; */ - if (message.csvDelay !== 0) - writer.tag(1, WireType.Varint).uint32(message.csvDelay); - /* uint64 chan_reserve_sat = 2; */ - if (message.chanReserveSat !== 0n) - writer.tag(2, WireType.Varint).uint64(message.chanReserveSat); - /* uint64 dust_limit_sat = 3; */ - if (message.dustLimitSat !== 0n) - writer.tag(3, WireType.Varint).uint64(message.dustLimitSat); - /* uint64 max_pending_amt_msat = 4; */ - if (message.maxPendingAmtMsat !== 0n) - writer.tag(4, WireType.Varint).uint64(message.maxPendingAmtMsat); - /* uint64 min_htlc_msat = 5; */ - if (message.minHtlcMsat !== 0n) - writer.tag(5, WireType.Varint).uint64(message.minHtlcMsat); - /* uint32 max_accepted_htlcs = 6; */ - if (message.maxAcceptedHtlcs !== 0) - writer.tag(6, WireType.Varint).uint32(message.maxAcceptedHtlcs); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelConstraints - */ -export const ChannelConstraints = new ChannelConstraints$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Channel$Type extends MessageType { - constructor() { - super("lnrpc.Channel", [ - { no: 1, name: "active", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "remote_pubkey", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "channel_point", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 5, name: "capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "local_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 7, name: "remote_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 8, name: "commit_fee", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 9, name: "commit_weight", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 10, name: "fee_per_kw", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 11, name: "unsettled_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 12, name: "total_satoshis_sent", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 13, name: "total_satoshis_received", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 14, name: "num_updates", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 15, name: "pending_htlcs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => HTLC }, - { no: 16, name: "csv_delay", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 17, name: "private", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 18, name: "initiator", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 19, name: "chan_status_flags", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 20, name: "local_chan_reserve_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 21, name: "remote_chan_reserve_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 22, name: "static_remote_key", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 26, name: "commitment_type", kind: "enum", T: () => ["lnrpc.CommitmentType", CommitmentType] }, - { no: 23, name: "lifetime", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 24, name: "uptime", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 25, name: "close_address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 27, name: "push_amount_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 28, name: "thaw_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 29, name: "local_constraints", kind: "message", T: () => ChannelConstraints }, - { no: 30, name: "remote_constraints", kind: "message", T: () => ChannelConstraints }, - { no: 31, name: "alias_scids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 32, name: "zero_conf", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 33, name: "zero_conf_confirmed_scid", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): Channel { - const message = { active: false, remotePubkey: "", channelPoint: "", chanId: "0", capacity: 0n, localBalance: 0n, remoteBalance: 0n, commitFee: 0n, commitWeight: 0n, feePerKw: 0n, unsettledBalance: 0n, totalSatoshisSent: 0n, totalSatoshisReceived: 0n, numUpdates: 0n, pendingHtlcs: [], csvDelay: 0, private: false, initiator: false, chanStatusFlags: "", localChanReserveSat: 0n, remoteChanReserveSat: 0n, staticRemoteKey: false, commitmentType: 0, lifetime: 0n, uptime: 0n, closeAddress: "", pushAmountSat: 0n, thawHeight: 0, aliasScids: [], zeroConf: false, zeroConfConfirmedScid: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Channel): Channel { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool active */ 1: - message.active = reader.bool(); - break; - case /* string remote_pubkey */ 2: - message.remotePubkey = reader.string(); - break; - case /* string channel_point */ 3: - message.channelPoint = reader.string(); - break; - case /* uint64 chan_id = 4 [jstype = JS_STRING];*/ 4: - message.chanId = reader.uint64().toString(); - break; - case /* int64 capacity */ 5: - message.capacity = reader.int64().toBigInt(); - break; - case /* int64 local_balance */ 6: - message.localBalance = reader.int64().toBigInt(); - break; - case /* int64 remote_balance */ 7: - message.remoteBalance = reader.int64().toBigInt(); - break; - case /* int64 commit_fee */ 8: - message.commitFee = reader.int64().toBigInt(); - break; - case /* int64 commit_weight */ 9: - message.commitWeight = reader.int64().toBigInt(); - break; - case /* int64 fee_per_kw */ 10: - message.feePerKw = reader.int64().toBigInt(); - break; - case /* int64 unsettled_balance */ 11: - message.unsettledBalance = reader.int64().toBigInt(); - break; - case /* int64 total_satoshis_sent */ 12: - message.totalSatoshisSent = reader.int64().toBigInt(); - break; - case /* int64 total_satoshis_received */ 13: - message.totalSatoshisReceived = reader.int64().toBigInt(); - break; - case /* uint64 num_updates */ 14: - message.numUpdates = reader.uint64().toBigInt(); - break; - case /* repeated lnrpc.HTLC pending_htlcs */ 15: - message.pendingHtlcs.push(HTLC.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* uint32 csv_delay = 16 [deprecated = true];*/ 16: - message.csvDelay = reader.uint32(); - break; - case /* bool private */ 17: - message.private = reader.bool(); - break; - case /* bool initiator */ 18: - message.initiator = reader.bool(); - break; - case /* string chan_status_flags */ 19: - message.chanStatusFlags = reader.string(); - break; - case /* int64 local_chan_reserve_sat = 20 [deprecated = true];*/ 20: - message.localChanReserveSat = reader.int64().toBigInt(); - break; - case /* int64 remote_chan_reserve_sat = 21 [deprecated = true];*/ 21: - message.remoteChanReserveSat = reader.int64().toBigInt(); - break; - case /* bool static_remote_key = 22 [deprecated = true];*/ 22: - message.staticRemoteKey = reader.bool(); - break; - case /* lnrpc.CommitmentType commitment_type */ 26: - message.commitmentType = reader.int32(); - break; - case /* int64 lifetime */ 23: - message.lifetime = reader.int64().toBigInt(); - break; - case /* int64 uptime */ 24: - message.uptime = reader.int64().toBigInt(); - break; - case /* string close_address */ 25: - message.closeAddress = reader.string(); - break; - case /* uint64 push_amount_sat */ 27: - message.pushAmountSat = reader.uint64().toBigInt(); - break; - case /* uint32 thaw_height */ 28: - message.thawHeight = reader.uint32(); - break; - case /* lnrpc.ChannelConstraints local_constraints */ 29: - message.localConstraints = ChannelConstraints.internalBinaryRead(reader, reader.uint32(), options, message.localConstraints); - break; - case /* lnrpc.ChannelConstraints remote_constraints */ 30: - message.remoteConstraints = ChannelConstraints.internalBinaryRead(reader, reader.uint32(), options, message.remoteConstraints); - break; - case /* repeated uint64 alias_scids */ 31: - if (wireType === WireType.LengthDelimited) - for (let e = reader.int32() + reader.pos; reader.pos < e;) - message.aliasScids.push(reader.uint64().toBigInt()); - else - message.aliasScids.push(reader.uint64().toBigInt()); - break; - case /* bool zero_conf */ 32: - message.zeroConf = reader.bool(); - break; - case /* uint64 zero_conf_confirmed_scid */ 33: - message.zeroConfConfirmedScid = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: Channel, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool active = 1; */ - if (message.active !== false) - writer.tag(1, WireType.Varint).bool(message.active); - /* string remote_pubkey = 2; */ - if (message.remotePubkey !== "") - writer.tag(2, WireType.LengthDelimited).string(message.remotePubkey); - /* string channel_point = 3; */ - if (message.channelPoint !== "") - writer.tag(3, WireType.LengthDelimited).string(message.channelPoint); - /* uint64 chan_id = 4 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(4, WireType.Varint).uint64(message.chanId); - /* int64 capacity = 5; */ - if (message.capacity !== 0n) - writer.tag(5, WireType.Varint).int64(message.capacity); - /* int64 local_balance = 6; */ - if (message.localBalance !== 0n) - writer.tag(6, WireType.Varint).int64(message.localBalance); - /* int64 remote_balance = 7; */ - if (message.remoteBalance !== 0n) - writer.tag(7, WireType.Varint).int64(message.remoteBalance); - /* int64 commit_fee = 8; */ - if (message.commitFee !== 0n) - writer.tag(8, WireType.Varint).int64(message.commitFee); - /* int64 commit_weight = 9; */ - if (message.commitWeight !== 0n) - writer.tag(9, WireType.Varint).int64(message.commitWeight); - /* int64 fee_per_kw = 10; */ - if (message.feePerKw !== 0n) - writer.tag(10, WireType.Varint).int64(message.feePerKw); - /* int64 unsettled_balance = 11; */ - if (message.unsettledBalance !== 0n) - writer.tag(11, WireType.Varint).int64(message.unsettledBalance); - /* int64 total_satoshis_sent = 12; */ - if (message.totalSatoshisSent !== 0n) - writer.tag(12, WireType.Varint).int64(message.totalSatoshisSent); - /* int64 total_satoshis_received = 13; */ - if (message.totalSatoshisReceived !== 0n) - writer.tag(13, WireType.Varint).int64(message.totalSatoshisReceived); - /* uint64 num_updates = 14; */ - if (message.numUpdates !== 0n) - writer.tag(14, WireType.Varint).uint64(message.numUpdates); - /* repeated lnrpc.HTLC pending_htlcs = 15; */ - for (let i = 0; i < message.pendingHtlcs.length; i++) - HTLC.internalBinaryWrite(message.pendingHtlcs[i], writer.tag(15, WireType.LengthDelimited).fork(), options).join(); - /* uint32 csv_delay = 16 [deprecated = true]; */ - if (message.csvDelay !== 0) - writer.tag(16, WireType.Varint).uint32(message.csvDelay); - /* bool private = 17; */ - if (message.private !== false) - writer.tag(17, WireType.Varint).bool(message.private); - /* bool initiator = 18; */ - if (message.initiator !== false) - writer.tag(18, WireType.Varint).bool(message.initiator); - /* string chan_status_flags = 19; */ - if (message.chanStatusFlags !== "") - writer.tag(19, WireType.LengthDelimited).string(message.chanStatusFlags); - /* int64 local_chan_reserve_sat = 20 [deprecated = true]; */ - if (message.localChanReserveSat !== 0n) - writer.tag(20, WireType.Varint).int64(message.localChanReserveSat); - /* int64 remote_chan_reserve_sat = 21 [deprecated = true]; */ - if (message.remoteChanReserveSat !== 0n) - writer.tag(21, WireType.Varint).int64(message.remoteChanReserveSat); - /* bool static_remote_key = 22 [deprecated = true]; */ - if (message.staticRemoteKey !== false) - writer.tag(22, WireType.Varint).bool(message.staticRemoteKey); - /* lnrpc.CommitmentType commitment_type = 26; */ - if (message.commitmentType !== 0) - writer.tag(26, WireType.Varint).int32(message.commitmentType); - /* int64 lifetime = 23; */ - if (message.lifetime !== 0n) - writer.tag(23, WireType.Varint).int64(message.lifetime); - /* int64 uptime = 24; */ - if (message.uptime !== 0n) - writer.tag(24, WireType.Varint).int64(message.uptime); - /* string close_address = 25; */ - if (message.closeAddress !== "") - writer.tag(25, WireType.LengthDelimited).string(message.closeAddress); - /* uint64 push_amount_sat = 27; */ - if (message.pushAmountSat !== 0n) - writer.tag(27, WireType.Varint).uint64(message.pushAmountSat); - /* uint32 thaw_height = 28; */ - if (message.thawHeight !== 0) - writer.tag(28, WireType.Varint).uint32(message.thawHeight); - /* lnrpc.ChannelConstraints local_constraints = 29; */ - if (message.localConstraints) - ChannelConstraints.internalBinaryWrite(message.localConstraints, writer.tag(29, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.ChannelConstraints remote_constraints = 30; */ - if (message.remoteConstraints) - ChannelConstraints.internalBinaryWrite(message.remoteConstraints, writer.tag(30, WireType.LengthDelimited).fork(), options).join(); - /* repeated uint64 alias_scids = 31; */ - if (message.aliasScids.length) { - writer.tag(31, WireType.LengthDelimited).fork(); - for (let i = 0; i < message.aliasScids.length; i++) - writer.uint64(message.aliasScids[i]); - writer.join(); - } - /* bool zero_conf = 32; */ - if (message.zeroConf !== false) - writer.tag(32, WireType.Varint).bool(message.zeroConf); - /* uint64 zero_conf_confirmed_scid = 33; */ - if (message.zeroConfConfirmedScid !== 0n) - writer.tag(33, WireType.Varint).uint64(message.zeroConfConfirmedScid); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Channel - */ -export const Channel = new Channel$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListChannelsRequest$Type extends MessageType { - constructor() { - super("lnrpc.ListChannelsRequest", [ - { no: 1, name: "active_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "inactive_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 3, name: "public_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 4, name: "private_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 5, name: "peer", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): ListChannelsRequest { - const message = { activeOnly: false, inactiveOnly: false, publicOnly: false, privateOnly: false, peer: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListChannelsRequest): ListChannelsRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool active_only */ 1: - message.activeOnly = reader.bool(); - break; - case /* bool inactive_only */ 2: - message.inactiveOnly = reader.bool(); - break; - case /* bool public_only */ 3: - message.publicOnly = reader.bool(); - break; - case /* bool private_only */ 4: - message.privateOnly = reader.bool(); - break; - case /* bytes peer */ 5: - message.peer = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ListChannelsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool active_only = 1; */ - if (message.activeOnly !== false) - writer.tag(1, WireType.Varint).bool(message.activeOnly); - /* bool inactive_only = 2; */ - if (message.inactiveOnly !== false) - writer.tag(2, WireType.Varint).bool(message.inactiveOnly); - /* bool public_only = 3; */ - if (message.publicOnly !== false) - writer.tag(3, WireType.Varint).bool(message.publicOnly); - /* bool private_only = 4; */ - if (message.privateOnly !== false) - writer.tag(4, WireType.Varint).bool(message.privateOnly); - /* bytes peer = 5; */ - if (message.peer.length) - writer.tag(5, WireType.LengthDelimited).bytes(message.peer); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListChannelsRequest - */ -export const ListChannelsRequest = new ListChannelsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListChannelsResponse$Type extends MessageType { - constructor() { - super("lnrpc.ListChannelsResponse", [ - { no: 11, name: "channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Channel } - ]); - } - create(value?: PartialMessage): ListChannelsResponse { - const message = { channels: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListChannelsResponse): ListChannelsResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.Channel channels */ 11: - message.channels.push(Channel.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ListChannelsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.Channel channels = 11; */ - for (let i = 0; i < message.channels.length; i++) - Channel.internalBinaryWrite(message.channels[i], writer.tag(11, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListChannelsResponse - */ -export const ListChannelsResponse = new ListChannelsResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class AliasMap$Type extends MessageType { - constructor() { - super("lnrpc.AliasMap", [ - { no: 1, name: "base_scid", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "aliases", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): AliasMap { - const message = { baseScid: 0n, aliases: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AliasMap): AliasMap { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 base_scid */ 1: - message.baseScid = reader.uint64().toBigInt(); - break; - case /* repeated uint64 aliases */ 2: - if (wireType === WireType.LengthDelimited) - for (let e = reader.int32() + reader.pos; reader.pos < e;) - message.aliases.push(reader.uint64().toBigInt()); - else - message.aliases.push(reader.uint64().toBigInt()); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: AliasMap, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 base_scid = 1; */ - if (message.baseScid !== 0n) - writer.tag(1, WireType.Varint).uint64(message.baseScid); - /* repeated uint64 aliases = 2; */ - if (message.aliases.length) { - writer.tag(2, WireType.LengthDelimited).fork(); - for (let i = 0; i < message.aliases.length; i++) - writer.uint64(message.aliases[i]); - writer.join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.AliasMap - */ -export const AliasMap = new AliasMap$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListAliasesRequest$Type extends MessageType { - constructor() { - super("lnrpc.ListAliasesRequest", []); - } - create(value?: PartialMessage): ListAliasesRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListAliasesRequest): ListAliasesRequest { - return target ?? this.create(); - } - internalBinaryWrite(message: ListAliasesRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListAliasesRequest - */ -export const ListAliasesRequest = new ListAliasesRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListAliasesResponse$Type extends MessageType { - constructor() { - super("lnrpc.ListAliasesResponse", [ - { no: 1, name: "alias_maps", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => AliasMap } - ]); - } - create(value?: PartialMessage): ListAliasesResponse { - const message = { aliasMaps: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListAliasesResponse): ListAliasesResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.AliasMap alias_maps */ 1: - message.aliasMaps.push(AliasMap.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ListAliasesResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.AliasMap alias_maps = 1; */ - for (let i = 0; i < message.aliasMaps.length; i++) - AliasMap.internalBinaryWrite(message.aliasMaps[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListAliasesResponse - */ -export const ListAliasesResponse = new ListAliasesResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelCloseSummary$Type extends MessageType { - constructor() { - super("lnrpc.ChannelCloseSummary", [ - { no: 1, name: "channel_point", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 3, name: "chain_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "closing_tx_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 5, name: "remote_pubkey", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 6, name: "capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 7, name: "close_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 8, name: "settled_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 9, name: "time_locked_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 10, name: "close_type", kind: "enum", T: () => ["lnrpc.ChannelCloseSummary.ClosureType", ChannelCloseSummary_ClosureType] }, - { no: 11, name: "open_initiator", kind: "enum", T: () => ["lnrpc.Initiator", Initiator, "INITIATOR_"] }, - { no: 12, name: "close_initiator", kind: "enum", T: () => ["lnrpc.Initiator", Initiator, "INITIATOR_"] }, - { no: 13, name: "resolutions", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Resolution }, - { no: 14, name: "alias_scids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 15, name: "zero_conf_confirmed_scid", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value?: PartialMessage): ChannelCloseSummary { - const message = { channelPoint: "", chanId: "0", chainHash: "", closingTxHash: "", remotePubkey: "", capacity: 0n, closeHeight: 0, settledBalance: 0n, timeLockedBalance: 0n, closeType: 0, openInitiator: 0, closeInitiator: 0, resolutions: [], aliasScids: [], zeroConfConfirmedScid: "0" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelCloseSummary): ChannelCloseSummary { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string channel_point */ 1: - message.channelPoint = reader.string(); - break; - case /* uint64 chan_id = 2 [jstype = JS_STRING];*/ 2: - message.chanId = reader.uint64().toString(); - break; - case /* string chain_hash */ 3: - message.chainHash = reader.string(); - break; - case /* string closing_tx_hash */ 4: - message.closingTxHash = reader.string(); - break; - case /* string remote_pubkey */ 5: - message.remotePubkey = reader.string(); - break; - case /* int64 capacity */ 6: - message.capacity = reader.int64().toBigInt(); - break; - case /* uint32 close_height */ 7: - message.closeHeight = reader.uint32(); - break; - case /* int64 settled_balance */ 8: - message.settledBalance = reader.int64().toBigInt(); - break; - case /* int64 time_locked_balance */ 9: - message.timeLockedBalance = reader.int64().toBigInt(); - break; - case /* lnrpc.ChannelCloseSummary.ClosureType close_type */ 10: - message.closeType = reader.int32(); - break; - case /* lnrpc.Initiator open_initiator */ 11: - message.openInitiator = reader.int32(); - break; - case /* lnrpc.Initiator close_initiator */ 12: - message.closeInitiator = reader.int32(); - break; - case /* repeated lnrpc.Resolution resolutions */ 13: - message.resolutions.push(Resolution.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* repeated uint64 alias_scids */ 14: - if (wireType === WireType.LengthDelimited) - for (let e = reader.int32() + reader.pos; reader.pos < e;) - message.aliasScids.push(reader.uint64().toBigInt()); - else - message.aliasScids.push(reader.uint64().toBigInt()); - break; - case /* uint64 zero_conf_confirmed_scid = 15 [jstype = JS_STRING];*/ 15: - message.zeroConfConfirmedScid = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChannelCloseSummary, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string channel_point = 1; */ - if (message.channelPoint !== "") - writer.tag(1, WireType.LengthDelimited).string(message.channelPoint); - /* uint64 chan_id = 2 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(2, WireType.Varint).uint64(message.chanId); - /* string chain_hash = 3; */ - if (message.chainHash !== "") - writer.tag(3, WireType.LengthDelimited).string(message.chainHash); - /* string closing_tx_hash = 4; */ - if (message.closingTxHash !== "") - writer.tag(4, WireType.LengthDelimited).string(message.closingTxHash); - /* string remote_pubkey = 5; */ - if (message.remotePubkey !== "") - writer.tag(5, WireType.LengthDelimited).string(message.remotePubkey); - /* int64 capacity = 6; */ - if (message.capacity !== 0n) - writer.tag(6, WireType.Varint).int64(message.capacity); - /* uint32 close_height = 7; */ - if (message.closeHeight !== 0) - writer.tag(7, WireType.Varint).uint32(message.closeHeight); - /* int64 settled_balance = 8; */ - if (message.settledBalance !== 0n) - writer.tag(8, WireType.Varint).int64(message.settledBalance); - /* int64 time_locked_balance = 9; */ - if (message.timeLockedBalance !== 0n) - writer.tag(9, WireType.Varint).int64(message.timeLockedBalance); - /* lnrpc.ChannelCloseSummary.ClosureType close_type = 10; */ - if (message.closeType !== 0) - writer.tag(10, WireType.Varint).int32(message.closeType); - /* lnrpc.Initiator open_initiator = 11; */ - if (message.openInitiator !== 0) - writer.tag(11, WireType.Varint).int32(message.openInitiator); - /* lnrpc.Initiator close_initiator = 12; */ - if (message.closeInitiator !== 0) - writer.tag(12, WireType.Varint).int32(message.closeInitiator); - /* repeated lnrpc.Resolution resolutions = 13; */ - for (let i = 0; i < message.resolutions.length; i++) - Resolution.internalBinaryWrite(message.resolutions[i], writer.tag(13, WireType.LengthDelimited).fork(), options).join(); - /* repeated uint64 alias_scids = 14; */ - if (message.aliasScids.length) { - writer.tag(14, WireType.LengthDelimited).fork(); - for (let i = 0; i < message.aliasScids.length; i++) - writer.uint64(message.aliasScids[i]); - writer.join(); - } - /* uint64 zero_conf_confirmed_scid = 15 [jstype = JS_STRING]; */ - if (message.zeroConfConfirmedScid !== "0") - writer.tag(15, WireType.Varint).uint64(message.zeroConfConfirmedScid); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelCloseSummary - */ -export const ChannelCloseSummary = new ChannelCloseSummary$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Resolution$Type extends MessageType { - constructor() { - super("lnrpc.Resolution", [ - { no: 1, name: "resolution_type", kind: "enum", T: () => ["lnrpc.ResolutionType", ResolutionType] }, - { no: 2, name: "outcome", kind: "enum", T: () => ["lnrpc.ResolutionOutcome", ResolutionOutcome] }, - { no: 3, name: "outpoint", kind: "message", T: () => OutPoint }, - { no: 4, name: "amount_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "sweep_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): Resolution { - const message = { resolutionType: 0, outcome: 0, amountSat: 0n, sweepTxid: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Resolution): Resolution { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ResolutionType resolution_type */ 1: - message.resolutionType = reader.int32(); - break; - case /* lnrpc.ResolutionOutcome outcome */ 2: - message.outcome = reader.int32(); - break; - case /* lnrpc.OutPoint outpoint */ 3: - message.outpoint = OutPoint.internalBinaryRead(reader, reader.uint32(), options, message.outpoint); - break; - case /* uint64 amount_sat */ 4: - message.amountSat = reader.uint64().toBigInt(); - break; - case /* string sweep_txid */ 5: - message.sweepTxid = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: Resolution, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.ResolutionType resolution_type = 1; */ - if (message.resolutionType !== 0) - writer.tag(1, WireType.Varint).int32(message.resolutionType); - /* lnrpc.ResolutionOutcome outcome = 2; */ - if (message.outcome !== 0) - writer.tag(2, WireType.Varint).int32(message.outcome); - /* lnrpc.OutPoint outpoint = 3; */ - if (message.outpoint) - OutPoint.internalBinaryWrite(message.outpoint, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); - /* uint64 amount_sat = 4; */ - if (message.amountSat !== 0n) - writer.tag(4, WireType.Varint).uint64(message.amountSat); - /* string sweep_txid = 5; */ - if (message.sweepTxid !== "") - writer.tag(5, WireType.LengthDelimited).string(message.sweepTxid); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Resolution - */ -export const Resolution = new Resolution$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ClosedChannelsRequest$Type extends MessageType { - constructor() { - super("lnrpc.ClosedChannelsRequest", [ - { no: 1, name: "cooperative", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "local_force", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 3, name: "remote_force", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 4, name: "breach", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 5, name: "funding_canceled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 6, name: "abandoned", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): ClosedChannelsRequest { - const message = { cooperative: false, localForce: false, remoteForce: false, breach: false, fundingCanceled: false, abandoned: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ClosedChannelsRequest): ClosedChannelsRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool cooperative */ 1: - message.cooperative = reader.bool(); - break; - case /* bool local_force */ 2: - message.localForce = reader.bool(); - break; - case /* bool remote_force */ 3: - message.remoteForce = reader.bool(); - break; - case /* bool breach */ 4: - message.breach = reader.bool(); - break; - case /* bool funding_canceled */ 5: - message.fundingCanceled = reader.bool(); - break; - case /* bool abandoned */ 6: - message.abandoned = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ClosedChannelsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool cooperative = 1; */ - if (message.cooperative !== false) - writer.tag(1, WireType.Varint).bool(message.cooperative); - /* bool local_force = 2; */ - if (message.localForce !== false) - writer.tag(2, WireType.Varint).bool(message.localForce); - /* bool remote_force = 3; */ - if (message.remoteForce !== false) - writer.tag(3, WireType.Varint).bool(message.remoteForce); - /* bool breach = 4; */ - if (message.breach !== false) - writer.tag(4, WireType.Varint).bool(message.breach); - /* bool funding_canceled = 5; */ - if (message.fundingCanceled !== false) - writer.tag(5, WireType.Varint).bool(message.fundingCanceled); - /* bool abandoned = 6; */ - if (message.abandoned !== false) - writer.tag(6, WireType.Varint).bool(message.abandoned); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ClosedChannelsRequest - */ -export const ClosedChannelsRequest = new ClosedChannelsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ClosedChannelsResponse$Type extends MessageType { - constructor() { - super("lnrpc.ClosedChannelsResponse", [ - { no: 1, name: "channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => ChannelCloseSummary } - ]); - } - create(value?: PartialMessage): ClosedChannelsResponse { - const message = { channels: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ClosedChannelsResponse): ClosedChannelsResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.ChannelCloseSummary channels */ 1: - message.channels.push(ChannelCloseSummary.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ClosedChannelsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.ChannelCloseSummary channels = 1; */ - for (let i = 0; i < message.channels.length; i++) - ChannelCloseSummary.internalBinaryWrite(message.channels[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ClosedChannelsResponse - */ -export const ClosedChannelsResponse = new ClosedChannelsResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Peer$Type extends MessageType { - constructor() { - super("lnrpc.Peer", [ - { no: 1, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "bytes_sent", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "bytes_recv", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "sat_sent", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 7, name: "sat_recv", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 8, name: "inbound", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 9, name: "ping_time", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 10, name: "sync_type", kind: "enum", T: () => ["lnrpc.Peer.SyncType", Peer_SyncType] }, - { no: 11, name: "features", kind: "map", K: 13 /*ScalarType.UINT32*/, V: { kind: "message", T: () => Feature } }, - { no: 12, name: "errors", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => TimestampedError }, - { no: 13, name: "flap_count", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 14, name: "last_flap_ns", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 15, name: "last_ping_payload", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): Peer { - const message = { pubKey: "", address: "", bytesSent: 0n, bytesRecv: 0n, satSent: 0n, satRecv: 0n, inbound: false, pingTime: 0n, syncType: 0, features: {}, errors: [], flapCount: 0, lastFlapNs: 0n, lastPingPayload: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Peer): Peer { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string pub_key */ 1: - message.pubKey = reader.string(); - break; - case /* string address */ 3: - message.address = reader.string(); - break; - case /* uint64 bytes_sent */ 4: - message.bytesSent = reader.uint64().toBigInt(); - break; - case /* uint64 bytes_recv */ 5: - message.bytesRecv = reader.uint64().toBigInt(); - break; - case /* int64 sat_sent */ 6: - message.satSent = reader.int64().toBigInt(); - break; - case /* int64 sat_recv */ 7: - message.satRecv = reader.int64().toBigInt(); - break; - case /* bool inbound */ 8: - message.inbound = reader.bool(); - break; - case /* int64 ping_time */ 9: - message.pingTime = reader.int64().toBigInt(); - break; - case /* lnrpc.Peer.SyncType sync_type */ 10: - message.syncType = reader.int32(); - break; - case /* map features */ 11: - this.binaryReadMap11(message.features, reader, options); - break; - case /* repeated lnrpc.TimestampedError errors */ 12: - message.errors.push(TimestampedError.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* int32 flap_count */ 13: - message.flapCount = reader.int32(); - break; - case /* int64 last_flap_ns */ 14: - message.lastFlapNs = reader.int64().toBigInt(); - break; - case /* bytes last_ping_payload */ 15: - message.lastPingPayload = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap11(map: Peer["features"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof Peer["features"] | undefined, val: Peer["features"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint32(); - break; - case 2: - val = Feature.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.Peer.features"); - } - } - map[key ?? 0] = val ?? Feature.create(); - } - internalBinaryWrite(message: Peer, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string pub_key = 1; */ - if (message.pubKey !== "") - writer.tag(1, WireType.LengthDelimited).string(message.pubKey); - /* string address = 3; */ - if (message.address !== "") - writer.tag(3, WireType.LengthDelimited).string(message.address); - /* uint64 bytes_sent = 4; */ - if (message.bytesSent !== 0n) - writer.tag(4, WireType.Varint).uint64(message.bytesSent); - /* uint64 bytes_recv = 5; */ - if (message.bytesRecv !== 0n) - writer.tag(5, WireType.Varint).uint64(message.bytesRecv); - /* int64 sat_sent = 6; */ - if (message.satSent !== 0n) - writer.tag(6, WireType.Varint).int64(message.satSent); - /* int64 sat_recv = 7; */ - if (message.satRecv !== 0n) - writer.tag(7, WireType.Varint).int64(message.satRecv); - /* bool inbound = 8; */ - if (message.inbound !== false) - writer.tag(8, WireType.Varint).bool(message.inbound); - /* int64 ping_time = 9; */ - if (message.pingTime !== 0n) - writer.tag(9, WireType.Varint).int64(message.pingTime); - /* lnrpc.Peer.SyncType sync_type = 10; */ - if (message.syncType !== 0) - writer.tag(10, WireType.Varint).int32(message.syncType); - /* map features = 11; */ - for (let k of Object.keys(message.features)) { - writer.tag(11, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint32(parseInt(k)); - writer.tag(2, WireType.LengthDelimited).fork(); - Feature.internalBinaryWrite(message.features[k as any], writer, options); - writer.join().join(); - } - /* repeated lnrpc.TimestampedError errors = 12; */ - for (let i = 0; i < message.errors.length; i++) - TimestampedError.internalBinaryWrite(message.errors[i], writer.tag(12, WireType.LengthDelimited).fork(), options).join(); - /* int32 flap_count = 13; */ - if (message.flapCount !== 0) - writer.tag(13, WireType.Varint).int32(message.flapCount); - /* int64 last_flap_ns = 14; */ - if (message.lastFlapNs !== 0n) - writer.tag(14, WireType.Varint).int64(message.lastFlapNs); - /* bytes last_ping_payload = 15; */ - if (message.lastPingPayload.length) - writer.tag(15, WireType.LengthDelimited).bytes(message.lastPingPayload); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Peer - */ -export const Peer = new Peer$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class TimestampedError$Type extends MessageType { - constructor() { - super("lnrpc.TimestampedError", [ - { no: 1, name: "timestamp", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "error", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): TimestampedError { - const message = { timestamp: 0n, error: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TimestampedError): TimestampedError { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 timestamp */ 1: - message.timestamp = reader.uint64().toBigInt(); - break; - case /* string error */ 2: - message.error = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: TimestampedError, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 timestamp = 1; */ - if (message.timestamp !== 0n) - writer.tag(1, WireType.Varint).uint64(message.timestamp); - /* string error = 2; */ - if (message.error !== "") - writer.tag(2, WireType.LengthDelimited).string(message.error); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.TimestampedError - */ -export const TimestampedError = new TimestampedError$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListPeersRequest$Type extends MessageType { - constructor() { - super("lnrpc.ListPeersRequest", [ - { no: 1, name: "latest_error", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): ListPeersRequest { - const message = { latestError: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListPeersRequest): ListPeersRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool latest_error */ 1: - message.latestError = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ListPeersRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool latest_error = 1; */ - if (message.latestError !== false) - writer.tag(1, WireType.Varint).bool(message.latestError); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListPeersRequest - */ -export const ListPeersRequest = new ListPeersRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListPeersResponse$Type extends MessageType { - constructor() { - super("lnrpc.ListPeersResponse", [ - { no: 1, name: "peers", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Peer } - ]); - } - create(value?: PartialMessage): ListPeersResponse { - const message = { peers: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListPeersResponse): ListPeersResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.Peer peers */ 1: - message.peers.push(Peer.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ListPeersResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.Peer peers = 1; */ - for (let i = 0; i < message.peers.length; i++) - Peer.internalBinaryWrite(message.peers[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListPeersResponse - */ -export const ListPeersResponse = new ListPeersResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PeerEventSubscription$Type extends MessageType { - constructor() { - super("lnrpc.PeerEventSubscription", []); - } - create(value?: PartialMessage): PeerEventSubscription { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PeerEventSubscription): PeerEventSubscription { - return target ?? this.create(); - } - internalBinaryWrite(message: PeerEventSubscription, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PeerEventSubscription - */ -export const PeerEventSubscription = new PeerEventSubscription$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PeerEvent$Type extends MessageType { - constructor() { - super("lnrpc.PeerEvent", [ - { no: 1, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "type", kind: "enum", T: () => ["lnrpc.PeerEvent.EventType", PeerEvent_EventType] } - ]); - } - create(value?: PartialMessage): PeerEvent { - const message = { pubKey: "", type: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PeerEvent): PeerEvent { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string pub_key */ 1: - message.pubKey = reader.string(); - break; - case /* lnrpc.PeerEvent.EventType type */ 2: - message.type = reader.int32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PeerEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string pub_key = 1; */ - if (message.pubKey !== "") - writer.tag(1, WireType.LengthDelimited).string(message.pubKey); - /* lnrpc.PeerEvent.EventType type = 2; */ - if (message.type !== 0) - writer.tag(2, WireType.Varint).int32(message.type); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PeerEvent - */ -export const PeerEvent = new PeerEvent$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class GetInfoRequest$Type extends MessageType { - constructor() { - super("lnrpc.GetInfoRequest", []); - } - create(value?: PartialMessage): GetInfoRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetInfoRequest): GetInfoRequest { - return target ?? this.create(); - } - internalBinaryWrite(message: GetInfoRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.GetInfoRequest - */ -export const GetInfoRequest = new GetInfoRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class GetInfoResponse$Type extends MessageType { - constructor() { - super("lnrpc.GetInfoResponse", [ - { no: 14, name: "version", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 20, name: "commit_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 1, name: "identity_pubkey", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "alias", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 17, name: "color", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "num_pending_channels", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 4, name: "num_active_channels", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 15, name: "num_inactive_channels", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "num_peers", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 6, name: "block_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 8, name: "block_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 13, name: "best_header_timestamp", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 9, name: "synced_to_chain", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 18, name: "synced_to_graph", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 10, name: "testnet", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 16, name: "chains", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Chain }, - { no: 12, name: "uris", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ }, - { no: 19, name: "features", kind: "map", K: 13 /*ScalarType.UINT32*/, V: { kind: "message", T: () => Feature } }, - { no: 21, name: "require_htlc_interceptor", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): GetInfoResponse { - const message = { version: "", commitHash: "", identityPubkey: "", alias: "", color: "", numPendingChannels: 0, numActiveChannels: 0, numInactiveChannels: 0, numPeers: 0, blockHeight: 0, blockHash: "", bestHeaderTimestamp: 0n, syncedToChain: false, syncedToGraph: false, testnet: false, chains: [], uris: [], features: {}, requireHtlcInterceptor: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetInfoResponse): GetInfoResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string version */ 14: - message.version = reader.string(); - break; - case /* string commit_hash */ 20: - message.commitHash = reader.string(); - break; - case /* string identity_pubkey */ 1: - message.identityPubkey = reader.string(); - break; - case /* string alias */ 2: - message.alias = reader.string(); - break; - case /* string color */ 17: - message.color = reader.string(); - break; - case /* uint32 num_pending_channels */ 3: - message.numPendingChannels = reader.uint32(); - break; - case /* uint32 num_active_channels */ 4: - message.numActiveChannels = reader.uint32(); - break; - case /* uint32 num_inactive_channels */ 15: - message.numInactiveChannels = reader.uint32(); - break; - case /* uint32 num_peers */ 5: - message.numPeers = reader.uint32(); - break; - case /* uint32 block_height */ 6: - message.blockHeight = reader.uint32(); - break; - case /* string block_hash */ 8: - message.blockHash = reader.string(); - break; - case /* int64 best_header_timestamp */ 13: - message.bestHeaderTimestamp = reader.int64().toBigInt(); - break; - case /* bool synced_to_chain */ 9: - message.syncedToChain = reader.bool(); - break; - case /* bool synced_to_graph */ 18: - message.syncedToGraph = reader.bool(); - break; - case /* bool testnet = 10 [deprecated = true];*/ 10: - message.testnet = reader.bool(); - break; - case /* repeated lnrpc.Chain chains */ 16: - message.chains.push(Chain.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* repeated string uris */ 12: - message.uris.push(reader.string()); - break; - case /* map features */ 19: - this.binaryReadMap19(message.features, reader, options); - break; - case /* bool require_htlc_interceptor */ 21: - message.requireHtlcInterceptor = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap19(map: GetInfoResponse["features"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof GetInfoResponse["features"] | undefined, val: GetInfoResponse["features"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint32(); - break; - case 2: - val = Feature.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.GetInfoResponse.features"); - } - } - map[key ?? 0] = val ?? Feature.create(); - } - internalBinaryWrite(message: GetInfoResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string version = 14; */ - if (message.version !== "") - writer.tag(14, WireType.LengthDelimited).string(message.version); - /* string commit_hash = 20; */ - if (message.commitHash !== "") - writer.tag(20, WireType.LengthDelimited).string(message.commitHash); - /* string identity_pubkey = 1; */ - if (message.identityPubkey !== "") - writer.tag(1, WireType.LengthDelimited).string(message.identityPubkey); - /* string alias = 2; */ - if (message.alias !== "") - writer.tag(2, WireType.LengthDelimited).string(message.alias); - /* string color = 17; */ - if (message.color !== "") - writer.tag(17, WireType.LengthDelimited).string(message.color); - /* uint32 num_pending_channels = 3; */ - if (message.numPendingChannels !== 0) - writer.tag(3, WireType.Varint).uint32(message.numPendingChannels); - /* uint32 num_active_channels = 4; */ - if (message.numActiveChannels !== 0) - writer.tag(4, WireType.Varint).uint32(message.numActiveChannels); - /* uint32 num_inactive_channels = 15; */ - if (message.numInactiveChannels !== 0) - writer.tag(15, WireType.Varint).uint32(message.numInactiveChannels); - /* uint32 num_peers = 5; */ - if (message.numPeers !== 0) - writer.tag(5, WireType.Varint).uint32(message.numPeers); - /* uint32 block_height = 6; */ - if (message.blockHeight !== 0) - writer.tag(6, WireType.Varint).uint32(message.blockHeight); - /* string block_hash = 8; */ - if (message.blockHash !== "") - writer.tag(8, WireType.LengthDelimited).string(message.blockHash); - /* int64 best_header_timestamp = 13; */ - if (message.bestHeaderTimestamp !== 0n) - writer.tag(13, WireType.Varint).int64(message.bestHeaderTimestamp); - /* bool synced_to_chain = 9; */ - if (message.syncedToChain !== false) - writer.tag(9, WireType.Varint).bool(message.syncedToChain); - /* bool synced_to_graph = 18; */ - if (message.syncedToGraph !== false) - writer.tag(18, WireType.Varint).bool(message.syncedToGraph); - /* bool testnet = 10 [deprecated = true]; */ - if (message.testnet !== false) - writer.tag(10, WireType.Varint).bool(message.testnet); - /* repeated lnrpc.Chain chains = 16; */ - for (let i = 0; i < message.chains.length; i++) - Chain.internalBinaryWrite(message.chains[i], writer.tag(16, WireType.LengthDelimited).fork(), options).join(); - /* repeated string uris = 12; */ - for (let i = 0; i < message.uris.length; i++) - writer.tag(12, WireType.LengthDelimited).string(message.uris[i]); - /* map features = 19; */ - for (let k of Object.keys(message.features)) { - writer.tag(19, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint32(parseInt(k)); - writer.tag(2, WireType.LengthDelimited).fork(); - Feature.internalBinaryWrite(message.features[k as any], writer, options); - writer.join().join(); - } - /* bool require_htlc_interceptor = 21; */ - if (message.requireHtlcInterceptor !== false) - writer.tag(21, WireType.Varint).bool(message.requireHtlcInterceptor); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.GetInfoResponse - */ -export const GetInfoResponse = new GetInfoResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class GetRecoveryInfoRequest$Type extends MessageType { - constructor() { - super("lnrpc.GetRecoveryInfoRequest", []); - } - create(value?: PartialMessage): GetRecoveryInfoRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetRecoveryInfoRequest): GetRecoveryInfoRequest { - return target ?? this.create(); - } - internalBinaryWrite(message: GetRecoveryInfoRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.GetRecoveryInfoRequest - */ -export const GetRecoveryInfoRequest = new GetRecoveryInfoRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class GetRecoveryInfoResponse$Type extends MessageType { - constructor() { - super("lnrpc.GetRecoveryInfoResponse", [ - { no: 1, name: "recovery_mode", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "recovery_finished", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 3, name: "progress", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ } - ]); - } - create(value?: PartialMessage): GetRecoveryInfoResponse { - const message = { recoveryMode: false, recoveryFinished: false, progress: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetRecoveryInfoResponse): GetRecoveryInfoResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool recovery_mode */ 1: - message.recoveryMode = reader.bool(); - break; - case /* bool recovery_finished */ 2: - message.recoveryFinished = reader.bool(); - break; - case /* double progress */ 3: - message.progress = reader.double(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: GetRecoveryInfoResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool recovery_mode = 1; */ - if (message.recoveryMode !== false) - writer.tag(1, WireType.Varint).bool(message.recoveryMode); - /* bool recovery_finished = 2; */ - if (message.recoveryFinished !== false) - writer.tag(2, WireType.Varint).bool(message.recoveryFinished); - /* double progress = 3; */ - if (message.progress !== 0) - writer.tag(3, WireType.Bit64).double(message.progress); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.GetRecoveryInfoResponse - */ -export const GetRecoveryInfoResponse = new GetRecoveryInfoResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Chain$Type extends MessageType { - constructor() { - super("lnrpc.Chain", [ - { no: 1, name: "chain", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "network", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): Chain { - const message = { chain: "", network: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Chain): Chain { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string chain */ 1: - message.chain = reader.string(); - break; - case /* string network */ 2: - message.network = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: Chain, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string chain = 1; */ - if (message.chain !== "") - writer.tag(1, WireType.LengthDelimited).string(message.chain); - /* string network = 2; */ - if (message.network !== "") - writer.tag(2, WireType.LengthDelimited).string(message.network); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Chain - */ -export const Chain = new Chain$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ConfirmationUpdate$Type extends MessageType { - constructor() { - super("lnrpc.ConfirmationUpdate", [ - { no: 1, name: "block_sha", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "block_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 3, name: "num_confs_left", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value?: PartialMessage): ConfirmationUpdate { - const message = { blockSha: new Uint8Array(0), blockHeight: 0, numConfsLeft: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ConfirmationUpdate): ConfirmationUpdate { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes block_sha */ 1: - message.blockSha = reader.bytes(); - break; - case /* int32 block_height */ 2: - message.blockHeight = reader.int32(); - break; - case /* uint32 num_confs_left */ 3: - message.numConfsLeft = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ConfirmationUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes block_sha = 1; */ - if (message.blockSha.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.blockSha); - /* int32 block_height = 2; */ - if (message.blockHeight !== 0) - writer.tag(2, WireType.Varint).int32(message.blockHeight); - /* uint32 num_confs_left = 3; */ - if (message.numConfsLeft !== 0) - writer.tag(3, WireType.Varint).uint32(message.numConfsLeft); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ConfirmationUpdate - */ -export const ConfirmationUpdate = new ConfirmationUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelOpenUpdate$Type extends MessageType { - constructor() { - super("lnrpc.ChannelOpenUpdate", [ - { no: 1, name: "channel_point", kind: "message", T: () => ChannelPoint } - ]); - } - create(value?: PartialMessage): ChannelOpenUpdate { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelOpenUpdate): ChannelOpenUpdate { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ChannelPoint channel_point */ 1: - message.channelPoint = ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.channelPoint); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChannelOpenUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.ChannelPoint channel_point = 1; */ - if (message.channelPoint) - ChannelPoint.internalBinaryWrite(message.channelPoint, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelOpenUpdate - */ -export const ChannelOpenUpdate = new ChannelOpenUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelCloseUpdate$Type extends MessageType { - constructor() { - super("lnrpc.ChannelCloseUpdate", [ - { no: 1, name: "closing_txid", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "success", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): ChannelCloseUpdate { - const message = { closingTxid: new Uint8Array(0), success: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelCloseUpdate): ChannelCloseUpdate { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes closing_txid */ 1: - message.closingTxid = reader.bytes(); - break; - case /* bool success */ 2: - message.success = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChannelCloseUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes closing_txid = 1; */ - if (message.closingTxid.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.closingTxid); - /* bool success = 2; */ - if (message.success !== false) - writer.tag(2, WireType.Varint).bool(message.success); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelCloseUpdate - */ -export const ChannelCloseUpdate = new ChannelCloseUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class CloseChannelRequest$Type extends MessageType { - constructor() { - super("lnrpc.CloseChannelRequest", [ - { no: 1, name: "channel_point", kind: "message", T: () => ChannelPoint }, - { no: 2, name: "force", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 3, name: "target_conf", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 4, name: "sat_per_byte", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "delivery_address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 6, name: "sat_per_vbyte", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 7, name: "max_fee_per_vbyte", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): CloseChannelRequest { - const message = { force: false, targetConf: 0, satPerByte: 0n, deliveryAddress: "", satPerVbyte: 0n, maxFeePerVbyte: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CloseChannelRequest): CloseChannelRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ChannelPoint channel_point */ 1: - message.channelPoint = ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.channelPoint); - break; - case /* bool force */ 2: - message.force = reader.bool(); - break; - case /* int32 target_conf */ 3: - message.targetConf = reader.int32(); - break; - case /* int64 sat_per_byte = 4 [deprecated = true];*/ 4: - message.satPerByte = reader.int64().toBigInt(); - break; - case /* string delivery_address */ 5: - message.deliveryAddress = reader.string(); - break; - case /* uint64 sat_per_vbyte */ 6: - message.satPerVbyte = reader.uint64().toBigInt(); - break; - case /* uint64 max_fee_per_vbyte */ 7: - message.maxFeePerVbyte = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: CloseChannelRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.ChannelPoint channel_point = 1; */ - if (message.channelPoint) - ChannelPoint.internalBinaryWrite(message.channelPoint, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* bool force = 2; */ - if (message.force !== false) - writer.tag(2, WireType.Varint).bool(message.force); - /* int32 target_conf = 3; */ - if (message.targetConf !== 0) - writer.tag(3, WireType.Varint).int32(message.targetConf); - /* int64 sat_per_byte = 4 [deprecated = true]; */ - if (message.satPerByte !== 0n) - writer.tag(4, WireType.Varint).int64(message.satPerByte); - /* string delivery_address = 5; */ - if (message.deliveryAddress !== "") - writer.tag(5, WireType.LengthDelimited).string(message.deliveryAddress); - /* uint64 sat_per_vbyte = 6; */ - if (message.satPerVbyte !== 0n) - writer.tag(6, WireType.Varint).uint64(message.satPerVbyte); - /* uint64 max_fee_per_vbyte = 7; */ - if (message.maxFeePerVbyte !== 0n) - writer.tag(7, WireType.Varint).uint64(message.maxFeePerVbyte); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.CloseChannelRequest - */ -export const CloseChannelRequest = new CloseChannelRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class CloseStatusUpdate$Type extends MessageType { - constructor() { - super("lnrpc.CloseStatusUpdate", [ - { no: 1, name: "close_pending", kind: "message", oneof: "update", T: () => PendingUpdate }, - { no: 3, name: "chan_close", kind: "message", oneof: "update", T: () => ChannelCloseUpdate } - ]); - } - create(value?: PartialMessage): CloseStatusUpdate { - const message = { update: { oneofKind: undefined } }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CloseStatusUpdate): CloseStatusUpdate { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.PendingUpdate close_pending */ 1: - message.update = { - oneofKind: "closePending", - closePending: PendingUpdate.internalBinaryRead(reader, reader.uint32(), options, (message.update as any).closePending) - }; - break; - case /* lnrpc.ChannelCloseUpdate chan_close */ 3: - message.update = { - oneofKind: "chanClose", - chanClose: ChannelCloseUpdate.internalBinaryRead(reader, reader.uint32(), options, (message.update as any).chanClose) - }; - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: CloseStatusUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.PendingUpdate close_pending = 1; */ - if (message.update.oneofKind === "closePending") - PendingUpdate.internalBinaryWrite(message.update.closePending, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.ChannelCloseUpdate chan_close = 3; */ - if (message.update.oneofKind === "chanClose") - ChannelCloseUpdate.internalBinaryWrite(message.update.chanClose, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.CloseStatusUpdate - */ -export const CloseStatusUpdate = new CloseStatusUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingUpdate$Type extends MessageType { - constructor() { - super("lnrpc.PendingUpdate", [ - { no: 1, name: "txid", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "output_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value?: PartialMessage): PendingUpdate { - const message = { txid: new Uint8Array(0), outputIndex: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingUpdate): PendingUpdate { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes txid */ 1: - message.txid = reader.bytes(); - break; - case /* uint32 output_index */ 2: - message.outputIndex = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PendingUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes txid = 1; */ - if (message.txid.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.txid); - /* uint32 output_index = 2; */ - if (message.outputIndex !== 0) - writer.tag(2, WireType.Varint).uint32(message.outputIndex); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingUpdate - */ -export const PendingUpdate = new PendingUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ReadyForPsbtFunding$Type extends MessageType { - constructor() { - super("lnrpc.ReadyForPsbtFunding", [ - { no: 1, name: "funding_address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "funding_amount", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "psbt", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): ReadyForPsbtFunding { - const message = { fundingAddress: "", fundingAmount: 0n, psbt: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ReadyForPsbtFunding): ReadyForPsbtFunding { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string funding_address */ 1: - message.fundingAddress = reader.string(); - break; - case /* int64 funding_amount */ 2: - message.fundingAmount = reader.int64().toBigInt(); - break; - case /* bytes psbt */ 3: - message.psbt = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ReadyForPsbtFunding, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string funding_address = 1; */ - if (message.fundingAddress !== "") - writer.tag(1, WireType.LengthDelimited).string(message.fundingAddress); - /* int64 funding_amount = 2; */ - if (message.fundingAmount !== 0n) - writer.tag(2, WireType.Varint).int64(message.fundingAmount); - /* bytes psbt = 3; */ - if (message.psbt.length) - writer.tag(3, WireType.LengthDelimited).bytes(message.psbt); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ReadyForPsbtFunding - */ -export const ReadyForPsbtFunding = new ReadyForPsbtFunding$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class BatchOpenChannelRequest$Type extends MessageType { - constructor() { - super("lnrpc.BatchOpenChannelRequest", [ - { no: 1, name: "channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => BatchOpenChannel }, - { no: 2, name: "target_conf", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 3, name: "sat_per_vbyte", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "min_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 5, name: "spend_unconfirmed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 6, name: "label", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): BatchOpenChannelRequest { - const message = { channels: [], targetConf: 0, satPerVbyte: 0n, minConfs: 0, spendUnconfirmed: false, label: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BatchOpenChannelRequest): BatchOpenChannelRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.BatchOpenChannel channels */ 1: - message.channels.push(BatchOpenChannel.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* int32 target_conf */ 2: - message.targetConf = reader.int32(); - break; - case /* int64 sat_per_vbyte */ 3: - message.satPerVbyte = reader.int64().toBigInt(); - break; - case /* int32 min_confs */ 4: - message.minConfs = reader.int32(); - break; - case /* bool spend_unconfirmed */ 5: - message.spendUnconfirmed = reader.bool(); - break; - case /* string label */ 6: - message.label = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: BatchOpenChannelRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.BatchOpenChannel channels = 1; */ - for (let i = 0; i < message.channels.length; i++) - BatchOpenChannel.internalBinaryWrite(message.channels[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* int32 target_conf = 2; */ - if (message.targetConf !== 0) - writer.tag(2, WireType.Varint).int32(message.targetConf); - /* int64 sat_per_vbyte = 3; */ - if (message.satPerVbyte !== 0n) - writer.tag(3, WireType.Varint).int64(message.satPerVbyte); - /* int32 min_confs = 4; */ - if (message.minConfs !== 0) - writer.tag(4, WireType.Varint).int32(message.minConfs); - /* bool spend_unconfirmed = 5; */ - if (message.spendUnconfirmed !== false) - writer.tag(5, WireType.Varint).bool(message.spendUnconfirmed); - /* string label = 6; */ - if (message.label !== "") - writer.tag(6, WireType.LengthDelimited).string(message.label); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.BatchOpenChannelRequest - */ -export const BatchOpenChannelRequest = new BatchOpenChannelRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class BatchOpenChannel$Type extends MessageType { - constructor() { - super("lnrpc.BatchOpenChannel", [ - { no: 1, name: "node_pubkey", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "local_funding_amount", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "push_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "private", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 5, name: "min_htlc_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "remote_csv_delay", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 7, name: "close_address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 8, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 9, name: "commitment_type", kind: "enum", T: () => ["lnrpc.CommitmentType", CommitmentType] } - ]); - } - create(value?: PartialMessage): BatchOpenChannel { - const message = { nodePubkey: new Uint8Array(0), localFundingAmount: 0n, pushSat: 0n, private: false, minHtlcMsat: 0n, remoteCsvDelay: 0, closeAddress: "", pendingChanId: new Uint8Array(0), commitmentType: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BatchOpenChannel): BatchOpenChannel { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes node_pubkey */ 1: - message.nodePubkey = reader.bytes(); - break; - case /* int64 local_funding_amount */ 2: - message.localFundingAmount = reader.int64().toBigInt(); - break; - case /* int64 push_sat */ 3: - message.pushSat = reader.int64().toBigInt(); - break; - case /* bool private */ 4: - message.private = reader.bool(); - break; - case /* int64 min_htlc_msat */ 5: - message.minHtlcMsat = reader.int64().toBigInt(); - break; - case /* uint32 remote_csv_delay */ 6: - message.remoteCsvDelay = reader.uint32(); - break; - case /* string close_address */ 7: - message.closeAddress = reader.string(); - break; - case /* bytes pending_chan_id */ 8: - message.pendingChanId = reader.bytes(); - break; - case /* lnrpc.CommitmentType commitment_type */ 9: - message.commitmentType = reader.int32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: BatchOpenChannel, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes node_pubkey = 1; */ - if (message.nodePubkey.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.nodePubkey); - /* int64 local_funding_amount = 2; */ - if (message.localFundingAmount !== 0n) - writer.tag(2, WireType.Varint).int64(message.localFundingAmount); - /* int64 push_sat = 3; */ - if (message.pushSat !== 0n) - writer.tag(3, WireType.Varint).int64(message.pushSat); - /* bool private = 4; */ - if (message.private !== false) - writer.tag(4, WireType.Varint).bool(message.private); - /* int64 min_htlc_msat = 5; */ - if (message.minHtlcMsat !== 0n) - writer.tag(5, WireType.Varint).int64(message.minHtlcMsat); - /* uint32 remote_csv_delay = 6; */ - if (message.remoteCsvDelay !== 0) - writer.tag(6, WireType.Varint).uint32(message.remoteCsvDelay); - /* string close_address = 7; */ - if (message.closeAddress !== "") - writer.tag(7, WireType.LengthDelimited).string(message.closeAddress); - /* bytes pending_chan_id = 8; */ - if (message.pendingChanId.length) - writer.tag(8, WireType.LengthDelimited).bytes(message.pendingChanId); - /* lnrpc.CommitmentType commitment_type = 9; */ - if (message.commitmentType !== 0) - writer.tag(9, WireType.Varint).int32(message.commitmentType); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.BatchOpenChannel - */ -export const BatchOpenChannel = new BatchOpenChannel$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class BatchOpenChannelResponse$Type extends MessageType { - constructor() { - super("lnrpc.BatchOpenChannelResponse", [ - { no: 1, name: "pending_channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => PendingUpdate } - ]); - } - create(value?: PartialMessage): BatchOpenChannelResponse { - const message = { pendingChannels: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BatchOpenChannelResponse): BatchOpenChannelResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.PendingUpdate pending_channels */ 1: - message.pendingChannels.push(PendingUpdate.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: BatchOpenChannelResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.PendingUpdate pending_channels = 1; */ - for (let i = 0; i < message.pendingChannels.length; i++) - PendingUpdate.internalBinaryWrite(message.pendingChannels[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.BatchOpenChannelResponse - */ -export const BatchOpenChannelResponse = new BatchOpenChannelResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class OpenChannelRequest$Type extends MessageType { - constructor() { - super("lnrpc.OpenChannelRequest", [ - { no: 1, name: "sat_per_vbyte", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "node_pubkey", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "node_pubkey_string", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "local_funding_amount", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "push_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "target_conf", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 7, name: "sat_per_byte", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 8, name: "private", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 9, name: "min_htlc_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 10, name: "remote_csv_delay", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 11, name: "min_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 12, name: "spend_unconfirmed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 13, name: "close_address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 14, name: "funding_shim", kind: "message", T: () => FundingShim }, - { no: 15, name: "remote_max_value_in_flight_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 16, name: "remote_max_htlcs", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 17, name: "max_local_csv", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 18, name: "commitment_type", kind: "enum", T: () => ["lnrpc.CommitmentType", CommitmentType] }, - { no: 19, name: "zero_conf", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 20, name: "scid_alias", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 21, name: "base_fee", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 22, name: "fee_rate", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 23, name: "use_base_fee", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 24, name: "use_fee_rate", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 25, name: "remote_chan_reserve_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): OpenChannelRequest { - const message = { satPerVbyte: 0n, nodePubkey: new Uint8Array(0), nodePubkeyString: "", localFundingAmount: 0n, pushSat: 0n, targetConf: 0, satPerByte: 0n, private: false, minHtlcMsat: 0n, remoteCsvDelay: 0, minConfs: 0, spendUnconfirmed: false, closeAddress: "", remoteMaxValueInFlightMsat: 0n, remoteMaxHtlcs: 0, maxLocalCsv: 0, commitmentType: 0, zeroConf: false, scidAlias: false, baseFee: 0n, feeRate: 0n, useBaseFee: false, useFeeRate: false, remoteChanReserveSat: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: OpenChannelRequest): OpenChannelRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 sat_per_vbyte */ 1: - message.satPerVbyte = reader.uint64().toBigInt(); - break; - case /* bytes node_pubkey */ 2: - message.nodePubkey = reader.bytes(); - break; - case /* string node_pubkey_string = 3 [deprecated = true];*/ 3: - message.nodePubkeyString = reader.string(); - break; - case /* int64 local_funding_amount */ 4: - message.localFundingAmount = reader.int64().toBigInt(); - break; - case /* int64 push_sat */ 5: - message.pushSat = reader.int64().toBigInt(); - break; - case /* int32 target_conf */ 6: - message.targetConf = reader.int32(); - break; - case /* int64 sat_per_byte = 7 [deprecated = true];*/ 7: - message.satPerByte = reader.int64().toBigInt(); - break; - case /* bool private */ 8: - message.private = reader.bool(); - break; - case /* int64 min_htlc_msat */ 9: - message.minHtlcMsat = reader.int64().toBigInt(); - break; - case /* uint32 remote_csv_delay */ 10: - message.remoteCsvDelay = reader.uint32(); - break; - case /* int32 min_confs */ 11: - message.minConfs = reader.int32(); - break; - case /* bool spend_unconfirmed */ 12: - message.spendUnconfirmed = reader.bool(); - break; - case /* string close_address */ 13: - message.closeAddress = reader.string(); - break; - case /* lnrpc.FundingShim funding_shim */ 14: - message.fundingShim = FundingShim.internalBinaryRead(reader, reader.uint32(), options, message.fundingShim); - break; - case /* uint64 remote_max_value_in_flight_msat */ 15: - message.remoteMaxValueInFlightMsat = reader.uint64().toBigInt(); - break; - case /* uint32 remote_max_htlcs */ 16: - message.remoteMaxHtlcs = reader.uint32(); - break; - case /* uint32 max_local_csv */ 17: - message.maxLocalCsv = reader.uint32(); - break; - case /* lnrpc.CommitmentType commitment_type */ 18: - message.commitmentType = reader.int32(); - break; - case /* bool zero_conf */ 19: - message.zeroConf = reader.bool(); - break; - case /* bool scid_alias */ 20: - message.scidAlias = reader.bool(); - break; - case /* uint64 base_fee */ 21: - message.baseFee = reader.uint64().toBigInt(); - break; - case /* uint64 fee_rate */ 22: - message.feeRate = reader.uint64().toBigInt(); - break; - case /* bool use_base_fee */ 23: - message.useBaseFee = reader.bool(); - break; - case /* bool use_fee_rate */ 24: - message.useFeeRate = reader.bool(); - break; - case /* uint64 remote_chan_reserve_sat */ 25: - message.remoteChanReserveSat = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: OpenChannelRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 sat_per_vbyte = 1; */ - if (message.satPerVbyte !== 0n) - writer.tag(1, WireType.Varint).uint64(message.satPerVbyte); - /* bytes node_pubkey = 2; */ - if (message.nodePubkey.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.nodePubkey); - /* string node_pubkey_string = 3 [deprecated = true]; */ - if (message.nodePubkeyString !== "") - writer.tag(3, WireType.LengthDelimited).string(message.nodePubkeyString); - /* int64 local_funding_amount = 4; */ - if (message.localFundingAmount !== 0n) - writer.tag(4, WireType.Varint).int64(message.localFundingAmount); - /* int64 push_sat = 5; */ - if (message.pushSat !== 0n) - writer.tag(5, WireType.Varint).int64(message.pushSat); - /* int32 target_conf = 6; */ - if (message.targetConf !== 0) - writer.tag(6, WireType.Varint).int32(message.targetConf); - /* int64 sat_per_byte = 7 [deprecated = true]; */ - if (message.satPerByte !== 0n) - writer.tag(7, WireType.Varint).int64(message.satPerByte); - /* bool private = 8; */ - if (message.private !== false) - writer.tag(8, WireType.Varint).bool(message.private); - /* int64 min_htlc_msat = 9; */ - if (message.minHtlcMsat !== 0n) - writer.tag(9, WireType.Varint).int64(message.minHtlcMsat); - /* uint32 remote_csv_delay = 10; */ - if (message.remoteCsvDelay !== 0) - writer.tag(10, WireType.Varint).uint32(message.remoteCsvDelay); - /* int32 min_confs = 11; */ - if (message.minConfs !== 0) - writer.tag(11, WireType.Varint).int32(message.minConfs); - /* bool spend_unconfirmed = 12; */ - if (message.spendUnconfirmed !== false) - writer.tag(12, WireType.Varint).bool(message.spendUnconfirmed); - /* string close_address = 13; */ - if (message.closeAddress !== "") - writer.tag(13, WireType.LengthDelimited).string(message.closeAddress); - /* lnrpc.FundingShim funding_shim = 14; */ - if (message.fundingShim) - FundingShim.internalBinaryWrite(message.fundingShim, writer.tag(14, WireType.LengthDelimited).fork(), options).join(); - /* uint64 remote_max_value_in_flight_msat = 15; */ - if (message.remoteMaxValueInFlightMsat !== 0n) - writer.tag(15, WireType.Varint).uint64(message.remoteMaxValueInFlightMsat); - /* uint32 remote_max_htlcs = 16; */ - if (message.remoteMaxHtlcs !== 0) - writer.tag(16, WireType.Varint).uint32(message.remoteMaxHtlcs); - /* uint32 max_local_csv = 17; */ - if (message.maxLocalCsv !== 0) - writer.tag(17, WireType.Varint).uint32(message.maxLocalCsv); - /* lnrpc.CommitmentType commitment_type = 18; */ - if (message.commitmentType !== 0) - writer.tag(18, WireType.Varint).int32(message.commitmentType); - /* bool zero_conf = 19; */ - if (message.zeroConf !== false) - writer.tag(19, WireType.Varint).bool(message.zeroConf); - /* bool scid_alias = 20; */ - if (message.scidAlias !== false) - writer.tag(20, WireType.Varint).bool(message.scidAlias); - /* uint64 base_fee = 21; */ - if (message.baseFee !== 0n) - writer.tag(21, WireType.Varint).uint64(message.baseFee); - /* uint64 fee_rate = 22; */ - if (message.feeRate !== 0n) - writer.tag(22, WireType.Varint).uint64(message.feeRate); - /* bool use_base_fee = 23; */ - if (message.useBaseFee !== false) - writer.tag(23, WireType.Varint).bool(message.useBaseFee); - /* bool use_fee_rate = 24; */ - if (message.useFeeRate !== false) - writer.tag(24, WireType.Varint).bool(message.useFeeRate); - /* uint64 remote_chan_reserve_sat = 25; */ - if (message.remoteChanReserveSat !== 0n) - writer.tag(25, WireType.Varint).uint64(message.remoteChanReserveSat); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.OpenChannelRequest - */ -export const OpenChannelRequest = new OpenChannelRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class OpenStatusUpdate$Type extends MessageType { - constructor() { - super("lnrpc.OpenStatusUpdate", [ - { no: 1, name: "chan_pending", kind: "message", oneof: "update", T: () => PendingUpdate }, - { no: 3, name: "chan_open", kind: "message", oneof: "update", T: () => ChannelOpenUpdate }, - { no: 5, name: "psbt_fund", kind: "message", oneof: "update", T: () => ReadyForPsbtFunding }, - { no: 4, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): OpenStatusUpdate { - const message = { update: { oneofKind: undefined }, pendingChanId: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: OpenStatusUpdate): OpenStatusUpdate { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.PendingUpdate chan_pending */ 1: - message.update = { - oneofKind: "chanPending", - chanPending: PendingUpdate.internalBinaryRead(reader, reader.uint32(), options, (message.update as any).chanPending) - }; - break; - case /* lnrpc.ChannelOpenUpdate chan_open */ 3: - message.update = { - oneofKind: "chanOpen", - chanOpen: ChannelOpenUpdate.internalBinaryRead(reader, reader.uint32(), options, (message.update as any).chanOpen) - }; - break; - case /* lnrpc.ReadyForPsbtFunding psbt_fund */ 5: - message.update = { - oneofKind: "psbtFund", - psbtFund: ReadyForPsbtFunding.internalBinaryRead(reader, reader.uint32(), options, (message.update as any).psbtFund) - }; - break; - case /* bytes pending_chan_id */ 4: - message.pendingChanId = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: OpenStatusUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.PendingUpdate chan_pending = 1; */ - if (message.update.oneofKind === "chanPending") - PendingUpdate.internalBinaryWrite(message.update.chanPending, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.ChannelOpenUpdate chan_open = 3; */ - if (message.update.oneofKind === "chanOpen") - ChannelOpenUpdate.internalBinaryWrite(message.update.chanOpen, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.ReadyForPsbtFunding psbt_fund = 5; */ - if (message.update.oneofKind === "psbtFund") - ReadyForPsbtFunding.internalBinaryWrite(message.update.psbtFund, writer.tag(5, WireType.LengthDelimited).fork(), options).join(); - /* bytes pending_chan_id = 4; */ - if (message.pendingChanId.length) - writer.tag(4, WireType.LengthDelimited).bytes(message.pendingChanId); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.OpenStatusUpdate - */ -export const OpenStatusUpdate = new OpenStatusUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class KeyLocator$Type extends MessageType { - constructor() { - super("lnrpc.KeyLocator", [ - { no: 1, name: "key_family", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 2, name: "key_index", kind: "scalar", T: 5 /*ScalarType.INT32*/ } - ]); - } - create(value?: PartialMessage): KeyLocator { - const message = { keyFamily: 0, keyIndex: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: KeyLocator): KeyLocator { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int32 key_family */ 1: - message.keyFamily = reader.int32(); - break; - case /* int32 key_index */ 2: - message.keyIndex = reader.int32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: KeyLocator, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* int32 key_family = 1; */ - if (message.keyFamily !== 0) - writer.tag(1, WireType.Varint).int32(message.keyFamily); - /* int32 key_index = 2; */ - if (message.keyIndex !== 0) - writer.tag(2, WireType.Varint).int32(message.keyIndex); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.KeyLocator - */ -export const KeyLocator = new KeyLocator$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class KeyDescriptor$Type extends MessageType { - constructor() { - super("lnrpc.KeyDescriptor", [ - { no: 1, name: "raw_key_bytes", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "key_loc", kind: "message", T: () => KeyLocator } - ]); - } - create(value?: PartialMessage): KeyDescriptor { - const message = { rawKeyBytes: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: KeyDescriptor): KeyDescriptor { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes raw_key_bytes */ 1: - message.rawKeyBytes = reader.bytes(); - break; - case /* lnrpc.KeyLocator key_loc */ 2: - message.keyLoc = KeyLocator.internalBinaryRead(reader, reader.uint32(), options, message.keyLoc); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: KeyDescriptor, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes raw_key_bytes = 1; */ - if (message.rawKeyBytes.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.rawKeyBytes); - /* lnrpc.KeyLocator key_loc = 2; */ - if (message.keyLoc) - KeyLocator.internalBinaryWrite(message.keyLoc, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.KeyDescriptor - */ -export const KeyDescriptor = new KeyDescriptor$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChanPointShim$Type extends MessageType { - constructor() { - super("lnrpc.ChanPointShim", [ - { no: 1, name: "amt", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "chan_point", kind: "message", T: () => ChannelPoint }, - { no: 3, name: "local_key", kind: "message", T: () => KeyDescriptor }, - { no: 4, name: "remote_key", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 5, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 6, name: "thaw_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value?: PartialMessage): ChanPointShim { - const message = { amt: 0n, remoteKey: new Uint8Array(0), pendingChanId: new Uint8Array(0), thawHeight: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChanPointShim): ChanPointShim { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 amt */ 1: - message.amt = reader.int64().toBigInt(); - break; - case /* lnrpc.ChannelPoint chan_point */ 2: - message.chanPoint = ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.chanPoint); - break; - case /* lnrpc.KeyDescriptor local_key */ 3: - message.localKey = KeyDescriptor.internalBinaryRead(reader, reader.uint32(), options, message.localKey); - break; - case /* bytes remote_key */ 4: - message.remoteKey = reader.bytes(); - break; - case /* bytes pending_chan_id */ 5: - message.pendingChanId = reader.bytes(); - break; - case /* uint32 thaw_height */ 6: - message.thawHeight = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChanPointShim, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* int64 amt = 1; */ - if (message.amt !== 0n) - writer.tag(1, WireType.Varint).int64(message.amt); - /* lnrpc.ChannelPoint chan_point = 2; */ - if (message.chanPoint) - ChannelPoint.internalBinaryWrite(message.chanPoint, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.KeyDescriptor local_key = 3; */ - if (message.localKey) - KeyDescriptor.internalBinaryWrite(message.localKey, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); - /* bytes remote_key = 4; */ - if (message.remoteKey.length) - writer.tag(4, WireType.LengthDelimited).bytes(message.remoteKey); - /* bytes pending_chan_id = 5; */ - if (message.pendingChanId.length) - writer.tag(5, WireType.LengthDelimited).bytes(message.pendingChanId); - /* uint32 thaw_height = 6; */ - if (message.thawHeight !== 0) - writer.tag(6, WireType.Varint).uint32(message.thawHeight); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChanPointShim - */ -export const ChanPointShim = new ChanPointShim$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PsbtShim$Type extends MessageType { - constructor() { - super("lnrpc.PsbtShim", [ - { no: 1, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "base_psbt", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "no_publish", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): PsbtShim { - const message = { pendingChanId: new Uint8Array(0), basePsbt: new Uint8Array(0), noPublish: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PsbtShim): PsbtShim { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes pending_chan_id */ 1: - message.pendingChanId = reader.bytes(); - break; - case /* bytes base_psbt */ 2: - message.basePsbt = reader.bytes(); - break; - case /* bool no_publish */ 3: - message.noPublish = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PsbtShim, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes pending_chan_id = 1; */ - if (message.pendingChanId.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.pendingChanId); - /* bytes base_psbt = 2; */ - if (message.basePsbt.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.basePsbt); - /* bool no_publish = 3; */ - if (message.noPublish !== false) - writer.tag(3, WireType.Varint).bool(message.noPublish); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PsbtShim - */ -export const PsbtShim = new PsbtShim$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FundingShim$Type extends MessageType { - constructor() { - super("lnrpc.FundingShim", [ - { no: 1, name: "chan_point_shim", kind: "message", oneof: "shim", T: () => ChanPointShim }, - { no: 2, name: "psbt_shim", kind: "message", oneof: "shim", T: () => PsbtShim } - ]); - } - create(value?: PartialMessage): FundingShim { - const message = { shim: { oneofKind: undefined } }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FundingShim): FundingShim { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ChanPointShim chan_point_shim */ 1: - message.shim = { - oneofKind: "chanPointShim", - chanPointShim: ChanPointShim.internalBinaryRead(reader, reader.uint32(), options, (message.shim as any).chanPointShim) - }; - break; - case /* lnrpc.PsbtShim psbt_shim */ 2: - message.shim = { - oneofKind: "psbtShim", - psbtShim: PsbtShim.internalBinaryRead(reader, reader.uint32(), options, (message.shim as any).psbtShim) - }; - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: FundingShim, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.ChanPointShim chan_point_shim = 1; */ - if (message.shim.oneofKind === "chanPointShim") - ChanPointShim.internalBinaryWrite(message.shim.chanPointShim, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.PsbtShim psbt_shim = 2; */ - if (message.shim.oneofKind === "psbtShim") - PsbtShim.internalBinaryWrite(message.shim.psbtShim, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FundingShim - */ -export const FundingShim = new FundingShim$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FundingShimCancel$Type extends MessageType { - constructor() { - super("lnrpc.FundingShimCancel", [ - { no: 1, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): FundingShimCancel { - const message = { pendingChanId: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FundingShimCancel): FundingShimCancel { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes pending_chan_id */ 1: - message.pendingChanId = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: FundingShimCancel, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes pending_chan_id = 1; */ - if (message.pendingChanId.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.pendingChanId); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FundingShimCancel - */ -export const FundingShimCancel = new FundingShimCancel$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FundingPsbtVerify$Type extends MessageType { - constructor() { - super("lnrpc.FundingPsbtVerify", [ - { no: 1, name: "funded_psbt", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "skip_finalize", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): FundingPsbtVerify { - const message = { fundedPsbt: new Uint8Array(0), pendingChanId: new Uint8Array(0), skipFinalize: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FundingPsbtVerify): FundingPsbtVerify { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes funded_psbt */ 1: - message.fundedPsbt = reader.bytes(); - break; - case /* bytes pending_chan_id */ 2: - message.pendingChanId = reader.bytes(); - break; - case /* bool skip_finalize */ 3: - message.skipFinalize = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: FundingPsbtVerify, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes funded_psbt = 1; */ - if (message.fundedPsbt.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.fundedPsbt); - /* bytes pending_chan_id = 2; */ - if (message.pendingChanId.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.pendingChanId); - /* bool skip_finalize = 3; */ - if (message.skipFinalize !== false) - writer.tag(3, WireType.Varint).bool(message.skipFinalize); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FundingPsbtVerify - */ -export const FundingPsbtVerify = new FundingPsbtVerify$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FundingPsbtFinalize$Type extends MessageType { - constructor() { - super("lnrpc.FundingPsbtFinalize", [ - { no: 1, name: "signed_psbt", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "final_raw_tx", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): FundingPsbtFinalize { - const message = { signedPsbt: new Uint8Array(0), pendingChanId: new Uint8Array(0), finalRawTx: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FundingPsbtFinalize): FundingPsbtFinalize { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes signed_psbt */ 1: - message.signedPsbt = reader.bytes(); - break; - case /* bytes pending_chan_id */ 2: - message.pendingChanId = reader.bytes(); - break; - case /* bytes final_raw_tx */ 3: - message.finalRawTx = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: FundingPsbtFinalize, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes signed_psbt = 1; */ - if (message.signedPsbt.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.signedPsbt); - /* bytes pending_chan_id = 2; */ - if (message.pendingChanId.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.pendingChanId); - /* bytes final_raw_tx = 3; */ - if (message.finalRawTx.length) - writer.tag(3, WireType.LengthDelimited).bytes(message.finalRawTx); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FundingPsbtFinalize - */ -export const FundingPsbtFinalize = new FundingPsbtFinalize$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FundingTransitionMsg$Type extends MessageType { - constructor() { - super("lnrpc.FundingTransitionMsg", [ - { no: 1, name: "shim_register", kind: "message", oneof: "trigger", T: () => FundingShim }, - { no: 2, name: "shim_cancel", kind: "message", oneof: "trigger", T: () => FundingShimCancel }, - { no: 3, name: "psbt_verify", kind: "message", oneof: "trigger", T: () => FundingPsbtVerify }, - { no: 4, name: "psbt_finalize", kind: "message", oneof: "trigger", T: () => FundingPsbtFinalize } - ]); - } - create(value?: PartialMessage): FundingTransitionMsg { - const message = { trigger: { oneofKind: undefined } }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FundingTransitionMsg): FundingTransitionMsg { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.FundingShim shim_register */ 1: - message.trigger = { - oneofKind: "shimRegister", - shimRegister: FundingShim.internalBinaryRead(reader, reader.uint32(), options, (message.trigger as any).shimRegister) - }; - break; - case /* lnrpc.FundingShimCancel shim_cancel */ 2: - message.trigger = { - oneofKind: "shimCancel", - shimCancel: FundingShimCancel.internalBinaryRead(reader, reader.uint32(), options, (message.trigger as any).shimCancel) - }; - break; - case /* lnrpc.FundingPsbtVerify psbt_verify */ 3: - message.trigger = { - oneofKind: "psbtVerify", - psbtVerify: FundingPsbtVerify.internalBinaryRead(reader, reader.uint32(), options, (message.trigger as any).psbtVerify) - }; - break; - case /* lnrpc.FundingPsbtFinalize psbt_finalize */ 4: - message.trigger = { - oneofKind: "psbtFinalize", - psbtFinalize: FundingPsbtFinalize.internalBinaryRead(reader, reader.uint32(), options, (message.trigger as any).psbtFinalize) - }; - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: FundingTransitionMsg, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.FundingShim shim_register = 1; */ - if (message.trigger.oneofKind === "shimRegister") - FundingShim.internalBinaryWrite(message.trigger.shimRegister, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.FundingShimCancel shim_cancel = 2; */ - if (message.trigger.oneofKind === "shimCancel") - FundingShimCancel.internalBinaryWrite(message.trigger.shimCancel, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.FundingPsbtVerify psbt_verify = 3; */ - if (message.trigger.oneofKind === "psbtVerify") - FundingPsbtVerify.internalBinaryWrite(message.trigger.psbtVerify, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.FundingPsbtFinalize psbt_finalize = 4; */ - if (message.trigger.oneofKind === "psbtFinalize") - FundingPsbtFinalize.internalBinaryWrite(message.trigger.psbtFinalize, writer.tag(4, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FundingTransitionMsg - */ -export const FundingTransitionMsg = new FundingTransitionMsg$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FundingStateStepResp$Type extends MessageType { - constructor() { - super("lnrpc.FundingStateStepResp", []); - } - create(value?: PartialMessage): FundingStateStepResp { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FundingStateStepResp): FundingStateStepResp { - return target ?? this.create(); - } - internalBinaryWrite(message: FundingStateStepResp, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FundingStateStepResp - */ -export const FundingStateStepResp = new FundingStateStepResp$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingHTLC$Type extends MessageType { - constructor() { - super("lnrpc.PendingHTLC", [ - { no: 1, name: "incoming", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "amount", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "outpoint", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "maturity_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "blocks_til_maturity", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 6, name: "stage", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value?: PartialMessage): PendingHTLC { - const message = { incoming: false, amount: 0n, outpoint: "", maturityHeight: 0, blocksTilMaturity: 0, stage: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingHTLC): PendingHTLC { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool incoming */ 1: - message.incoming = reader.bool(); - break; - case /* int64 amount */ 2: - message.amount = reader.int64().toBigInt(); - break; - case /* string outpoint */ 3: - message.outpoint = reader.string(); - break; - case /* uint32 maturity_height */ 4: - message.maturityHeight = reader.uint32(); - break; - case /* int32 blocks_til_maturity */ 5: - message.blocksTilMaturity = reader.int32(); - break; - case /* uint32 stage */ 6: - message.stage = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PendingHTLC, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool incoming = 1; */ - if (message.incoming !== false) - writer.tag(1, WireType.Varint).bool(message.incoming); - /* int64 amount = 2; */ - if (message.amount !== 0n) - writer.tag(2, WireType.Varint).int64(message.amount); - /* string outpoint = 3; */ - if (message.outpoint !== "") - writer.tag(3, WireType.LengthDelimited).string(message.outpoint); - /* uint32 maturity_height = 4; */ - if (message.maturityHeight !== 0) - writer.tag(4, WireType.Varint).uint32(message.maturityHeight); - /* int32 blocks_til_maturity = 5; */ - if (message.blocksTilMaturity !== 0) - writer.tag(5, WireType.Varint).int32(message.blocksTilMaturity); - /* uint32 stage = 6; */ - if (message.stage !== 0) - writer.tag(6, WireType.Varint).uint32(message.stage); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingHTLC - */ -export const PendingHTLC = new PendingHTLC$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingChannelsRequest$Type extends MessageType { - constructor() { - super("lnrpc.PendingChannelsRequest", []); - } - create(value?: PartialMessage): PendingChannelsRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingChannelsRequest): PendingChannelsRequest { - return target ?? this.create(); - } - internalBinaryWrite(message: PendingChannelsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingChannelsRequest - */ -export const PendingChannelsRequest = new PendingChannelsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingChannelsResponse$Type extends MessageType { - constructor() { - super("lnrpc.PendingChannelsResponse", [ - { no: 1, name: "total_limbo_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "pending_open_channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => PendingChannelsResponse_PendingOpenChannel }, - { no: 3, name: "pending_closing_channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => PendingChannelsResponse_ClosedChannel }, - { no: 4, name: "pending_force_closing_channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => PendingChannelsResponse_ForceClosedChannel }, - { no: 5, name: "waiting_close_channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => PendingChannelsResponse_WaitingCloseChannel } - ]); - } - create(value?: PartialMessage): PendingChannelsResponse { - const message = { totalLimboBalance: 0n, pendingOpenChannels: [], pendingClosingChannels: [], pendingForceClosingChannels: [], waitingCloseChannels: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingChannelsResponse): PendingChannelsResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 total_limbo_balance */ 1: - message.totalLimboBalance = reader.int64().toBigInt(); - break; - case /* repeated lnrpc.PendingChannelsResponse.PendingOpenChannel pending_open_channels */ 2: - message.pendingOpenChannels.push(PendingChannelsResponse_PendingOpenChannel.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* repeated lnrpc.PendingChannelsResponse.ClosedChannel pending_closing_channels = 3 [deprecated = true];*/ 3: - message.pendingClosingChannels.push(PendingChannelsResponse_ClosedChannel.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* repeated lnrpc.PendingChannelsResponse.ForceClosedChannel pending_force_closing_channels */ 4: - message.pendingForceClosingChannels.push(PendingChannelsResponse_ForceClosedChannel.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* repeated lnrpc.PendingChannelsResponse.WaitingCloseChannel waiting_close_channels */ 5: - message.waitingCloseChannels.push(PendingChannelsResponse_WaitingCloseChannel.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PendingChannelsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* int64 total_limbo_balance = 1; */ - if (message.totalLimboBalance !== 0n) - writer.tag(1, WireType.Varint).int64(message.totalLimboBalance); - /* repeated lnrpc.PendingChannelsResponse.PendingOpenChannel pending_open_channels = 2; */ - for (let i = 0; i < message.pendingOpenChannels.length; i++) - PendingChannelsResponse_PendingOpenChannel.internalBinaryWrite(message.pendingOpenChannels[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - /* repeated lnrpc.PendingChannelsResponse.ClosedChannel pending_closing_channels = 3 [deprecated = true]; */ - for (let i = 0; i < message.pendingClosingChannels.length; i++) - PendingChannelsResponse_ClosedChannel.internalBinaryWrite(message.pendingClosingChannels[i], writer.tag(3, WireType.LengthDelimited).fork(), options).join(); - /* repeated lnrpc.PendingChannelsResponse.ForceClosedChannel pending_force_closing_channels = 4; */ - for (let i = 0; i < message.pendingForceClosingChannels.length; i++) - PendingChannelsResponse_ForceClosedChannel.internalBinaryWrite(message.pendingForceClosingChannels[i], writer.tag(4, WireType.LengthDelimited).fork(), options).join(); - /* repeated lnrpc.PendingChannelsResponse.WaitingCloseChannel waiting_close_channels = 5; */ - for (let i = 0; i < message.waitingCloseChannels.length; i++) - PendingChannelsResponse_WaitingCloseChannel.internalBinaryWrite(message.waitingCloseChannels[i], writer.tag(5, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse - */ -export const PendingChannelsResponse = new PendingChannelsResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingChannelsResponse_PendingChannel$Type extends MessageType { - constructor() { - super("lnrpc.PendingChannelsResponse.PendingChannel", [ - { no: 1, name: "remote_node_pub", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "channel_point", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "local_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "remote_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "local_chan_reserve_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 7, name: "remote_chan_reserve_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 8, name: "initiator", kind: "enum", T: () => ["lnrpc.Initiator", Initiator, "INITIATOR_"] }, - { no: 9, name: "commitment_type", kind: "enum", T: () => ["lnrpc.CommitmentType", CommitmentType] }, - { no: 10, name: "num_forwarding_packages", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 11, name: "chan_status_flags", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 12, name: "private", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): PendingChannelsResponse_PendingChannel { - const message = { remoteNodePub: "", channelPoint: "", capacity: 0n, localBalance: 0n, remoteBalance: 0n, localChanReserveSat: 0n, remoteChanReserveSat: 0n, initiator: 0, commitmentType: 0, numForwardingPackages: 0n, chanStatusFlags: "", private: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingChannelsResponse_PendingChannel): PendingChannelsResponse_PendingChannel { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string remote_node_pub */ 1: - message.remoteNodePub = reader.string(); - break; - case /* string channel_point */ 2: - message.channelPoint = reader.string(); - break; - case /* int64 capacity */ 3: - message.capacity = reader.int64().toBigInt(); - break; - case /* int64 local_balance */ 4: - message.localBalance = reader.int64().toBigInt(); - break; - case /* int64 remote_balance */ 5: - message.remoteBalance = reader.int64().toBigInt(); - break; - case /* int64 local_chan_reserve_sat */ 6: - message.localChanReserveSat = reader.int64().toBigInt(); - break; - case /* int64 remote_chan_reserve_sat */ 7: - message.remoteChanReserveSat = reader.int64().toBigInt(); - break; - case /* lnrpc.Initiator initiator */ 8: - message.initiator = reader.int32(); - break; - case /* lnrpc.CommitmentType commitment_type */ 9: - message.commitmentType = reader.int32(); - break; - case /* int64 num_forwarding_packages */ 10: - message.numForwardingPackages = reader.int64().toBigInt(); - break; - case /* string chan_status_flags */ 11: - message.chanStatusFlags = reader.string(); - break; - case /* bool private */ 12: - message.private = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PendingChannelsResponse_PendingChannel, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string remote_node_pub = 1; */ - if (message.remoteNodePub !== "") - writer.tag(1, WireType.LengthDelimited).string(message.remoteNodePub); - /* string channel_point = 2; */ - if (message.channelPoint !== "") - writer.tag(2, WireType.LengthDelimited).string(message.channelPoint); - /* int64 capacity = 3; */ - if (message.capacity !== 0n) - writer.tag(3, WireType.Varint).int64(message.capacity); - /* int64 local_balance = 4; */ - if (message.localBalance !== 0n) - writer.tag(4, WireType.Varint).int64(message.localBalance); - /* int64 remote_balance = 5; */ - if (message.remoteBalance !== 0n) - writer.tag(5, WireType.Varint).int64(message.remoteBalance); - /* int64 local_chan_reserve_sat = 6; */ - if (message.localChanReserveSat !== 0n) - writer.tag(6, WireType.Varint).int64(message.localChanReserveSat); - /* int64 remote_chan_reserve_sat = 7; */ - if (message.remoteChanReserveSat !== 0n) - writer.tag(7, WireType.Varint).int64(message.remoteChanReserveSat); - /* lnrpc.Initiator initiator = 8; */ - if (message.initiator !== 0) - writer.tag(8, WireType.Varint).int32(message.initiator); - /* lnrpc.CommitmentType commitment_type = 9; */ - if (message.commitmentType !== 0) - writer.tag(9, WireType.Varint).int32(message.commitmentType); - /* int64 num_forwarding_packages = 10; */ - if (message.numForwardingPackages !== 0n) - writer.tag(10, WireType.Varint).int64(message.numForwardingPackages); - /* string chan_status_flags = 11; */ - if (message.chanStatusFlags !== "") - writer.tag(11, WireType.LengthDelimited).string(message.chanStatusFlags); - /* bool private = 12; */ - if (message.private !== false) - writer.tag(12, WireType.Varint).bool(message.private); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse.PendingChannel - */ -export const PendingChannelsResponse_PendingChannel = new PendingChannelsResponse_PendingChannel$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingChannelsResponse_PendingOpenChannel$Type extends MessageType { - constructor() { - super("lnrpc.PendingChannelsResponse.PendingOpenChannel", [ - { no: 1, name: "channel", kind: "message", T: () => PendingChannelsResponse_PendingChannel }, - { no: 4, name: "commit_fee", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "commit_weight", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "fee_per_kw", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): PendingChannelsResponse_PendingOpenChannel { - const message = { commitFee: 0n, commitWeight: 0n, feePerKw: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingChannelsResponse_PendingOpenChannel): PendingChannelsResponse_PendingOpenChannel { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.PendingChannelsResponse.PendingChannel channel */ 1: - message.channel = PendingChannelsResponse_PendingChannel.internalBinaryRead(reader, reader.uint32(), options, message.channel); - break; - case /* int64 commit_fee */ 4: - message.commitFee = reader.int64().toBigInt(); - break; - case /* int64 commit_weight */ 5: - message.commitWeight = reader.int64().toBigInt(); - break; - case /* int64 fee_per_kw */ 6: - message.feePerKw = reader.int64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PendingChannelsResponse_PendingOpenChannel, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.PendingChannelsResponse.PendingChannel channel = 1; */ - if (message.channel) - PendingChannelsResponse_PendingChannel.internalBinaryWrite(message.channel, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* int64 commit_fee = 4; */ - if (message.commitFee !== 0n) - writer.tag(4, WireType.Varint).int64(message.commitFee); - /* int64 commit_weight = 5; */ - if (message.commitWeight !== 0n) - writer.tag(5, WireType.Varint).int64(message.commitWeight); - /* int64 fee_per_kw = 6; */ - if (message.feePerKw !== 0n) - writer.tag(6, WireType.Varint).int64(message.feePerKw); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse.PendingOpenChannel - */ -export const PendingChannelsResponse_PendingOpenChannel = new PendingChannelsResponse_PendingOpenChannel$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingChannelsResponse_WaitingCloseChannel$Type extends MessageType { - constructor() { - super("lnrpc.PendingChannelsResponse.WaitingCloseChannel", [ - { no: 1, name: "channel", kind: "message", T: () => PendingChannelsResponse_PendingChannel }, - { no: 2, name: "limbo_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "commitments", kind: "message", T: () => PendingChannelsResponse_Commitments }, - { no: 4, name: "closing_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): PendingChannelsResponse_WaitingCloseChannel { - const message = { limboBalance: 0n, closingTxid: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingChannelsResponse_WaitingCloseChannel): PendingChannelsResponse_WaitingCloseChannel { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.PendingChannelsResponse.PendingChannel channel */ 1: - message.channel = PendingChannelsResponse_PendingChannel.internalBinaryRead(reader, reader.uint32(), options, message.channel); - break; - case /* int64 limbo_balance */ 2: - message.limboBalance = reader.int64().toBigInt(); - break; - case /* lnrpc.PendingChannelsResponse.Commitments commitments */ 3: - message.commitments = PendingChannelsResponse_Commitments.internalBinaryRead(reader, reader.uint32(), options, message.commitments); - break; - case /* string closing_txid */ 4: - message.closingTxid = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PendingChannelsResponse_WaitingCloseChannel, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.PendingChannelsResponse.PendingChannel channel = 1; */ - if (message.channel) - PendingChannelsResponse_PendingChannel.internalBinaryWrite(message.channel, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* int64 limbo_balance = 2; */ - if (message.limboBalance !== 0n) - writer.tag(2, WireType.Varint).int64(message.limboBalance); - /* lnrpc.PendingChannelsResponse.Commitments commitments = 3; */ - if (message.commitments) - PendingChannelsResponse_Commitments.internalBinaryWrite(message.commitments, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); - /* string closing_txid = 4; */ - if (message.closingTxid !== "") - writer.tag(4, WireType.LengthDelimited).string(message.closingTxid); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse.WaitingCloseChannel - */ -export const PendingChannelsResponse_WaitingCloseChannel = new PendingChannelsResponse_WaitingCloseChannel$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingChannelsResponse_Commitments$Type extends MessageType { - constructor() { - super("lnrpc.PendingChannelsResponse.Commitments", [ - { no: 1, name: "local_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "remote_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "remote_pending_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "local_commit_fee_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "remote_commit_fee_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "remote_pending_commit_fee_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): PendingChannelsResponse_Commitments { - const message = { localTxid: "", remoteTxid: "", remotePendingTxid: "", localCommitFeeSat: 0n, remoteCommitFeeSat: 0n, remotePendingCommitFeeSat: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingChannelsResponse_Commitments): PendingChannelsResponse_Commitments { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string local_txid */ 1: - message.localTxid = reader.string(); - break; - case /* string remote_txid */ 2: - message.remoteTxid = reader.string(); - break; - case /* string remote_pending_txid */ 3: - message.remotePendingTxid = reader.string(); - break; - case /* uint64 local_commit_fee_sat */ 4: - message.localCommitFeeSat = reader.uint64().toBigInt(); - break; - case /* uint64 remote_commit_fee_sat */ 5: - message.remoteCommitFeeSat = reader.uint64().toBigInt(); - break; - case /* uint64 remote_pending_commit_fee_sat */ 6: - message.remotePendingCommitFeeSat = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PendingChannelsResponse_Commitments, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string local_txid = 1; */ - if (message.localTxid !== "") - writer.tag(1, WireType.LengthDelimited).string(message.localTxid); - /* string remote_txid = 2; */ - if (message.remoteTxid !== "") - writer.tag(2, WireType.LengthDelimited).string(message.remoteTxid); - /* string remote_pending_txid = 3; */ - if (message.remotePendingTxid !== "") - writer.tag(3, WireType.LengthDelimited).string(message.remotePendingTxid); - /* uint64 local_commit_fee_sat = 4; */ - if (message.localCommitFeeSat !== 0n) - writer.tag(4, WireType.Varint).uint64(message.localCommitFeeSat); - /* uint64 remote_commit_fee_sat = 5; */ - if (message.remoteCommitFeeSat !== 0n) - writer.tag(5, WireType.Varint).uint64(message.remoteCommitFeeSat); - /* uint64 remote_pending_commit_fee_sat = 6; */ - if (message.remotePendingCommitFeeSat !== 0n) - writer.tag(6, WireType.Varint).uint64(message.remotePendingCommitFeeSat); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse.Commitments - */ -export const PendingChannelsResponse_Commitments = new PendingChannelsResponse_Commitments$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingChannelsResponse_ClosedChannel$Type extends MessageType { - constructor() { - super("lnrpc.PendingChannelsResponse.ClosedChannel", [ - { no: 1, name: "channel", kind: "message", T: () => PendingChannelsResponse_PendingChannel }, - { no: 2, name: "closing_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): PendingChannelsResponse_ClosedChannel { - const message = { closingTxid: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingChannelsResponse_ClosedChannel): PendingChannelsResponse_ClosedChannel { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.PendingChannelsResponse.PendingChannel channel */ 1: - message.channel = PendingChannelsResponse_PendingChannel.internalBinaryRead(reader, reader.uint32(), options, message.channel); - break; - case /* string closing_txid */ 2: - message.closingTxid = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PendingChannelsResponse_ClosedChannel, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.PendingChannelsResponse.PendingChannel channel = 1; */ - if (message.channel) - PendingChannelsResponse_PendingChannel.internalBinaryWrite(message.channel, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* string closing_txid = 2; */ - if (message.closingTxid !== "") - writer.tag(2, WireType.LengthDelimited).string(message.closingTxid); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse.ClosedChannel - */ -export const PendingChannelsResponse_ClosedChannel = new PendingChannelsResponse_ClosedChannel$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PendingChannelsResponse_ForceClosedChannel$Type extends MessageType { - constructor() { - super("lnrpc.PendingChannelsResponse.ForceClosedChannel", [ - { no: 1, name: "channel", kind: "message", T: () => PendingChannelsResponse_PendingChannel }, - { no: 2, name: "closing_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "limbo_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "maturity_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "blocks_til_maturity", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 6, name: "recovered_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 8, name: "pending_htlcs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => PendingHTLC }, - { no: 9, name: "anchor", kind: "enum", T: () => ["lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState", PendingChannelsResponse_ForceClosedChannel_AnchorState] } - ]); - } - create(value?: PartialMessage): PendingChannelsResponse_ForceClosedChannel { - const message = { closingTxid: "", limboBalance: 0n, maturityHeight: 0, blocksTilMaturity: 0, recoveredBalance: 0n, pendingHtlcs: [], anchor: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingChannelsResponse_ForceClosedChannel): PendingChannelsResponse_ForceClosedChannel { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.PendingChannelsResponse.PendingChannel channel */ 1: - message.channel = PendingChannelsResponse_PendingChannel.internalBinaryRead(reader, reader.uint32(), options, message.channel); - break; - case /* string closing_txid */ 2: - message.closingTxid = reader.string(); - break; - case /* int64 limbo_balance */ 3: - message.limboBalance = reader.int64().toBigInt(); - break; - case /* uint32 maturity_height */ 4: - message.maturityHeight = reader.uint32(); - break; - case /* int32 blocks_til_maturity */ 5: - message.blocksTilMaturity = reader.int32(); - break; - case /* int64 recovered_balance */ 6: - message.recoveredBalance = reader.int64().toBigInt(); - break; - case /* repeated lnrpc.PendingHTLC pending_htlcs */ 8: - message.pendingHtlcs.push(PendingHTLC.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState anchor */ 9: - message.anchor = reader.int32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PendingChannelsResponse_ForceClosedChannel, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.PendingChannelsResponse.PendingChannel channel = 1; */ - if (message.channel) - PendingChannelsResponse_PendingChannel.internalBinaryWrite(message.channel, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* string closing_txid = 2; */ - if (message.closingTxid !== "") - writer.tag(2, WireType.LengthDelimited).string(message.closingTxid); - /* int64 limbo_balance = 3; */ - if (message.limboBalance !== 0n) - writer.tag(3, WireType.Varint).int64(message.limboBalance); - /* uint32 maturity_height = 4; */ - if (message.maturityHeight !== 0) - writer.tag(4, WireType.Varint).uint32(message.maturityHeight); - /* int32 blocks_til_maturity = 5; */ - if (message.blocksTilMaturity !== 0) - writer.tag(5, WireType.Varint).int32(message.blocksTilMaturity); - /* int64 recovered_balance = 6; */ - if (message.recoveredBalance !== 0n) - writer.tag(6, WireType.Varint).int64(message.recoveredBalance); - /* repeated lnrpc.PendingHTLC pending_htlcs = 8; */ - for (let i = 0; i < message.pendingHtlcs.length; i++) - PendingHTLC.internalBinaryWrite(message.pendingHtlcs[i], writer.tag(8, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState anchor = 9; */ - if (message.anchor !== 0) - writer.tag(9, WireType.Varint).int32(message.anchor); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse.ForceClosedChannel - */ -export const PendingChannelsResponse_ForceClosedChannel = new PendingChannelsResponse_ForceClosedChannel$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelEventSubscription$Type extends MessageType { - constructor() { - super("lnrpc.ChannelEventSubscription", []); - } - create(value?: PartialMessage): ChannelEventSubscription { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelEventSubscription): ChannelEventSubscription { - return target ?? this.create(); - } - internalBinaryWrite(message: ChannelEventSubscription, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelEventSubscription - */ -export const ChannelEventSubscription = new ChannelEventSubscription$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelEventUpdate$Type extends MessageType { - constructor() { - super("lnrpc.ChannelEventUpdate", [ - { no: 1, name: "open_channel", kind: "message", oneof: "channel", T: () => Channel }, - { no: 2, name: "closed_channel", kind: "message", oneof: "channel", T: () => ChannelCloseSummary }, - { no: 3, name: "active_channel", kind: "message", oneof: "channel", T: () => ChannelPoint }, - { no: 4, name: "inactive_channel", kind: "message", oneof: "channel", T: () => ChannelPoint }, - { no: 6, name: "pending_open_channel", kind: "message", oneof: "channel", T: () => PendingUpdate }, - { no: 7, name: "fully_resolved_channel", kind: "message", oneof: "channel", T: () => ChannelPoint }, - { no: 5, name: "type", kind: "enum", T: () => ["lnrpc.ChannelEventUpdate.UpdateType", ChannelEventUpdate_UpdateType] } - ]); - } - create(value?: PartialMessage): ChannelEventUpdate { - const message = { channel: { oneofKind: undefined }, type: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelEventUpdate): ChannelEventUpdate { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.Channel open_channel */ 1: - message.channel = { - oneofKind: "openChannel", - openChannel: Channel.internalBinaryRead(reader, reader.uint32(), options, (message.channel as any).openChannel) - }; - break; - case /* lnrpc.ChannelCloseSummary closed_channel */ 2: - message.channel = { - oneofKind: "closedChannel", - closedChannel: ChannelCloseSummary.internalBinaryRead(reader, reader.uint32(), options, (message.channel as any).closedChannel) - }; - break; - case /* lnrpc.ChannelPoint active_channel */ 3: - message.channel = { - oneofKind: "activeChannel", - activeChannel: ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, (message.channel as any).activeChannel) - }; - break; - case /* lnrpc.ChannelPoint inactive_channel */ 4: - message.channel = { - oneofKind: "inactiveChannel", - inactiveChannel: ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, (message.channel as any).inactiveChannel) - }; - break; - case /* lnrpc.PendingUpdate pending_open_channel */ 6: - message.channel = { - oneofKind: "pendingOpenChannel", - pendingOpenChannel: PendingUpdate.internalBinaryRead(reader, reader.uint32(), options, (message.channel as any).pendingOpenChannel) - }; - break; - case /* lnrpc.ChannelPoint fully_resolved_channel */ 7: - message.channel = { - oneofKind: "fullyResolvedChannel", - fullyResolvedChannel: ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, (message.channel as any).fullyResolvedChannel) - }; - break; - case /* lnrpc.ChannelEventUpdate.UpdateType type */ 5: - message.type = reader.int32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChannelEventUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.Channel open_channel = 1; */ - if (message.channel.oneofKind === "openChannel") - Channel.internalBinaryWrite(message.channel.openChannel, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.ChannelCloseSummary closed_channel = 2; */ - if (message.channel.oneofKind === "closedChannel") - ChannelCloseSummary.internalBinaryWrite(message.channel.closedChannel, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.ChannelPoint active_channel = 3; */ - if (message.channel.oneofKind === "activeChannel") - ChannelPoint.internalBinaryWrite(message.channel.activeChannel, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.ChannelPoint inactive_channel = 4; */ - if (message.channel.oneofKind === "inactiveChannel") - ChannelPoint.internalBinaryWrite(message.channel.inactiveChannel, writer.tag(4, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.PendingUpdate pending_open_channel = 6; */ - if (message.channel.oneofKind === "pendingOpenChannel") - PendingUpdate.internalBinaryWrite(message.channel.pendingOpenChannel, writer.tag(6, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.ChannelPoint fully_resolved_channel = 7; */ - if (message.channel.oneofKind === "fullyResolvedChannel") - ChannelPoint.internalBinaryWrite(message.channel.fullyResolvedChannel, writer.tag(7, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.ChannelEventUpdate.UpdateType type = 5; */ - if (message.type !== 0) - writer.tag(5, WireType.Varint).int32(message.type); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelEventUpdate - */ -export const ChannelEventUpdate = new ChannelEventUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class WalletAccountBalance$Type extends MessageType { - constructor() { - super("lnrpc.WalletAccountBalance", [ - { no: 1, name: "confirmed_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "unconfirmed_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): WalletAccountBalance { - const message = { confirmedBalance: 0n, unconfirmedBalance: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: WalletAccountBalance): WalletAccountBalance { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 confirmed_balance */ 1: - message.confirmedBalance = reader.int64().toBigInt(); - break; - case /* int64 unconfirmed_balance */ 2: - message.unconfirmedBalance = reader.int64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: WalletAccountBalance, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* int64 confirmed_balance = 1; */ - if (message.confirmedBalance !== 0n) - writer.tag(1, WireType.Varint).int64(message.confirmedBalance); - /* int64 unconfirmed_balance = 2; */ - if (message.unconfirmedBalance !== 0n) - writer.tag(2, WireType.Varint).int64(message.unconfirmedBalance); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.WalletAccountBalance - */ -export const WalletAccountBalance = new WalletAccountBalance$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class WalletBalanceRequest$Type extends MessageType { - constructor() { - super("lnrpc.WalletBalanceRequest", []); - } - create(value?: PartialMessage): WalletBalanceRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: WalletBalanceRequest): WalletBalanceRequest { - return target ?? this.create(); - } - internalBinaryWrite(message: WalletBalanceRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.WalletBalanceRequest - */ -export const WalletBalanceRequest = new WalletBalanceRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class WalletBalanceResponse$Type extends MessageType { - constructor() { - super("lnrpc.WalletBalanceResponse", [ - { no: 1, name: "total_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "confirmed_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "unconfirmed_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "locked_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "reserved_balance_anchor_chan", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "account_balance", kind: "map", K: 9 /*ScalarType.STRING*/, V: { kind: "message", T: () => WalletAccountBalance } } - ]); - } - create(value?: PartialMessage): WalletBalanceResponse { - const message = { totalBalance: 0n, confirmedBalance: 0n, unconfirmedBalance: 0n, lockedBalance: 0n, reservedBalanceAnchorChan: 0n, accountBalance: {} }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: WalletBalanceResponse): WalletBalanceResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 total_balance */ 1: - message.totalBalance = reader.int64().toBigInt(); - break; - case /* int64 confirmed_balance */ 2: - message.confirmedBalance = reader.int64().toBigInt(); - break; - case /* int64 unconfirmed_balance */ 3: - message.unconfirmedBalance = reader.int64().toBigInt(); - break; - case /* int64 locked_balance */ 5: - message.lockedBalance = reader.int64().toBigInt(); - break; - case /* int64 reserved_balance_anchor_chan */ 6: - message.reservedBalanceAnchorChan = reader.int64().toBigInt(); - break; - case /* map account_balance */ 4: - this.binaryReadMap4(message.accountBalance, reader, options); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap4(map: WalletBalanceResponse["accountBalance"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof WalletBalanceResponse["accountBalance"] | undefined, val: WalletBalanceResponse["accountBalance"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.string(); - break; - case 2: - val = WalletAccountBalance.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.WalletBalanceResponse.account_balance"); - } - } - map[key ?? ""] = val ?? WalletAccountBalance.create(); - } - internalBinaryWrite(message: WalletBalanceResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* int64 total_balance = 1; */ - if (message.totalBalance !== 0n) - writer.tag(1, WireType.Varint).int64(message.totalBalance); - /* int64 confirmed_balance = 2; */ - if (message.confirmedBalance !== 0n) - writer.tag(2, WireType.Varint).int64(message.confirmedBalance); - /* int64 unconfirmed_balance = 3; */ - if (message.unconfirmedBalance !== 0n) - writer.tag(3, WireType.Varint).int64(message.unconfirmedBalance); - /* int64 locked_balance = 5; */ - if (message.lockedBalance !== 0n) - writer.tag(5, WireType.Varint).int64(message.lockedBalance); - /* int64 reserved_balance_anchor_chan = 6; */ - if (message.reservedBalanceAnchorChan !== 0n) - writer.tag(6, WireType.Varint).int64(message.reservedBalanceAnchorChan); - /* map account_balance = 4; */ - for (let k of Object.keys(message.accountBalance)) { - writer.tag(4, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k); - writer.tag(2, WireType.LengthDelimited).fork(); - WalletAccountBalance.internalBinaryWrite(message.accountBalance[k], writer, options); - writer.join().join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.WalletBalanceResponse - */ -export const WalletBalanceResponse = new WalletBalanceResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Amount$Type extends MessageType { - constructor() { - super("lnrpc.Amount", [ - { no: 1, name: "sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): Amount { - const message = { sat: 0n, msat: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Amount): Amount { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 sat */ 1: - message.sat = reader.uint64().toBigInt(); - break; - case /* uint64 msat */ 2: - message.msat = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: Amount, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 sat = 1; */ - if (message.sat !== 0n) - writer.tag(1, WireType.Varint).uint64(message.sat); - /* uint64 msat = 2; */ - if (message.msat !== 0n) - writer.tag(2, WireType.Varint).uint64(message.msat); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Amount - */ -export const Amount = new Amount$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelBalanceRequest$Type extends MessageType { - constructor() { - super("lnrpc.ChannelBalanceRequest", []); - } - create(value?: PartialMessage): ChannelBalanceRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelBalanceRequest): ChannelBalanceRequest { - return target ?? this.create(); - } - internalBinaryWrite(message: ChannelBalanceRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelBalanceRequest - */ -export const ChannelBalanceRequest = new ChannelBalanceRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelBalanceResponse$Type extends MessageType { - constructor() { - super("lnrpc.ChannelBalanceResponse", [ - { no: 1, name: "balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "pending_open_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "local_balance", kind: "message", T: () => Amount }, - { no: 4, name: "remote_balance", kind: "message", T: () => Amount }, - { no: 5, name: "unsettled_local_balance", kind: "message", T: () => Amount }, - { no: 6, name: "unsettled_remote_balance", kind: "message", T: () => Amount }, - { no: 7, name: "pending_open_local_balance", kind: "message", T: () => Amount }, - { no: 8, name: "pending_open_remote_balance", kind: "message", T: () => Amount } - ]); - } - create(value?: PartialMessage): ChannelBalanceResponse { - const message = { balance: 0n, pendingOpenBalance: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelBalanceResponse): ChannelBalanceResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 balance = 1 [deprecated = true];*/ 1: - message.balance = reader.int64().toBigInt(); - break; - case /* int64 pending_open_balance = 2 [deprecated = true];*/ 2: - message.pendingOpenBalance = reader.int64().toBigInt(); - break; - case /* lnrpc.Amount local_balance */ 3: - message.localBalance = Amount.internalBinaryRead(reader, reader.uint32(), options, message.localBalance); - break; - case /* lnrpc.Amount remote_balance */ 4: - message.remoteBalance = Amount.internalBinaryRead(reader, reader.uint32(), options, message.remoteBalance); - break; - case /* lnrpc.Amount unsettled_local_balance */ 5: - message.unsettledLocalBalance = Amount.internalBinaryRead(reader, reader.uint32(), options, message.unsettledLocalBalance); - break; - case /* lnrpc.Amount unsettled_remote_balance */ 6: - message.unsettledRemoteBalance = Amount.internalBinaryRead(reader, reader.uint32(), options, message.unsettledRemoteBalance); - break; - case /* lnrpc.Amount pending_open_local_balance */ 7: - message.pendingOpenLocalBalance = Amount.internalBinaryRead(reader, reader.uint32(), options, message.pendingOpenLocalBalance); - break; - case /* lnrpc.Amount pending_open_remote_balance */ 8: - message.pendingOpenRemoteBalance = Amount.internalBinaryRead(reader, reader.uint32(), options, message.pendingOpenRemoteBalance); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChannelBalanceResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* int64 balance = 1 [deprecated = true]; */ - if (message.balance !== 0n) - writer.tag(1, WireType.Varint).int64(message.balance); - /* int64 pending_open_balance = 2 [deprecated = true]; */ - if (message.pendingOpenBalance !== 0n) - writer.tag(2, WireType.Varint).int64(message.pendingOpenBalance); - /* lnrpc.Amount local_balance = 3; */ - if (message.localBalance) - Amount.internalBinaryWrite(message.localBalance, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.Amount remote_balance = 4; */ - if (message.remoteBalance) - Amount.internalBinaryWrite(message.remoteBalance, writer.tag(4, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.Amount unsettled_local_balance = 5; */ - if (message.unsettledLocalBalance) - Amount.internalBinaryWrite(message.unsettledLocalBalance, writer.tag(5, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.Amount unsettled_remote_balance = 6; */ - if (message.unsettledRemoteBalance) - Amount.internalBinaryWrite(message.unsettledRemoteBalance, writer.tag(6, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.Amount pending_open_local_balance = 7; */ - if (message.pendingOpenLocalBalance) - Amount.internalBinaryWrite(message.pendingOpenLocalBalance, writer.tag(7, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.Amount pending_open_remote_balance = 8; */ - if (message.pendingOpenRemoteBalance) - Amount.internalBinaryWrite(message.pendingOpenRemoteBalance, writer.tag(8, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelBalanceResponse - */ -export const ChannelBalanceResponse = new ChannelBalanceResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class QueryRoutesRequest$Type extends MessageType { - constructor() { - super("lnrpc.QueryRoutesRequest", [ - { no: 1, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "amt", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 12, name: "amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "final_cltv_delta", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 5, name: "fee_limit", kind: "message", T: () => FeeLimit }, - { no: 6, name: "ignored_nodes", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 12 /*ScalarType.BYTES*/ }, - { no: 7, name: "ignored_edges", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => EdgeLocator }, - { no: 8, name: "source_pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 9, name: "use_mission_control", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 10, name: "ignored_pairs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => NodePair }, - { no: 11, name: "cltv_limit", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 13, name: "dest_custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } }, - { no: 14, name: "outgoing_chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 15, name: "last_hop_pubkey", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 16, name: "route_hints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => RouteHint }, - { no: 17, name: "dest_features", kind: "enum", repeat: 1 /*RepeatType.PACKED*/, T: () => ["lnrpc.FeatureBit", FeatureBit] }, - { no: 18, name: "time_pref", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ } - ]); - } - create(value?: PartialMessage): QueryRoutesRequest { - const message = { pubKey: "", amt: 0n, amtMsat: 0n, finalCltvDelta: 0, ignoredNodes: [], ignoredEdges: [], sourcePubKey: "", useMissionControl: false, ignoredPairs: [], cltvLimit: 0, destCustomRecords: {}, outgoingChanId: "0", lastHopPubkey: new Uint8Array(0), routeHints: [], destFeatures: [], timePref: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryRoutesRequest): QueryRoutesRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string pub_key */ 1: - message.pubKey = reader.string(); - break; - case /* int64 amt */ 2: - message.amt = reader.int64().toBigInt(); - break; - case /* int64 amt_msat */ 12: - message.amtMsat = reader.int64().toBigInt(); - break; - case /* int32 final_cltv_delta */ 4: - message.finalCltvDelta = reader.int32(); - break; - case /* lnrpc.FeeLimit fee_limit */ 5: - message.feeLimit = FeeLimit.internalBinaryRead(reader, reader.uint32(), options, message.feeLimit); - break; - case /* repeated bytes ignored_nodes */ 6: - message.ignoredNodes.push(reader.bytes()); - break; - case /* repeated lnrpc.EdgeLocator ignored_edges = 7 [deprecated = true];*/ 7: - message.ignoredEdges.push(EdgeLocator.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* string source_pub_key */ 8: - message.sourcePubKey = reader.string(); - break; - case /* bool use_mission_control */ 9: - message.useMissionControl = reader.bool(); - break; - case /* repeated lnrpc.NodePair ignored_pairs */ 10: - message.ignoredPairs.push(NodePair.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* uint32 cltv_limit */ 11: - message.cltvLimit = reader.uint32(); - break; - case /* map dest_custom_records */ 13: - this.binaryReadMap13(message.destCustomRecords, reader, options); - break; - case /* uint64 outgoing_chan_id = 14 [jstype = JS_STRING];*/ 14: - message.outgoingChanId = reader.uint64().toString(); - break; - case /* bytes last_hop_pubkey */ 15: - message.lastHopPubkey = reader.bytes(); - break; - case /* repeated lnrpc.RouteHint route_hints */ 16: - message.routeHints.push(RouteHint.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* repeated lnrpc.FeatureBit dest_features */ 17: - if (wireType === WireType.LengthDelimited) - for (let e = reader.int32() + reader.pos; reader.pos < e;) - message.destFeatures.push(reader.int32()); - else - message.destFeatures.push(reader.int32()); - break; - case /* double time_pref */ 18: - message.timePref = reader.double(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap13(map: QueryRoutesRequest["destCustomRecords"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof QueryRoutesRequest["destCustomRecords"] | undefined, val: QueryRoutesRequest["destCustomRecords"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint64().toString(); - break; - case 2: - val = reader.bytes(); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.QueryRoutesRequest.dest_custom_records"); - } - } - map[key ?? "0"] = val ?? new Uint8Array(0); - } - internalBinaryWrite(message: QueryRoutesRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string pub_key = 1; */ - if (message.pubKey !== "") - writer.tag(1, WireType.LengthDelimited).string(message.pubKey); - /* int64 amt = 2; */ - if (message.amt !== 0n) - writer.tag(2, WireType.Varint).int64(message.amt); - /* int64 amt_msat = 12; */ - if (message.amtMsat !== 0n) - writer.tag(12, WireType.Varint).int64(message.amtMsat); - /* int32 final_cltv_delta = 4; */ - if (message.finalCltvDelta !== 0) - writer.tag(4, WireType.Varint).int32(message.finalCltvDelta); - /* lnrpc.FeeLimit fee_limit = 5; */ - if (message.feeLimit) - FeeLimit.internalBinaryWrite(message.feeLimit, writer.tag(5, WireType.LengthDelimited).fork(), options).join(); - /* repeated bytes ignored_nodes = 6; */ - for (let i = 0; i < message.ignoredNodes.length; i++) - writer.tag(6, WireType.LengthDelimited).bytes(message.ignoredNodes[i]); - /* repeated lnrpc.EdgeLocator ignored_edges = 7 [deprecated = true]; */ - for (let i = 0; i < message.ignoredEdges.length; i++) - EdgeLocator.internalBinaryWrite(message.ignoredEdges[i], writer.tag(7, WireType.LengthDelimited).fork(), options).join(); - /* string source_pub_key = 8; */ - if (message.sourcePubKey !== "") - writer.tag(8, WireType.LengthDelimited).string(message.sourcePubKey); - /* bool use_mission_control = 9; */ - if (message.useMissionControl !== false) - writer.tag(9, WireType.Varint).bool(message.useMissionControl); - /* repeated lnrpc.NodePair ignored_pairs = 10; */ - for (let i = 0; i < message.ignoredPairs.length; i++) - NodePair.internalBinaryWrite(message.ignoredPairs[i], writer.tag(10, WireType.LengthDelimited).fork(), options).join(); - /* uint32 cltv_limit = 11; */ - if (message.cltvLimit !== 0) - writer.tag(11, WireType.Varint).uint32(message.cltvLimit); - /* map dest_custom_records = 13; */ - for (let k of Object.keys(message.destCustomRecords)) - writer.tag(13, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint64(k).tag(2, WireType.LengthDelimited).bytes(message.destCustomRecords[k]).join(); - /* uint64 outgoing_chan_id = 14 [jstype = JS_STRING]; */ - if (message.outgoingChanId !== "0") - writer.tag(14, WireType.Varint).uint64(message.outgoingChanId); - /* bytes last_hop_pubkey = 15; */ - if (message.lastHopPubkey.length) - writer.tag(15, WireType.LengthDelimited).bytes(message.lastHopPubkey); - /* repeated lnrpc.RouteHint route_hints = 16; */ - for (let i = 0; i < message.routeHints.length; i++) - RouteHint.internalBinaryWrite(message.routeHints[i], writer.tag(16, WireType.LengthDelimited).fork(), options).join(); - /* repeated lnrpc.FeatureBit dest_features = 17; */ - if (message.destFeatures.length) { - writer.tag(17, WireType.LengthDelimited).fork(); - for (let i = 0; i < message.destFeatures.length; i++) - writer.int32(message.destFeatures[i]); - writer.join(); - } - /* double time_pref = 18; */ - if (message.timePref !== 0) - writer.tag(18, WireType.Bit64).double(message.timePref); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.QueryRoutesRequest - */ -export const QueryRoutesRequest = new QueryRoutesRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NodePair$Type extends MessageType { - constructor() { - super("lnrpc.NodePair", [ - { no: 1, name: "from", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "to", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): NodePair { - const message = { from: new Uint8Array(0), to: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NodePair): NodePair { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes from */ 1: - message.from = reader.bytes(); - break; - case /* bytes to */ 2: - message.to = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: NodePair, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes from = 1; */ - if (message.from.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.from); - /* bytes to = 2; */ - if (message.to.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.to); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NodePair - */ -export const NodePair = new NodePair$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class EdgeLocator$Type extends MessageType { - constructor() { - super("lnrpc.EdgeLocator", [ - { no: 1, name: "channel_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "direction_reverse", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): EdgeLocator { - const message = { channelId: "0", directionReverse: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: EdgeLocator): EdgeLocator { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 channel_id = 1 [jstype = JS_STRING];*/ 1: - message.channelId = reader.uint64().toString(); - break; - case /* bool direction_reverse */ 2: - message.directionReverse = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: EdgeLocator, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 channel_id = 1 [jstype = JS_STRING]; */ - if (message.channelId !== "0") - writer.tag(1, WireType.Varint).uint64(message.channelId); - /* bool direction_reverse = 2; */ - if (message.directionReverse !== false) - writer.tag(2, WireType.Varint).bool(message.directionReverse); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.EdgeLocator - */ -export const EdgeLocator = new EdgeLocator$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class QueryRoutesResponse$Type extends MessageType { - constructor() { - super("lnrpc.QueryRoutesResponse", [ - { no: 1, name: "routes", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Route }, - { no: 2, name: "success_prob", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ } - ]); - } - create(value?: PartialMessage): QueryRoutesResponse { - const message = { routes: [], successProb: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryRoutesResponse): QueryRoutesResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.Route routes */ 1: - message.routes.push(Route.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* double success_prob */ 2: - message.successProb = reader.double(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: QueryRoutesResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.Route routes = 1; */ - for (let i = 0; i < message.routes.length; i++) - Route.internalBinaryWrite(message.routes[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* double success_prob = 2; */ - if (message.successProb !== 0) - writer.tag(2, WireType.Bit64).double(message.successProb); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.QueryRoutesResponse - */ -export const QueryRoutesResponse = new QueryRoutesResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Hop$Type extends MessageType { - constructor() { - super("lnrpc.Hop", [ - { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "chan_capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "amt_to_forward", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "fee", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "expiry", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 6, name: "amt_to_forward_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 7, name: "fee_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 8, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 9, name: "tlv_payload", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 10, name: "mpp_record", kind: "message", T: () => MPPRecord }, - { no: 12, name: "amp_record", kind: "message", T: () => AMPRecord }, - { no: 11, name: "custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } }, - { no: 13, name: "metadata", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): Hop { - const message = { chanId: "0", chanCapacity: 0n, amtToForward: 0n, fee: 0n, expiry: 0, amtToForwardMsat: 0n, feeMsat: 0n, pubKey: "", tlvPayload: false, customRecords: {}, metadata: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Hop): Hop { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 chan_id = 1 [jstype = JS_STRING];*/ 1: - message.chanId = reader.uint64().toString(); - break; - case /* int64 chan_capacity = 2 [deprecated = true];*/ 2: - message.chanCapacity = reader.int64().toBigInt(); - break; - case /* int64 amt_to_forward = 3 [deprecated = true];*/ 3: - message.amtToForward = reader.int64().toBigInt(); - break; - case /* int64 fee = 4 [deprecated = true];*/ 4: - message.fee = reader.int64().toBigInt(); - break; - case /* uint32 expiry */ 5: - message.expiry = reader.uint32(); - break; - case /* int64 amt_to_forward_msat */ 6: - message.amtToForwardMsat = reader.int64().toBigInt(); - break; - case /* int64 fee_msat */ 7: - message.feeMsat = reader.int64().toBigInt(); - break; - case /* string pub_key */ 8: - message.pubKey = reader.string(); - break; - case /* bool tlv_payload = 9 [deprecated = true];*/ 9: - message.tlvPayload = reader.bool(); - break; - case /* lnrpc.MPPRecord mpp_record */ 10: - message.mppRecord = MPPRecord.internalBinaryRead(reader, reader.uint32(), options, message.mppRecord); - break; - case /* lnrpc.AMPRecord amp_record */ 12: - message.ampRecord = AMPRecord.internalBinaryRead(reader, reader.uint32(), options, message.ampRecord); - break; - case /* map custom_records */ 11: - this.binaryReadMap11(message.customRecords, reader, options); - break; - case /* bytes metadata */ 13: - message.metadata = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap11(map: Hop["customRecords"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof Hop["customRecords"] | undefined, val: Hop["customRecords"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint64().toString(); - break; - case 2: - val = reader.bytes(); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.Hop.custom_records"); - } - } - map[key ?? "0"] = val ?? new Uint8Array(0); - } - internalBinaryWrite(message: Hop, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 chan_id = 1 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(1, WireType.Varint).uint64(message.chanId); - /* int64 chan_capacity = 2 [deprecated = true]; */ - if (message.chanCapacity !== 0n) - writer.tag(2, WireType.Varint).int64(message.chanCapacity); - /* int64 amt_to_forward = 3 [deprecated = true]; */ - if (message.amtToForward !== 0n) - writer.tag(3, WireType.Varint).int64(message.amtToForward); - /* int64 fee = 4 [deprecated = true]; */ - if (message.fee !== 0n) - writer.tag(4, WireType.Varint).int64(message.fee); - /* uint32 expiry = 5; */ - if (message.expiry !== 0) - writer.tag(5, WireType.Varint).uint32(message.expiry); - /* int64 amt_to_forward_msat = 6; */ - if (message.amtToForwardMsat !== 0n) - writer.tag(6, WireType.Varint).int64(message.amtToForwardMsat); - /* int64 fee_msat = 7; */ - if (message.feeMsat !== 0n) - writer.tag(7, WireType.Varint).int64(message.feeMsat); - /* string pub_key = 8; */ - if (message.pubKey !== "") - writer.tag(8, WireType.LengthDelimited).string(message.pubKey); - /* bool tlv_payload = 9 [deprecated = true]; */ - if (message.tlvPayload !== false) - writer.tag(9, WireType.Varint).bool(message.tlvPayload); - /* lnrpc.MPPRecord mpp_record = 10; */ - if (message.mppRecord) - MPPRecord.internalBinaryWrite(message.mppRecord, writer.tag(10, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.AMPRecord amp_record = 12; */ - if (message.ampRecord) - AMPRecord.internalBinaryWrite(message.ampRecord, writer.tag(12, WireType.LengthDelimited).fork(), options).join(); - /* map custom_records = 11; */ - for (let k of Object.keys(message.customRecords)) - writer.tag(11, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint64(k).tag(2, WireType.LengthDelimited).bytes(message.customRecords[k]).join(); - /* bytes metadata = 13; */ - if (message.metadata.length) - writer.tag(13, WireType.LengthDelimited).bytes(message.metadata); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Hop - */ -export const Hop = new Hop$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class MPPRecord$Type extends MessageType { - constructor() { - super("lnrpc.MPPRecord", [ - { no: 11, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 10, name: "total_amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): MPPRecord { - const message = { paymentAddr: new Uint8Array(0), totalAmtMsat: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MPPRecord): MPPRecord { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes payment_addr */ 11: - message.paymentAddr = reader.bytes(); - break; - case /* int64 total_amt_msat */ 10: - message.totalAmtMsat = reader.int64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: MPPRecord, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes payment_addr = 11; */ - if (message.paymentAddr.length) - writer.tag(11, WireType.LengthDelimited).bytes(message.paymentAddr); - /* int64 total_amt_msat = 10; */ - if (message.totalAmtMsat !== 0n) - writer.tag(10, WireType.Varint).int64(message.totalAmtMsat); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.MPPRecord - */ -export const MPPRecord = new MPPRecord$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class AMPRecord$Type extends MessageType { - constructor() { - super("lnrpc.AMPRecord", [ - { no: 1, name: "root_share", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "set_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "child_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value?: PartialMessage): AMPRecord { - const message = { rootShare: new Uint8Array(0), setId: new Uint8Array(0), childIndex: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AMPRecord): AMPRecord { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes root_share */ 1: - message.rootShare = reader.bytes(); - break; - case /* bytes set_id */ 2: - message.setId = reader.bytes(); - break; - case /* uint32 child_index */ 3: - message.childIndex = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: AMPRecord, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes root_share = 1; */ - if (message.rootShare.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.rootShare); - /* bytes set_id = 2; */ - if (message.setId.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.setId); - /* uint32 child_index = 3; */ - if (message.childIndex !== 0) - writer.tag(3, WireType.Varint).uint32(message.childIndex); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.AMPRecord - */ -export const AMPRecord = new AMPRecord$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Route$Type extends MessageType { - constructor() { - super("lnrpc.Route", [ - { no: 1, name: "total_time_lock", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 2, name: "total_fees", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "total_amt", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "hops", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Hop }, - { no: 5, name: "total_fees_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "total_amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): Route { - const message = { totalTimeLock: 0, totalFees: 0n, totalAmt: 0n, hops: [], totalFeesMsat: 0n, totalAmtMsat: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Route): Route { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint32 total_time_lock */ 1: - message.totalTimeLock = reader.uint32(); - break; - case /* int64 total_fees = 2 [deprecated = true];*/ 2: - message.totalFees = reader.int64().toBigInt(); - break; - case /* int64 total_amt = 3 [deprecated = true];*/ 3: - message.totalAmt = reader.int64().toBigInt(); - break; - case /* repeated lnrpc.Hop hops */ 4: - message.hops.push(Hop.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* int64 total_fees_msat */ 5: - message.totalFeesMsat = reader.int64().toBigInt(); - break; - case /* int64 total_amt_msat */ 6: - message.totalAmtMsat = reader.int64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: Route, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint32 total_time_lock = 1; */ - if (message.totalTimeLock !== 0) - writer.tag(1, WireType.Varint).uint32(message.totalTimeLock); - /* int64 total_fees = 2 [deprecated = true]; */ - if (message.totalFees !== 0n) - writer.tag(2, WireType.Varint).int64(message.totalFees); - /* int64 total_amt = 3 [deprecated = true]; */ - if (message.totalAmt !== 0n) - writer.tag(3, WireType.Varint).int64(message.totalAmt); - /* repeated lnrpc.Hop hops = 4; */ - for (let i = 0; i < message.hops.length; i++) - Hop.internalBinaryWrite(message.hops[i], writer.tag(4, WireType.LengthDelimited).fork(), options).join(); - /* int64 total_fees_msat = 5; */ - if (message.totalFeesMsat !== 0n) - writer.tag(5, WireType.Varint).int64(message.totalFeesMsat); - /* int64 total_amt_msat = 6; */ - if (message.totalAmtMsat !== 0n) - writer.tag(6, WireType.Varint).int64(message.totalAmtMsat); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Route - */ -export const Route = new Route$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NodeInfoRequest$Type extends MessageType { - constructor() { - super("lnrpc.NodeInfoRequest", [ - { no: 1, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "include_channels", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): NodeInfoRequest { - const message = { pubKey: "", includeChannels: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NodeInfoRequest): NodeInfoRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string pub_key */ 1: - message.pubKey = reader.string(); - break; - case /* bool include_channels */ 2: - message.includeChannels = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: NodeInfoRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string pub_key = 1; */ - if (message.pubKey !== "") - writer.tag(1, WireType.LengthDelimited).string(message.pubKey); - /* bool include_channels = 2; */ - if (message.includeChannels !== false) - writer.tag(2, WireType.Varint).bool(message.includeChannels); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NodeInfoRequest - */ -export const NodeInfoRequest = new NodeInfoRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NodeInfo$Type extends MessageType { - constructor() { - super("lnrpc.NodeInfo", [ - { no: 1, name: "node", kind: "message", T: () => LightningNode }, - { no: 2, name: "num_channels", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 3, name: "total_capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => ChannelEdge } - ]); - } - create(value?: PartialMessage): NodeInfo { - const message = { numChannels: 0, totalCapacity: 0n, channels: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NodeInfo): NodeInfo { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.LightningNode node */ 1: - message.node = LightningNode.internalBinaryRead(reader, reader.uint32(), options, message.node); - break; - case /* uint32 num_channels */ 2: - message.numChannels = reader.uint32(); - break; - case /* int64 total_capacity */ 3: - message.totalCapacity = reader.int64().toBigInt(); - break; - case /* repeated lnrpc.ChannelEdge channels */ 4: - message.channels.push(ChannelEdge.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: NodeInfo, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.LightningNode node = 1; */ - if (message.node) - LightningNode.internalBinaryWrite(message.node, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* uint32 num_channels = 2; */ - if (message.numChannels !== 0) - writer.tag(2, WireType.Varint).uint32(message.numChannels); - /* int64 total_capacity = 3; */ - if (message.totalCapacity !== 0n) - writer.tag(3, WireType.Varint).int64(message.totalCapacity); - /* repeated lnrpc.ChannelEdge channels = 4; */ - for (let i = 0; i < message.channels.length; i++) - ChannelEdge.internalBinaryWrite(message.channels[i], writer.tag(4, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NodeInfo - */ -export const NodeInfo = new NodeInfo$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class LightningNode$Type extends MessageType { - constructor() { - super("lnrpc.LightningNode", [ - { no: 1, name: "last_update", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 2, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "alias", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "addresses", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => NodeAddress }, - { no: 5, name: "color", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 6, name: "features", kind: "map", K: 13 /*ScalarType.UINT32*/, V: { kind: "message", T: () => Feature } }, - { no: 7, name: "custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } } - ]); - } - create(value?: PartialMessage): LightningNode { - const message = { lastUpdate: 0, pubKey: "", alias: "", addresses: [], color: "", features: {}, customRecords: {} }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LightningNode): LightningNode { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint32 last_update */ 1: - message.lastUpdate = reader.uint32(); - break; - case /* string pub_key */ 2: - message.pubKey = reader.string(); - break; - case /* string alias */ 3: - message.alias = reader.string(); - break; - case /* repeated lnrpc.NodeAddress addresses */ 4: - message.addresses.push(NodeAddress.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* string color */ 5: - message.color = reader.string(); - break; - case /* map features */ 6: - this.binaryReadMap6(message.features, reader, options); - break; - case /* map custom_records */ 7: - this.binaryReadMap7(message.customRecords, reader, options); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap6(map: LightningNode["features"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof LightningNode["features"] | undefined, val: LightningNode["features"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint32(); - break; - case 2: - val = Feature.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.LightningNode.features"); - } - } - map[key ?? 0] = val ?? Feature.create(); - } - private binaryReadMap7(map: LightningNode["customRecords"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof LightningNode["customRecords"] | undefined, val: LightningNode["customRecords"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint64().toString(); - break; - case 2: - val = reader.bytes(); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.LightningNode.custom_records"); - } - } - map[key ?? "0"] = val ?? new Uint8Array(0); - } - internalBinaryWrite(message: LightningNode, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint32 last_update = 1; */ - if (message.lastUpdate !== 0) - writer.tag(1, WireType.Varint).uint32(message.lastUpdate); - /* string pub_key = 2; */ - if (message.pubKey !== "") - writer.tag(2, WireType.LengthDelimited).string(message.pubKey); - /* string alias = 3; */ - if (message.alias !== "") - writer.tag(3, WireType.LengthDelimited).string(message.alias); - /* repeated lnrpc.NodeAddress addresses = 4; */ - for (let i = 0; i < message.addresses.length; i++) - NodeAddress.internalBinaryWrite(message.addresses[i], writer.tag(4, WireType.LengthDelimited).fork(), options).join(); - /* string color = 5; */ - if (message.color !== "") - writer.tag(5, WireType.LengthDelimited).string(message.color); - /* map features = 6; */ - for (let k of Object.keys(message.features)) { - writer.tag(6, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint32(parseInt(k)); - writer.tag(2, WireType.LengthDelimited).fork(); - Feature.internalBinaryWrite(message.features[k as any], writer, options); - writer.join().join(); - } - /* map custom_records = 7; */ - for (let k of Object.keys(message.customRecords)) - writer.tag(7, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint64(k).tag(2, WireType.LengthDelimited).bytes(message.customRecords[k]).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.LightningNode - */ -export const LightningNode = new LightningNode$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NodeAddress$Type extends MessageType { - constructor() { - super("lnrpc.NodeAddress", [ - { no: 1, name: "network", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "addr", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): NodeAddress { - const message = { network: "", addr: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NodeAddress): NodeAddress { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string network */ 1: - message.network = reader.string(); - break; - case /* string addr */ 2: - message.addr = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: NodeAddress, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string network = 1; */ - if (message.network !== "") - writer.tag(1, WireType.LengthDelimited).string(message.network); - /* string addr = 2; */ - if (message.addr !== "") - writer.tag(2, WireType.LengthDelimited).string(message.addr); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NodeAddress - */ -export const NodeAddress = new NodeAddress$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class RoutingPolicy$Type extends MessageType { - constructor() { - super("lnrpc.RoutingPolicy", [ - { no: 1, name: "time_lock_delta", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 2, name: "min_htlc", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "fee_base_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "fee_rate_milli_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "disabled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 6, name: "max_htlc_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 7, name: "last_update", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 8, name: "custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } } - ]); - } - create(value?: PartialMessage): RoutingPolicy { - const message = { timeLockDelta: 0, minHtlc: 0n, feeBaseMsat: 0n, feeRateMilliMsat: 0n, disabled: false, maxHtlcMsat: 0n, lastUpdate: 0, customRecords: {} }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RoutingPolicy): RoutingPolicy { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint32 time_lock_delta */ 1: - message.timeLockDelta = reader.uint32(); - break; - case /* int64 min_htlc */ 2: - message.minHtlc = reader.int64().toBigInt(); - break; - case /* int64 fee_base_msat */ 3: - message.feeBaseMsat = reader.int64().toBigInt(); - break; - case /* int64 fee_rate_milli_msat */ 4: - message.feeRateMilliMsat = reader.int64().toBigInt(); - break; - case /* bool disabled */ 5: - message.disabled = reader.bool(); - break; - case /* uint64 max_htlc_msat */ 6: - message.maxHtlcMsat = reader.uint64().toBigInt(); - break; - case /* uint32 last_update */ 7: - message.lastUpdate = reader.uint32(); - break; - case /* map custom_records */ 8: - this.binaryReadMap8(message.customRecords, reader, options); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap8(map: RoutingPolicy["customRecords"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof RoutingPolicy["customRecords"] | undefined, val: RoutingPolicy["customRecords"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint64().toString(); - break; - case 2: - val = reader.bytes(); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.RoutingPolicy.custom_records"); - } - } - map[key ?? "0"] = val ?? new Uint8Array(0); - } - internalBinaryWrite(message: RoutingPolicy, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint32 time_lock_delta = 1; */ - if (message.timeLockDelta !== 0) - writer.tag(1, WireType.Varint).uint32(message.timeLockDelta); - /* int64 min_htlc = 2; */ - if (message.minHtlc !== 0n) - writer.tag(2, WireType.Varint).int64(message.minHtlc); - /* int64 fee_base_msat = 3; */ - if (message.feeBaseMsat !== 0n) - writer.tag(3, WireType.Varint).int64(message.feeBaseMsat); - /* int64 fee_rate_milli_msat = 4; */ - if (message.feeRateMilliMsat !== 0n) - writer.tag(4, WireType.Varint).int64(message.feeRateMilliMsat); - /* bool disabled = 5; */ - if (message.disabled !== false) - writer.tag(5, WireType.Varint).bool(message.disabled); - /* uint64 max_htlc_msat = 6; */ - if (message.maxHtlcMsat !== 0n) - writer.tag(6, WireType.Varint).uint64(message.maxHtlcMsat); - /* uint32 last_update = 7; */ - if (message.lastUpdate !== 0) - writer.tag(7, WireType.Varint).uint32(message.lastUpdate); - /* map custom_records = 8; */ - for (let k of Object.keys(message.customRecords)) - writer.tag(8, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint64(k).tag(2, WireType.LengthDelimited).bytes(message.customRecords[k]).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.RoutingPolicy - */ -export const RoutingPolicy = new RoutingPolicy$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelEdge$Type extends MessageType { - constructor() { - super("lnrpc.ChannelEdge", [ - { no: 1, name: "channel_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "chan_point", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "last_update", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 4, name: "node1_pub", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 5, name: "node2_pub", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 6, name: "capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 7, name: "node1_policy", kind: "message", T: () => RoutingPolicy }, - { no: 8, name: "node2_policy", kind: "message", T: () => RoutingPolicy }, - { no: 9, name: "custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } } - ]); - } - create(value?: PartialMessage): ChannelEdge { - const message = { channelId: "0", chanPoint: "", lastUpdate: 0, node1Pub: "", node2Pub: "", capacity: 0n, customRecords: {} }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelEdge): ChannelEdge { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 channel_id = 1 [jstype = JS_STRING];*/ 1: - message.channelId = reader.uint64().toString(); - break; - case /* string chan_point */ 2: - message.chanPoint = reader.string(); - break; - case /* uint32 last_update = 3 [deprecated = true];*/ 3: - message.lastUpdate = reader.uint32(); - break; - case /* string node1_pub */ 4: - message.node1Pub = reader.string(); - break; - case /* string node2_pub */ 5: - message.node2Pub = reader.string(); - break; - case /* int64 capacity */ 6: - message.capacity = reader.int64().toBigInt(); - break; - case /* lnrpc.RoutingPolicy node1_policy */ 7: - message.node1Policy = RoutingPolicy.internalBinaryRead(reader, reader.uint32(), options, message.node1Policy); - break; - case /* lnrpc.RoutingPolicy node2_policy */ 8: - message.node2Policy = RoutingPolicy.internalBinaryRead(reader, reader.uint32(), options, message.node2Policy); - break; - case /* map custom_records */ 9: - this.binaryReadMap9(message.customRecords, reader, options); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap9(map: ChannelEdge["customRecords"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof ChannelEdge["customRecords"] | undefined, val: ChannelEdge["customRecords"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint64().toString(); - break; - case 2: - val = reader.bytes(); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.ChannelEdge.custom_records"); - } - } - map[key ?? "0"] = val ?? new Uint8Array(0); - } - internalBinaryWrite(message: ChannelEdge, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 channel_id = 1 [jstype = JS_STRING]; */ - if (message.channelId !== "0") - writer.tag(1, WireType.Varint).uint64(message.channelId); - /* string chan_point = 2; */ - if (message.chanPoint !== "") - writer.tag(2, WireType.LengthDelimited).string(message.chanPoint); - /* uint32 last_update = 3 [deprecated = true]; */ - if (message.lastUpdate !== 0) - writer.tag(3, WireType.Varint).uint32(message.lastUpdate); - /* string node1_pub = 4; */ - if (message.node1Pub !== "") - writer.tag(4, WireType.LengthDelimited).string(message.node1Pub); - /* string node2_pub = 5; */ - if (message.node2Pub !== "") - writer.tag(5, WireType.LengthDelimited).string(message.node2Pub); - /* int64 capacity = 6; */ - if (message.capacity !== 0n) - writer.tag(6, WireType.Varint).int64(message.capacity); - /* lnrpc.RoutingPolicy node1_policy = 7; */ - if (message.node1Policy) - RoutingPolicy.internalBinaryWrite(message.node1Policy, writer.tag(7, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.RoutingPolicy node2_policy = 8; */ - if (message.node2Policy) - RoutingPolicy.internalBinaryWrite(message.node2Policy, writer.tag(8, WireType.LengthDelimited).fork(), options).join(); - /* map custom_records = 9; */ - for (let k of Object.keys(message.customRecords)) - writer.tag(9, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint64(k).tag(2, WireType.LengthDelimited).bytes(message.customRecords[k]).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelEdge - */ -export const ChannelEdge = new ChannelEdge$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelGraphRequest$Type extends MessageType { - constructor() { - super("lnrpc.ChannelGraphRequest", [ - { no: 1, name: "include_unannounced", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): ChannelGraphRequest { - const message = { includeUnannounced: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelGraphRequest): ChannelGraphRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool include_unannounced */ 1: - message.includeUnannounced = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChannelGraphRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool include_unannounced = 1; */ - if (message.includeUnannounced !== false) - writer.tag(1, WireType.Varint).bool(message.includeUnannounced); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelGraphRequest - */ -export const ChannelGraphRequest = new ChannelGraphRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelGraph$Type extends MessageType { - constructor() { - super("lnrpc.ChannelGraph", [ - { no: 1, name: "nodes", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => LightningNode }, - { no: 2, name: "edges", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => ChannelEdge } - ]); - } - create(value?: PartialMessage): ChannelGraph { - const message = { nodes: [], edges: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelGraph): ChannelGraph { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.LightningNode nodes */ 1: - message.nodes.push(LightningNode.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* repeated lnrpc.ChannelEdge edges */ 2: - message.edges.push(ChannelEdge.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChannelGraph, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.LightningNode nodes = 1; */ - for (let i = 0; i < message.nodes.length; i++) - LightningNode.internalBinaryWrite(message.nodes[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* repeated lnrpc.ChannelEdge edges = 2; */ - for (let i = 0; i < message.edges.length; i++) - ChannelEdge.internalBinaryWrite(message.edges[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelGraph - */ -export const ChannelGraph = new ChannelGraph$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NodeMetricsRequest$Type extends MessageType { - constructor() { - super("lnrpc.NodeMetricsRequest", [ - { no: 1, name: "types", kind: "enum", repeat: 1 /*RepeatType.PACKED*/, T: () => ["lnrpc.NodeMetricType", NodeMetricType] } - ]); - } - create(value?: PartialMessage): NodeMetricsRequest { - const message = { types: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NodeMetricsRequest): NodeMetricsRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.NodeMetricType types */ 1: - if (wireType === WireType.LengthDelimited) - for (let e = reader.int32() + reader.pos; reader.pos < e;) - message.types.push(reader.int32()); - else - message.types.push(reader.int32()); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: NodeMetricsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.NodeMetricType types = 1; */ - if (message.types.length) { - writer.tag(1, WireType.LengthDelimited).fork(); - for (let i = 0; i < message.types.length; i++) - writer.int32(message.types[i]); - writer.join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NodeMetricsRequest - */ -export const NodeMetricsRequest = new NodeMetricsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NodeMetricsResponse$Type extends MessageType { - constructor() { - super("lnrpc.NodeMetricsResponse", [ - { no: 1, name: "betweenness_centrality", kind: "map", K: 9 /*ScalarType.STRING*/, V: { kind: "message", T: () => FloatMetric } } - ]); - } - create(value?: PartialMessage): NodeMetricsResponse { - const message = { betweennessCentrality: {} }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NodeMetricsResponse): NodeMetricsResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* map betweenness_centrality */ 1: - this.binaryReadMap1(message.betweennessCentrality, reader, options); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap1(map: NodeMetricsResponse["betweennessCentrality"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof NodeMetricsResponse["betweennessCentrality"] | undefined, val: NodeMetricsResponse["betweennessCentrality"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.string(); - break; - case 2: - val = FloatMetric.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.NodeMetricsResponse.betweenness_centrality"); - } - } - map[key ?? ""] = val ?? FloatMetric.create(); - } - internalBinaryWrite(message: NodeMetricsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* map betweenness_centrality = 1; */ - for (let k of Object.keys(message.betweennessCentrality)) { - writer.tag(1, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k); - writer.tag(2, WireType.LengthDelimited).fork(); - FloatMetric.internalBinaryWrite(message.betweennessCentrality[k], writer, options); - writer.join().join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NodeMetricsResponse - */ -export const NodeMetricsResponse = new NodeMetricsResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FloatMetric$Type extends MessageType { - constructor() { - super("lnrpc.FloatMetric", [ - { no: 1, name: "value", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ }, - { no: 2, name: "normalized_value", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ } - ]); - } - create(value?: PartialMessage): FloatMetric { - const message = { value: 0, normalizedValue: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FloatMetric): FloatMetric { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* double value */ 1: - message.value = reader.double(); - break; - case /* double normalized_value */ 2: - message.normalizedValue = reader.double(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: FloatMetric, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* double value = 1; */ - if (message.value !== 0) - writer.tag(1, WireType.Bit64).double(message.value); - /* double normalized_value = 2; */ - if (message.normalizedValue !== 0) - writer.tag(2, WireType.Bit64).double(message.normalizedValue); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FloatMetric - */ -export const FloatMetric = new FloatMetric$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChanInfoRequest$Type extends MessageType { - constructor() { - super("lnrpc.ChanInfoRequest", [ - { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } - ]); - } - create(value?: PartialMessage): ChanInfoRequest { - const message = { chanId: "0" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChanInfoRequest): ChanInfoRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 chan_id = 1 [jstype = JS_STRING];*/ 1: - message.chanId = reader.uint64().toString(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChanInfoRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 chan_id = 1 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(1, WireType.Varint).uint64(message.chanId); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChanInfoRequest - */ -export const ChanInfoRequest = new ChanInfoRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NetworkInfoRequest$Type extends MessageType { - constructor() { - super("lnrpc.NetworkInfoRequest", []); - } - create(value?: PartialMessage): NetworkInfoRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NetworkInfoRequest): NetworkInfoRequest { - return target ?? this.create(); - } - internalBinaryWrite(message: NetworkInfoRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NetworkInfoRequest - */ -export const NetworkInfoRequest = new NetworkInfoRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NetworkInfo$Type extends MessageType { - constructor() { - super("lnrpc.NetworkInfo", [ - { no: 1, name: "graph_diameter", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 2, name: "avg_out_degree", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ }, - { no: 3, name: "max_out_degree", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 4, name: "num_nodes", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "num_channels", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 6, name: "total_network_capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 7, name: "avg_channel_size", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ }, - { no: 8, name: "min_channel_size", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 9, name: "max_channel_size", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 10, name: "median_channel_size_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 11, name: "num_zombie_chans", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): NetworkInfo { - const message = { graphDiameter: 0, avgOutDegree: 0, maxOutDegree: 0, numNodes: 0, numChannels: 0, totalNetworkCapacity: 0n, avgChannelSize: 0, minChannelSize: 0n, maxChannelSize: 0n, medianChannelSizeSat: 0n, numZombieChans: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NetworkInfo): NetworkInfo { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint32 graph_diameter */ 1: - message.graphDiameter = reader.uint32(); - break; - case /* double avg_out_degree */ 2: - message.avgOutDegree = reader.double(); - break; - case /* uint32 max_out_degree */ 3: - message.maxOutDegree = reader.uint32(); - break; - case /* uint32 num_nodes */ 4: - message.numNodes = reader.uint32(); - break; - case /* uint32 num_channels */ 5: - message.numChannels = reader.uint32(); - break; - case /* int64 total_network_capacity */ 6: - message.totalNetworkCapacity = reader.int64().toBigInt(); - break; - case /* double avg_channel_size */ 7: - message.avgChannelSize = reader.double(); - break; - case /* int64 min_channel_size */ 8: - message.minChannelSize = reader.int64().toBigInt(); - break; - case /* int64 max_channel_size */ 9: - message.maxChannelSize = reader.int64().toBigInt(); - break; - case /* int64 median_channel_size_sat */ 10: - message.medianChannelSizeSat = reader.int64().toBigInt(); - break; - case /* uint64 num_zombie_chans */ 11: - message.numZombieChans = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: NetworkInfo, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint32 graph_diameter = 1; */ - if (message.graphDiameter !== 0) - writer.tag(1, WireType.Varint).uint32(message.graphDiameter); - /* double avg_out_degree = 2; */ - if (message.avgOutDegree !== 0) - writer.tag(2, WireType.Bit64).double(message.avgOutDegree); - /* uint32 max_out_degree = 3; */ - if (message.maxOutDegree !== 0) - writer.tag(3, WireType.Varint).uint32(message.maxOutDegree); - /* uint32 num_nodes = 4; */ - if (message.numNodes !== 0) - writer.tag(4, WireType.Varint).uint32(message.numNodes); - /* uint32 num_channels = 5; */ - if (message.numChannels !== 0) - writer.tag(5, WireType.Varint).uint32(message.numChannels); - /* int64 total_network_capacity = 6; */ - if (message.totalNetworkCapacity !== 0n) - writer.tag(6, WireType.Varint).int64(message.totalNetworkCapacity); - /* double avg_channel_size = 7; */ - if (message.avgChannelSize !== 0) - writer.tag(7, WireType.Bit64).double(message.avgChannelSize); - /* int64 min_channel_size = 8; */ - if (message.minChannelSize !== 0n) - writer.tag(8, WireType.Varint).int64(message.minChannelSize); - /* int64 max_channel_size = 9; */ - if (message.maxChannelSize !== 0n) - writer.tag(9, WireType.Varint).int64(message.maxChannelSize); - /* int64 median_channel_size_sat = 10; */ - if (message.medianChannelSizeSat !== 0n) - writer.tag(10, WireType.Varint).int64(message.medianChannelSizeSat); - /* uint64 num_zombie_chans = 11; */ - if (message.numZombieChans !== 0n) - writer.tag(11, WireType.Varint).uint64(message.numZombieChans); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NetworkInfo - */ -export const NetworkInfo = new NetworkInfo$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class StopRequest$Type extends MessageType { - constructor() { - super("lnrpc.StopRequest", []); - } - create(value?: PartialMessage): StopRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StopRequest): StopRequest { - return target ?? this.create(); - } - internalBinaryWrite(message: StopRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.StopRequest - */ -export const StopRequest = new StopRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class StopResponse$Type extends MessageType { - constructor() { - super("lnrpc.StopResponse", []); - } - create(value?: PartialMessage): StopResponse { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StopResponse): StopResponse { - return target ?? this.create(); - } - internalBinaryWrite(message: StopResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.StopResponse - */ -export const StopResponse = new StopResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class GraphTopologySubscription$Type extends MessageType { - constructor() { - super("lnrpc.GraphTopologySubscription", []); - } - create(value?: PartialMessage): GraphTopologySubscription { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GraphTopologySubscription): GraphTopologySubscription { - return target ?? this.create(); - } - internalBinaryWrite(message: GraphTopologySubscription, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.GraphTopologySubscription - */ -export const GraphTopologySubscription = new GraphTopologySubscription$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class GraphTopologyUpdate$Type extends MessageType { - constructor() { - super("lnrpc.GraphTopologyUpdate", [ - { no: 1, name: "node_updates", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => NodeUpdate }, - { no: 2, name: "channel_updates", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => ChannelEdgeUpdate }, - { no: 3, name: "closed_chans", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => ClosedChannelUpdate } - ]); - } - create(value?: PartialMessage): GraphTopologyUpdate { - const message = { nodeUpdates: [], channelUpdates: [], closedChans: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GraphTopologyUpdate): GraphTopologyUpdate { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.NodeUpdate node_updates */ 1: - message.nodeUpdates.push(NodeUpdate.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* repeated lnrpc.ChannelEdgeUpdate channel_updates */ 2: - message.channelUpdates.push(ChannelEdgeUpdate.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* repeated lnrpc.ClosedChannelUpdate closed_chans */ 3: - message.closedChans.push(ClosedChannelUpdate.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: GraphTopologyUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.NodeUpdate node_updates = 1; */ - for (let i = 0; i < message.nodeUpdates.length; i++) - NodeUpdate.internalBinaryWrite(message.nodeUpdates[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* repeated lnrpc.ChannelEdgeUpdate channel_updates = 2; */ - for (let i = 0; i < message.channelUpdates.length; i++) - ChannelEdgeUpdate.internalBinaryWrite(message.channelUpdates[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - /* repeated lnrpc.ClosedChannelUpdate closed_chans = 3; */ - for (let i = 0; i < message.closedChans.length; i++) - ClosedChannelUpdate.internalBinaryWrite(message.closedChans[i], writer.tag(3, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.GraphTopologyUpdate - */ -export const GraphTopologyUpdate = new GraphTopologyUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class NodeUpdate$Type extends MessageType { - constructor() { - super("lnrpc.NodeUpdate", [ - { no: 1, name: "addresses", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "identity_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "global_features", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 4, name: "alias", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 5, name: "color", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 7, name: "node_addresses", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => NodeAddress }, - { no: 6, name: "features", kind: "map", K: 13 /*ScalarType.UINT32*/, V: { kind: "message", T: () => Feature } } - ]); - } - create(value?: PartialMessage): NodeUpdate { - const message = { addresses: [], identityKey: "", globalFeatures: new Uint8Array(0), alias: "", color: "", nodeAddresses: [], features: {} }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NodeUpdate): NodeUpdate { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated string addresses = 1 [deprecated = true];*/ 1: - message.addresses.push(reader.string()); - break; - case /* string identity_key */ 2: - message.identityKey = reader.string(); - break; - case /* bytes global_features = 3 [deprecated = true];*/ 3: - message.globalFeatures = reader.bytes(); - break; - case /* string alias */ 4: - message.alias = reader.string(); - break; - case /* string color */ 5: - message.color = reader.string(); - break; - case /* repeated lnrpc.NodeAddress node_addresses */ 7: - message.nodeAddresses.push(NodeAddress.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* map features */ 6: - this.binaryReadMap6(message.features, reader, options); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap6(map: NodeUpdate["features"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof NodeUpdate["features"] | undefined, val: NodeUpdate["features"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint32(); - break; - case 2: - val = Feature.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.NodeUpdate.features"); - } - } - map[key ?? 0] = val ?? Feature.create(); - } - internalBinaryWrite(message: NodeUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated string addresses = 1 [deprecated = true]; */ - for (let i = 0; i < message.addresses.length; i++) - writer.tag(1, WireType.LengthDelimited).string(message.addresses[i]); - /* string identity_key = 2; */ - if (message.identityKey !== "") - writer.tag(2, WireType.LengthDelimited).string(message.identityKey); - /* bytes global_features = 3 [deprecated = true]; */ - if (message.globalFeatures.length) - writer.tag(3, WireType.LengthDelimited).bytes(message.globalFeatures); - /* string alias = 4; */ - if (message.alias !== "") - writer.tag(4, WireType.LengthDelimited).string(message.alias); - /* string color = 5; */ - if (message.color !== "") - writer.tag(5, WireType.LengthDelimited).string(message.color); - /* repeated lnrpc.NodeAddress node_addresses = 7; */ - for (let i = 0; i < message.nodeAddresses.length; i++) - NodeAddress.internalBinaryWrite(message.nodeAddresses[i], writer.tag(7, WireType.LengthDelimited).fork(), options).join(); - /* map features = 6; */ - for (let k of Object.keys(message.features)) { - writer.tag(6, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint32(parseInt(k)); - writer.tag(2, WireType.LengthDelimited).fork(); - Feature.internalBinaryWrite(message.features[k as any], writer, options); - writer.join().join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.NodeUpdate - */ -export const NodeUpdate = new NodeUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelEdgeUpdate$Type extends MessageType { - constructor() { - super("lnrpc.ChannelEdgeUpdate", [ - { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "chan_point", kind: "message", T: () => ChannelPoint }, - { no: 3, name: "capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "routing_policy", kind: "message", T: () => RoutingPolicy }, - { no: 5, name: "advertising_node", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 6, name: "connecting_node", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): ChannelEdgeUpdate { - const message = { chanId: "0", capacity: 0n, advertisingNode: "", connectingNode: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelEdgeUpdate): ChannelEdgeUpdate { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 chan_id = 1 [jstype = JS_STRING];*/ 1: - message.chanId = reader.uint64().toString(); - break; - case /* lnrpc.ChannelPoint chan_point */ 2: - message.chanPoint = ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.chanPoint); - break; - case /* int64 capacity */ 3: - message.capacity = reader.int64().toBigInt(); - break; - case /* lnrpc.RoutingPolicy routing_policy */ 4: - message.routingPolicy = RoutingPolicy.internalBinaryRead(reader, reader.uint32(), options, message.routingPolicy); - break; - case /* string advertising_node */ 5: - message.advertisingNode = reader.string(); - break; - case /* string connecting_node */ 6: - message.connectingNode = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChannelEdgeUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 chan_id = 1 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(1, WireType.Varint).uint64(message.chanId); - /* lnrpc.ChannelPoint chan_point = 2; */ - if (message.chanPoint) - ChannelPoint.internalBinaryWrite(message.chanPoint, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - /* int64 capacity = 3; */ - if (message.capacity !== 0n) - writer.tag(3, WireType.Varint).int64(message.capacity); - /* lnrpc.RoutingPolicy routing_policy = 4; */ - if (message.routingPolicy) - RoutingPolicy.internalBinaryWrite(message.routingPolicy, writer.tag(4, WireType.LengthDelimited).fork(), options).join(); - /* string advertising_node = 5; */ - if (message.advertisingNode !== "") - writer.tag(5, WireType.LengthDelimited).string(message.advertisingNode); - /* string connecting_node = 6; */ - if (message.connectingNode !== "") - writer.tag(6, WireType.LengthDelimited).string(message.connectingNode); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelEdgeUpdate - */ -export const ChannelEdgeUpdate = new ChannelEdgeUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ClosedChannelUpdate$Type extends MessageType { - constructor() { - super("lnrpc.ClosedChannelUpdate", [ - { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "closed_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 4, name: "chan_point", kind: "message", T: () => ChannelPoint } - ]); - } - create(value?: PartialMessage): ClosedChannelUpdate { - const message = { chanId: "0", capacity: 0n, closedHeight: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ClosedChannelUpdate): ClosedChannelUpdate { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 chan_id = 1 [jstype = JS_STRING];*/ 1: - message.chanId = reader.uint64().toString(); - break; - case /* int64 capacity */ 2: - message.capacity = reader.int64().toBigInt(); - break; - case /* uint32 closed_height */ 3: - message.closedHeight = reader.uint32(); - break; - case /* lnrpc.ChannelPoint chan_point */ 4: - message.chanPoint = ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.chanPoint); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ClosedChannelUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 chan_id = 1 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(1, WireType.Varint).uint64(message.chanId); - /* int64 capacity = 2; */ - if (message.capacity !== 0n) - writer.tag(2, WireType.Varint).int64(message.capacity); - /* uint32 closed_height = 3; */ - if (message.closedHeight !== 0) - writer.tag(3, WireType.Varint).uint32(message.closedHeight); - /* lnrpc.ChannelPoint chan_point = 4; */ - if (message.chanPoint) - ChannelPoint.internalBinaryWrite(message.chanPoint, writer.tag(4, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ClosedChannelUpdate - */ -export const ClosedChannelUpdate = new ClosedChannelUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class HopHint$Type extends MessageType { - constructor() { - super("lnrpc.HopHint", [ - { no: 1, name: "node_id", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 3, name: "fee_base_msat", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 4, name: "fee_proportional_millionths", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "cltv_expiry_delta", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value?: PartialMessage): HopHint { - const message = { nodeId: "", chanId: "0", feeBaseMsat: 0, feeProportionalMillionths: 0, cltvExpiryDelta: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: HopHint): HopHint { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string node_id */ 1: - message.nodeId = reader.string(); - break; - case /* uint64 chan_id = 2 [jstype = JS_STRING];*/ 2: - message.chanId = reader.uint64().toString(); - break; - case /* uint32 fee_base_msat */ 3: - message.feeBaseMsat = reader.uint32(); - break; - case /* uint32 fee_proportional_millionths */ 4: - message.feeProportionalMillionths = reader.uint32(); - break; - case /* uint32 cltv_expiry_delta */ 5: - message.cltvExpiryDelta = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: HopHint, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string node_id = 1; */ - if (message.nodeId !== "") - writer.tag(1, WireType.LengthDelimited).string(message.nodeId); - /* uint64 chan_id = 2 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(2, WireType.Varint).uint64(message.chanId); - /* uint32 fee_base_msat = 3; */ - if (message.feeBaseMsat !== 0) - writer.tag(3, WireType.Varint).uint32(message.feeBaseMsat); - /* uint32 fee_proportional_millionths = 4; */ - if (message.feeProportionalMillionths !== 0) - writer.tag(4, WireType.Varint).uint32(message.feeProportionalMillionths); - /* uint32 cltv_expiry_delta = 5; */ - if (message.cltvExpiryDelta !== 0) - writer.tag(5, WireType.Varint).uint32(message.cltvExpiryDelta); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.HopHint - */ -export const HopHint = new HopHint$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SetID$Type extends MessageType { - constructor() { - super("lnrpc.SetID", [ - { no: 1, name: "set_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): SetID { - const message = { setId: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SetID): SetID { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes set_id */ 1: - message.setId = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: SetID, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes set_id = 1; */ - if (message.setId.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.setId); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.SetID - */ -export const SetID = new SetID$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class RouteHint$Type extends MessageType { - constructor() { - super("lnrpc.RouteHint", [ - { no: 1, name: "hop_hints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => HopHint } - ]); - } - create(value?: PartialMessage): RouteHint { - const message = { hopHints: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RouteHint): RouteHint { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.HopHint hop_hints */ 1: - message.hopHints.push(HopHint.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: RouteHint, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.HopHint hop_hints = 1; */ - for (let i = 0; i < message.hopHints.length; i++) - HopHint.internalBinaryWrite(message.hopHints[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.RouteHint - */ -export const RouteHint = new RouteHint$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class AMPInvoiceState$Type extends MessageType { - constructor() { - super("lnrpc.AMPInvoiceState", [ - { no: 1, name: "state", kind: "enum", T: () => ["lnrpc.InvoiceHTLCState", InvoiceHTLCState] }, - { no: 2, name: "settle_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "settle_time", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "amt_paid_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): AMPInvoiceState { - const message = { state: 0, settleIndex: 0n, settleTime: 0n, amtPaidMsat: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AMPInvoiceState): AMPInvoiceState { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.InvoiceHTLCState state */ 1: - message.state = reader.int32(); - break; - case /* uint64 settle_index */ 2: - message.settleIndex = reader.uint64().toBigInt(); - break; - case /* int64 settle_time */ 3: - message.settleTime = reader.int64().toBigInt(); - break; - case /* int64 amt_paid_msat */ 5: - message.amtPaidMsat = reader.int64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: AMPInvoiceState, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.InvoiceHTLCState state = 1; */ - if (message.state !== 0) - writer.tag(1, WireType.Varint).int32(message.state); - /* uint64 settle_index = 2; */ - if (message.settleIndex !== 0n) - writer.tag(2, WireType.Varint).uint64(message.settleIndex); - /* int64 settle_time = 3; */ - if (message.settleTime !== 0n) - writer.tag(3, WireType.Varint).int64(message.settleTime); - /* int64 amt_paid_msat = 5; */ - if (message.amtPaidMsat !== 0n) - writer.tag(5, WireType.Varint).int64(message.amtPaidMsat); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.AMPInvoiceState - */ -export const AMPInvoiceState = new AMPInvoiceState$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Invoice$Type extends MessageType { - constructor() { - super("lnrpc.Invoice", [ - { no: 1, name: "memo", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "r_preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 4, name: "r_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 5, name: "value", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 23, name: "value_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "settled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 7, name: "creation_date", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 8, name: "settle_date", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 9, name: "payment_request", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 10, name: "description_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 11, name: "expiry", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 12, name: "fallback_addr", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 13, name: "cltv_expiry", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 14, name: "route_hints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => RouteHint }, - { no: 15, name: "private", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 16, name: "add_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 17, name: "settle_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 18, name: "amt_paid", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 19, name: "amt_paid_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 20, name: "amt_paid_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 21, name: "state", kind: "enum", T: () => ["lnrpc.Invoice.InvoiceState", Invoice_InvoiceState] }, - { no: 22, name: "htlcs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => InvoiceHTLC }, - { no: 24, name: "features", kind: "map", K: 13 /*ScalarType.UINT32*/, V: { kind: "message", T: () => Feature } }, - { no: 25, name: "is_keysend", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 26, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 27, name: "is_amp", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 28, name: "amp_invoice_state", kind: "map", K: 9 /*ScalarType.STRING*/, V: { kind: "message", T: () => AMPInvoiceState } } - ]); - } - create(value?: PartialMessage): Invoice { - const message = { memo: "", rPreimage: new Uint8Array(0), rHash: new Uint8Array(0), value: 0n, valueMsat: 0n, settled: false, creationDate: 0n, settleDate: 0n, paymentRequest: "", descriptionHash: new Uint8Array(0), expiry: 0n, fallbackAddr: "", cltvExpiry: 0n, routeHints: [], private: false, addIndex: 0n, settleIndex: 0n, amtPaid: 0n, amtPaidSat: 0n, amtPaidMsat: 0n, state: 0, htlcs: [], features: {}, isKeysend: false, paymentAddr: new Uint8Array(0), isAmp: false, ampInvoiceState: {} }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Invoice): Invoice { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string memo */ 1: - message.memo = reader.string(); - break; - case /* bytes r_preimage */ 3: - message.rPreimage = reader.bytes(); - break; - case /* bytes r_hash */ 4: - message.rHash = reader.bytes(); - break; - case /* int64 value */ 5: - message.value = reader.int64().toBigInt(); - break; - case /* int64 value_msat */ 23: - message.valueMsat = reader.int64().toBigInt(); - break; - case /* bool settled = 6 [deprecated = true];*/ 6: - message.settled = reader.bool(); - break; - case /* int64 creation_date */ 7: - message.creationDate = reader.int64().toBigInt(); - break; - case /* int64 settle_date */ 8: - message.settleDate = reader.int64().toBigInt(); - break; - case /* string payment_request */ 9: - message.paymentRequest = reader.string(); - break; - case /* bytes description_hash */ 10: - message.descriptionHash = reader.bytes(); - break; - case /* int64 expiry */ 11: - message.expiry = reader.int64().toBigInt(); - break; - case /* string fallback_addr */ 12: - message.fallbackAddr = reader.string(); - break; - case /* uint64 cltv_expiry */ 13: - message.cltvExpiry = reader.uint64().toBigInt(); - break; - case /* repeated lnrpc.RouteHint route_hints */ 14: - message.routeHints.push(RouteHint.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* bool private */ 15: - message.private = reader.bool(); - break; - case /* uint64 add_index */ 16: - message.addIndex = reader.uint64().toBigInt(); - break; - case /* uint64 settle_index */ 17: - message.settleIndex = reader.uint64().toBigInt(); - break; - case /* int64 amt_paid = 18 [deprecated = true];*/ 18: - message.amtPaid = reader.int64().toBigInt(); - break; - case /* int64 amt_paid_sat */ 19: - message.amtPaidSat = reader.int64().toBigInt(); - break; - case /* int64 amt_paid_msat */ 20: - message.amtPaidMsat = reader.int64().toBigInt(); - break; - case /* lnrpc.Invoice.InvoiceState state */ 21: - message.state = reader.int32(); - break; - case /* repeated lnrpc.InvoiceHTLC htlcs */ 22: - message.htlcs.push(InvoiceHTLC.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* map features */ 24: - this.binaryReadMap24(message.features, reader, options); - break; - case /* bool is_keysend */ 25: - message.isKeysend = reader.bool(); - break; - case /* bytes payment_addr */ 26: - message.paymentAddr = reader.bytes(); - break; - case /* bool is_amp */ 27: - message.isAmp = reader.bool(); - break; - case /* map amp_invoice_state */ 28: - this.binaryReadMap28(message.ampInvoiceState, reader, options); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap24(map: Invoice["features"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof Invoice["features"] | undefined, val: Invoice["features"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint32(); - break; - case 2: - val = Feature.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.Invoice.features"); - } - } - map[key ?? 0] = val ?? Feature.create(); - } - private binaryReadMap28(map: Invoice["ampInvoiceState"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof Invoice["ampInvoiceState"] | undefined, val: Invoice["ampInvoiceState"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.string(); - break; - case 2: - val = AMPInvoiceState.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.Invoice.amp_invoice_state"); - } - } - map[key ?? ""] = val ?? AMPInvoiceState.create(); - } - internalBinaryWrite(message: Invoice, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string memo = 1; */ - if (message.memo !== "") - writer.tag(1, WireType.LengthDelimited).string(message.memo); - /* bytes r_preimage = 3; */ - if (message.rPreimage.length) - writer.tag(3, WireType.LengthDelimited).bytes(message.rPreimage); - /* bytes r_hash = 4; */ - if (message.rHash.length) - writer.tag(4, WireType.LengthDelimited).bytes(message.rHash); - /* int64 value = 5; */ - if (message.value !== 0n) - writer.tag(5, WireType.Varint).int64(message.value); - /* int64 value_msat = 23; */ - if (message.valueMsat !== 0n) - writer.tag(23, WireType.Varint).int64(message.valueMsat); - /* bool settled = 6 [deprecated = true]; */ - if (message.settled !== false) - writer.tag(6, WireType.Varint).bool(message.settled); - /* int64 creation_date = 7; */ - if (message.creationDate !== 0n) - writer.tag(7, WireType.Varint).int64(message.creationDate); - /* int64 settle_date = 8; */ - if (message.settleDate !== 0n) - writer.tag(8, WireType.Varint).int64(message.settleDate); - /* string payment_request = 9; */ - if (message.paymentRequest !== "") - writer.tag(9, WireType.LengthDelimited).string(message.paymentRequest); - /* bytes description_hash = 10; */ - if (message.descriptionHash.length) - writer.tag(10, WireType.LengthDelimited).bytes(message.descriptionHash); - /* int64 expiry = 11; */ - if (message.expiry !== 0n) - writer.tag(11, WireType.Varint).int64(message.expiry); - /* string fallback_addr = 12; */ - if (message.fallbackAddr !== "") - writer.tag(12, WireType.LengthDelimited).string(message.fallbackAddr); - /* uint64 cltv_expiry = 13; */ - if (message.cltvExpiry !== 0n) - writer.tag(13, WireType.Varint).uint64(message.cltvExpiry); - /* repeated lnrpc.RouteHint route_hints = 14; */ - for (let i = 0; i < message.routeHints.length; i++) - RouteHint.internalBinaryWrite(message.routeHints[i], writer.tag(14, WireType.LengthDelimited).fork(), options).join(); - /* bool private = 15; */ - if (message.private !== false) - writer.tag(15, WireType.Varint).bool(message.private); - /* uint64 add_index = 16; */ - if (message.addIndex !== 0n) - writer.tag(16, WireType.Varint).uint64(message.addIndex); - /* uint64 settle_index = 17; */ - if (message.settleIndex !== 0n) - writer.tag(17, WireType.Varint).uint64(message.settleIndex); - /* int64 amt_paid = 18 [deprecated = true]; */ - if (message.amtPaid !== 0n) - writer.tag(18, WireType.Varint).int64(message.amtPaid); - /* int64 amt_paid_sat = 19; */ - if (message.amtPaidSat !== 0n) - writer.tag(19, WireType.Varint).int64(message.amtPaidSat); - /* int64 amt_paid_msat = 20; */ - if (message.amtPaidMsat !== 0n) - writer.tag(20, WireType.Varint).int64(message.amtPaidMsat); - /* lnrpc.Invoice.InvoiceState state = 21; */ - if (message.state !== 0) - writer.tag(21, WireType.Varint).int32(message.state); - /* repeated lnrpc.InvoiceHTLC htlcs = 22; */ - for (let i = 0; i < message.htlcs.length; i++) - InvoiceHTLC.internalBinaryWrite(message.htlcs[i], writer.tag(22, WireType.LengthDelimited).fork(), options).join(); - /* map features = 24; */ - for (let k of Object.keys(message.features)) { - writer.tag(24, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint32(parseInt(k)); - writer.tag(2, WireType.LengthDelimited).fork(); - Feature.internalBinaryWrite(message.features[k as any], writer, options); - writer.join().join(); - } - /* bool is_keysend = 25; */ - if (message.isKeysend !== false) - writer.tag(25, WireType.Varint).bool(message.isKeysend); - /* bytes payment_addr = 26; */ - if (message.paymentAddr.length) - writer.tag(26, WireType.LengthDelimited).bytes(message.paymentAddr); - /* bool is_amp = 27; */ - if (message.isAmp !== false) - writer.tag(27, WireType.Varint).bool(message.isAmp); - /* map amp_invoice_state = 28; */ - for (let k of Object.keys(message.ampInvoiceState)) { - writer.tag(28, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k); - writer.tag(2, WireType.LengthDelimited).fork(); - AMPInvoiceState.internalBinaryWrite(message.ampInvoiceState[k], writer, options); - writer.join().join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Invoice - */ -export const Invoice = new Invoice$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class InvoiceHTLC$Type extends MessageType { - constructor() { - super("lnrpc.InvoiceHTLC", [ - { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 2, name: "htlc_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "amt_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "accept_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 5, name: "accept_time", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "resolve_time", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 7, name: "expiry_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 8, name: "state", kind: "enum", T: () => ["lnrpc.InvoiceHTLCState", InvoiceHTLCState] }, - { no: 9, name: "custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } }, - { no: 10, name: "mpp_total_amt_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 11, name: "amp", kind: "message", T: () => AMP } - ]); - } - create(value?: PartialMessage): InvoiceHTLC { - const message = { chanId: "0", htlcIndex: 0n, amtMsat: 0n, acceptHeight: 0, acceptTime: 0n, resolveTime: 0n, expiryHeight: 0, state: 0, customRecords: {}, mppTotalAmtMsat: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: InvoiceHTLC): InvoiceHTLC { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 chan_id = 1 [jstype = JS_STRING];*/ 1: - message.chanId = reader.uint64().toString(); - break; - case /* uint64 htlc_index */ 2: - message.htlcIndex = reader.uint64().toBigInt(); - break; - case /* uint64 amt_msat */ 3: - message.amtMsat = reader.uint64().toBigInt(); - break; - case /* int32 accept_height */ 4: - message.acceptHeight = reader.int32(); - break; - case /* int64 accept_time */ 5: - message.acceptTime = reader.int64().toBigInt(); - break; - case /* int64 resolve_time */ 6: - message.resolveTime = reader.int64().toBigInt(); - break; - case /* int32 expiry_height */ 7: - message.expiryHeight = reader.int32(); - break; - case /* lnrpc.InvoiceHTLCState state */ 8: - message.state = reader.int32(); - break; - case /* map custom_records */ 9: - this.binaryReadMap9(message.customRecords, reader, options); - break; - case /* uint64 mpp_total_amt_msat */ 10: - message.mppTotalAmtMsat = reader.uint64().toBigInt(); - break; - case /* lnrpc.AMP amp */ 11: - message.amp = AMP.internalBinaryRead(reader, reader.uint32(), options, message.amp); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap9(map: InvoiceHTLC["customRecords"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof InvoiceHTLC["customRecords"] | undefined, val: InvoiceHTLC["customRecords"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint64().toString(); - break; - case 2: - val = reader.bytes(); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.InvoiceHTLC.custom_records"); - } - } - map[key ?? "0"] = val ?? new Uint8Array(0); - } - internalBinaryWrite(message: InvoiceHTLC, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 chan_id = 1 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(1, WireType.Varint).uint64(message.chanId); - /* uint64 htlc_index = 2; */ - if (message.htlcIndex !== 0n) - writer.tag(2, WireType.Varint).uint64(message.htlcIndex); - /* uint64 amt_msat = 3; */ - if (message.amtMsat !== 0n) - writer.tag(3, WireType.Varint).uint64(message.amtMsat); - /* int32 accept_height = 4; */ - if (message.acceptHeight !== 0) - writer.tag(4, WireType.Varint).int32(message.acceptHeight); - /* int64 accept_time = 5; */ - if (message.acceptTime !== 0n) - writer.tag(5, WireType.Varint).int64(message.acceptTime); - /* int64 resolve_time = 6; */ - if (message.resolveTime !== 0n) - writer.tag(6, WireType.Varint).int64(message.resolveTime); - /* int32 expiry_height = 7; */ - if (message.expiryHeight !== 0) - writer.tag(7, WireType.Varint).int32(message.expiryHeight); - /* lnrpc.InvoiceHTLCState state = 8; */ - if (message.state !== 0) - writer.tag(8, WireType.Varint).int32(message.state); - /* map custom_records = 9; */ - for (let k of Object.keys(message.customRecords)) - writer.tag(9, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint64(k).tag(2, WireType.LengthDelimited).bytes(message.customRecords[k]).join(); - /* uint64 mpp_total_amt_msat = 10; */ - if (message.mppTotalAmtMsat !== 0n) - writer.tag(10, WireType.Varint).uint64(message.mppTotalAmtMsat); - /* lnrpc.AMP amp = 11; */ - if (message.amp) - AMP.internalBinaryWrite(message.amp, writer.tag(11, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.InvoiceHTLC - */ -export const InvoiceHTLC = new InvoiceHTLC$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class AMP$Type extends MessageType { - constructor() { - super("lnrpc.AMP", [ - { no: 1, name: "root_share", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "set_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "child_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 4, name: "hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 5, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): AMP { - const message = { rootShare: new Uint8Array(0), setId: new Uint8Array(0), childIndex: 0, hash: new Uint8Array(0), preimage: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AMP): AMP { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes root_share */ 1: - message.rootShare = reader.bytes(); - break; - case /* bytes set_id */ 2: - message.setId = reader.bytes(); - break; - case /* uint32 child_index */ 3: - message.childIndex = reader.uint32(); - break; - case /* bytes hash */ 4: - message.hash = reader.bytes(); - break; - case /* bytes preimage */ 5: - message.preimage = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: AMP, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes root_share = 1; */ - if (message.rootShare.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.rootShare); - /* bytes set_id = 2; */ - if (message.setId.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.setId); - /* uint32 child_index = 3; */ - if (message.childIndex !== 0) - writer.tag(3, WireType.Varint).uint32(message.childIndex); - /* bytes hash = 4; */ - if (message.hash.length) - writer.tag(4, WireType.LengthDelimited).bytes(message.hash); - /* bytes preimage = 5; */ - if (message.preimage.length) - writer.tag(5, WireType.LengthDelimited).bytes(message.preimage); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.AMP - */ -export const AMP = new AMP$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class AddInvoiceResponse$Type extends MessageType { - constructor() { - super("lnrpc.AddInvoiceResponse", [ - { no: 1, name: "r_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "payment_request", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 16, name: "add_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 17, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): AddInvoiceResponse { - const message = { rHash: new Uint8Array(0), paymentRequest: "", addIndex: 0n, paymentAddr: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AddInvoiceResponse): AddInvoiceResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes r_hash */ 1: - message.rHash = reader.bytes(); - break; - case /* string payment_request */ 2: - message.paymentRequest = reader.string(); - break; - case /* uint64 add_index */ 16: - message.addIndex = reader.uint64().toBigInt(); - break; - case /* bytes payment_addr */ 17: - message.paymentAddr = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: AddInvoiceResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes r_hash = 1; */ - if (message.rHash.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.rHash); - /* string payment_request = 2; */ - if (message.paymentRequest !== "") - writer.tag(2, WireType.LengthDelimited).string(message.paymentRequest); - /* uint64 add_index = 16; */ - if (message.addIndex !== 0n) - writer.tag(16, WireType.Varint).uint64(message.addIndex); - /* bytes payment_addr = 17; */ - if (message.paymentAddr.length) - writer.tag(17, WireType.LengthDelimited).bytes(message.paymentAddr); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.AddInvoiceResponse - */ -export const AddInvoiceResponse = new AddInvoiceResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PaymentHash$Type extends MessageType { - constructor() { - super("lnrpc.PaymentHash", [ - { no: 1, name: "r_hash_str", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "r_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): PaymentHash { - const message = { rHashStr: "", rHash: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PaymentHash): PaymentHash { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string r_hash_str = 1 [deprecated = true];*/ 1: - message.rHashStr = reader.string(); - break; - case /* bytes r_hash */ 2: - message.rHash = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PaymentHash, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string r_hash_str = 1 [deprecated = true]; */ - if (message.rHashStr !== "") - writer.tag(1, WireType.LengthDelimited).string(message.rHashStr); - /* bytes r_hash = 2; */ - if (message.rHash.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.rHash); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PaymentHash - */ -export const PaymentHash = new PaymentHash$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListInvoiceRequest$Type extends MessageType { - constructor() { - super("lnrpc.ListInvoiceRequest", [ - { no: 1, name: "pending_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 4, name: "index_offset", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "num_max_invoices", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "reversed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): ListInvoiceRequest { - const message = { pendingOnly: false, indexOffset: 0n, numMaxInvoices: 0n, reversed: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListInvoiceRequest): ListInvoiceRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool pending_only */ 1: - message.pendingOnly = reader.bool(); - break; - case /* uint64 index_offset */ 4: - message.indexOffset = reader.uint64().toBigInt(); - break; - case /* uint64 num_max_invoices */ 5: - message.numMaxInvoices = reader.uint64().toBigInt(); - break; - case /* bool reversed */ 6: - message.reversed = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ListInvoiceRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool pending_only = 1; */ - if (message.pendingOnly !== false) - writer.tag(1, WireType.Varint).bool(message.pendingOnly); - /* uint64 index_offset = 4; */ - if (message.indexOffset !== 0n) - writer.tag(4, WireType.Varint).uint64(message.indexOffset); - /* uint64 num_max_invoices = 5; */ - if (message.numMaxInvoices !== 0n) - writer.tag(5, WireType.Varint).uint64(message.numMaxInvoices); - /* bool reversed = 6; */ - if (message.reversed !== false) - writer.tag(6, WireType.Varint).bool(message.reversed); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListInvoiceRequest - */ -export const ListInvoiceRequest = new ListInvoiceRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListInvoiceResponse$Type extends MessageType { - constructor() { - super("lnrpc.ListInvoiceResponse", [ - { no: 1, name: "invoices", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Invoice }, - { no: 2, name: "last_index_offset", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "first_index_offset", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): ListInvoiceResponse { - const message = { invoices: [], lastIndexOffset: 0n, firstIndexOffset: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListInvoiceResponse): ListInvoiceResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.Invoice invoices */ 1: - message.invoices.push(Invoice.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* uint64 last_index_offset */ 2: - message.lastIndexOffset = reader.uint64().toBigInt(); - break; - case /* uint64 first_index_offset */ 3: - message.firstIndexOffset = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ListInvoiceResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.Invoice invoices = 1; */ - for (let i = 0; i < message.invoices.length; i++) - Invoice.internalBinaryWrite(message.invoices[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* uint64 last_index_offset = 2; */ - if (message.lastIndexOffset !== 0n) - writer.tag(2, WireType.Varint).uint64(message.lastIndexOffset); - /* uint64 first_index_offset = 3; */ - if (message.firstIndexOffset !== 0n) - writer.tag(3, WireType.Varint).uint64(message.firstIndexOffset); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListInvoiceResponse - */ -export const ListInvoiceResponse = new ListInvoiceResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class InvoiceSubscription$Type extends MessageType { - constructor() { - super("lnrpc.InvoiceSubscription", [ - { no: 1, name: "add_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "settle_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): InvoiceSubscription { - const message = { addIndex: 0n, settleIndex: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: InvoiceSubscription): InvoiceSubscription { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 add_index */ 1: - message.addIndex = reader.uint64().toBigInt(); - break; - case /* uint64 settle_index */ 2: - message.settleIndex = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: InvoiceSubscription, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 add_index = 1; */ - if (message.addIndex !== 0n) - writer.tag(1, WireType.Varint).uint64(message.addIndex); - /* uint64 settle_index = 2; */ - if (message.settleIndex !== 0n) - writer.tag(2, WireType.Varint).uint64(message.settleIndex); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.InvoiceSubscription - */ -export const InvoiceSubscription = new InvoiceSubscription$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Payment$Type extends MessageType { - constructor() { - super("lnrpc.Payment", [ - { no: 1, name: "payment_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "value", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "creation_date", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "fee", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "payment_preimage", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 7, name: "value_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 8, name: "value_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 9, name: "payment_request", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 10, name: "status", kind: "enum", T: () => ["lnrpc.Payment.PaymentStatus", Payment_PaymentStatus] }, - { no: 11, name: "fee_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 12, name: "fee_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 13, name: "creation_time_ns", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 14, name: "htlcs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => HTLCAttempt }, - { no: 15, name: "payment_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 16, name: "failure_reason", kind: "enum", T: () => ["lnrpc.PaymentFailureReason", PaymentFailureReason] } - ]); - } - create(value?: PartialMessage): Payment { - const message = { paymentHash: "", value: 0n, creationDate: 0n, fee: 0n, paymentPreimage: "", valueSat: 0n, valueMsat: 0n, paymentRequest: "", status: 0, feeSat: 0n, feeMsat: 0n, creationTimeNs: 0n, htlcs: [], paymentIndex: 0n, failureReason: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Payment): Payment { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string payment_hash */ 1: - message.paymentHash = reader.string(); - break; - case /* int64 value = 2 [deprecated = true];*/ 2: - message.value = reader.int64().toBigInt(); - break; - case /* int64 creation_date = 3 [deprecated = true];*/ 3: - message.creationDate = reader.int64().toBigInt(); - break; - case /* int64 fee = 5 [deprecated = true];*/ 5: - message.fee = reader.int64().toBigInt(); - break; - case /* string payment_preimage */ 6: - message.paymentPreimage = reader.string(); - break; - case /* int64 value_sat */ 7: - message.valueSat = reader.int64().toBigInt(); - break; - case /* int64 value_msat */ 8: - message.valueMsat = reader.int64().toBigInt(); - break; - case /* string payment_request */ 9: - message.paymentRequest = reader.string(); - break; - case /* lnrpc.Payment.PaymentStatus status */ 10: - message.status = reader.int32(); - break; - case /* int64 fee_sat */ 11: - message.feeSat = reader.int64().toBigInt(); - break; - case /* int64 fee_msat */ 12: - message.feeMsat = reader.int64().toBigInt(); - break; - case /* int64 creation_time_ns */ 13: - message.creationTimeNs = reader.int64().toBigInt(); - break; - case /* repeated lnrpc.HTLCAttempt htlcs */ 14: - message.htlcs.push(HTLCAttempt.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* uint64 payment_index */ 15: - message.paymentIndex = reader.uint64().toBigInt(); - break; - case /* lnrpc.PaymentFailureReason failure_reason */ 16: - message.failureReason = reader.int32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: Payment, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string payment_hash = 1; */ - if (message.paymentHash !== "") - writer.tag(1, WireType.LengthDelimited).string(message.paymentHash); - /* int64 value = 2 [deprecated = true]; */ - if (message.value !== 0n) - writer.tag(2, WireType.Varint).int64(message.value); - /* int64 creation_date = 3 [deprecated = true]; */ - if (message.creationDate !== 0n) - writer.tag(3, WireType.Varint).int64(message.creationDate); - /* int64 fee = 5 [deprecated = true]; */ - if (message.fee !== 0n) - writer.tag(5, WireType.Varint).int64(message.fee); - /* string payment_preimage = 6; */ - if (message.paymentPreimage !== "") - writer.tag(6, WireType.LengthDelimited).string(message.paymentPreimage); - /* int64 value_sat = 7; */ - if (message.valueSat !== 0n) - writer.tag(7, WireType.Varint).int64(message.valueSat); - /* int64 value_msat = 8; */ - if (message.valueMsat !== 0n) - writer.tag(8, WireType.Varint).int64(message.valueMsat); - /* string payment_request = 9; */ - if (message.paymentRequest !== "") - writer.tag(9, WireType.LengthDelimited).string(message.paymentRequest); - /* lnrpc.Payment.PaymentStatus status = 10; */ - if (message.status !== 0) - writer.tag(10, WireType.Varint).int32(message.status); - /* int64 fee_sat = 11; */ - if (message.feeSat !== 0n) - writer.tag(11, WireType.Varint).int64(message.feeSat); - /* int64 fee_msat = 12; */ - if (message.feeMsat !== 0n) - writer.tag(12, WireType.Varint).int64(message.feeMsat); - /* int64 creation_time_ns = 13; */ - if (message.creationTimeNs !== 0n) - writer.tag(13, WireType.Varint).int64(message.creationTimeNs); - /* repeated lnrpc.HTLCAttempt htlcs = 14; */ - for (let i = 0; i < message.htlcs.length; i++) - HTLCAttempt.internalBinaryWrite(message.htlcs[i], writer.tag(14, WireType.LengthDelimited).fork(), options).join(); - /* uint64 payment_index = 15; */ - if (message.paymentIndex !== 0n) - writer.tag(15, WireType.Varint).uint64(message.paymentIndex); - /* lnrpc.PaymentFailureReason failure_reason = 16; */ - if (message.failureReason !== 0) - writer.tag(16, WireType.Varint).int32(message.failureReason); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Payment - */ -export const Payment = new Payment$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class HTLCAttempt$Type extends MessageType { - constructor() { - super("lnrpc.HTLCAttempt", [ - { no: 7, name: "attempt_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 1, name: "status", kind: "enum", T: () => ["lnrpc.HTLCAttempt.HTLCStatus", HTLCAttempt_HTLCStatus] }, - { no: 2, name: "route", kind: "message", T: () => Route }, - { no: 3, name: "attempt_time_ns", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "resolve_time_ns", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "failure", kind: "message", T: () => Failure }, - { no: 6, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): HTLCAttempt { - const message = { attemptId: 0n, status: 0, attemptTimeNs: 0n, resolveTimeNs: 0n, preimage: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: HTLCAttempt): HTLCAttempt { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 attempt_id */ 7: - message.attemptId = reader.uint64().toBigInt(); - break; - case /* lnrpc.HTLCAttempt.HTLCStatus status */ 1: - message.status = reader.int32(); - break; - case /* lnrpc.Route route */ 2: - message.route = Route.internalBinaryRead(reader, reader.uint32(), options, message.route); - break; - case /* int64 attempt_time_ns */ 3: - message.attemptTimeNs = reader.int64().toBigInt(); - break; - case /* int64 resolve_time_ns */ 4: - message.resolveTimeNs = reader.int64().toBigInt(); - break; - case /* lnrpc.Failure failure */ 5: - message.failure = Failure.internalBinaryRead(reader, reader.uint32(), options, message.failure); - break; - case /* bytes preimage */ 6: - message.preimage = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: HTLCAttempt, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 attempt_id = 7; */ - if (message.attemptId !== 0n) - writer.tag(7, WireType.Varint).uint64(message.attemptId); - /* lnrpc.HTLCAttempt.HTLCStatus status = 1; */ - if (message.status !== 0) - writer.tag(1, WireType.Varint).int32(message.status); - /* lnrpc.Route route = 2; */ - if (message.route) - Route.internalBinaryWrite(message.route, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - /* int64 attempt_time_ns = 3; */ - if (message.attemptTimeNs !== 0n) - writer.tag(3, WireType.Varint).int64(message.attemptTimeNs); - /* int64 resolve_time_ns = 4; */ - if (message.resolveTimeNs !== 0n) - writer.tag(4, WireType.Varint).int64(message.resolveTimeNs); - /* lnrpc.Failure failure = 5; */ - if (message.failure) - Failure.internalBinaryWrite(message.failure, writer.tag(5, WireType.LengthDelimited).fork(), options).join(); - /* bytes preimage = 6; */ - if (message.preimage.length) - writer.tag(6, WireType.LengthDelimited).bytes(message.preimage); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.HTLCAttempt - */ -export const HTLCAttempt = new HTLCAttempt$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListPaymentsRequest$Type extends MessageType { - constructor() { - super("lnrpc.ListPaymentsRequest", [ - { no: 1, name: "include_incomplete", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "index_offset", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "max_payments", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "reversed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 5, name: "count_total_payments", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): ListPaymentsRequest { - const message = { includeIncomplete: false, indexOffset: 0n, maxPayments: 0n, reversed: false, countTotalPayments: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListPaymentsRequest): ListPaymentsRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool include_incomplete */ 1: - message.includeIncomplete = reader.bool(); - break; - case /* uint64 index_offset */ 2: - message.indexOffset = reader.uint64().toBigInt(); - break; - case /* uint64 max_payments */ 3: - message.maxPayments = reader.uint64().toBigInt(); - break; - case /* bool reversed */ 4: - message.reversed = reader.bool(); - break; - case /* bool count_total_payments */ 5: - message.countTotalPayments = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ListPaymentsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool include_incomplete = 1; */ - if (message.includeIncomplete !== false) - writer.tag(1, WireType.Varint).bool(message.includeIncomplete); - /* uint64 index_offset = 2; */ - if (message.indexOffset !== 0n) - writer.tag(2, WireType.Varint).uint64(message.indexOffset); - /* uint64 max_payments = 3; */ - if (message.maxPayments !== 0n) - writer.tag(3, WireType.Varint).uint64(message.maxPayments); - /* bool reversed = 4; */ - if (message.reversed !== false) - writer.tag(4, WireType.Varint).bool(message.reversed); - /* bool count_total_payments = 5; */ - if (message.countTotalPayments !== false) - writer.tag(5, WireType.Varint).bool(message.countTotalPayments); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListPaymentsRequest - */ -export const ListPaymentsRequest = new ListPaymentsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListPaymentsResponse$Type extends MessageType { - constructor() { - super("lnrpc.ListPaymentsResponse", [ - { no: 1, name: "payments", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Payment }, - { no: 2, name: "first_index_offset", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "last_index_offset", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "total_num_payments", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): ListPaymentsResponse { - const message = { payments: [], firstIndexOffset: 0n, lastIndexOffset: 0n, totalNumPayments: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListPaymentsResponse): ListPaymentsResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.Payment payments */ 1: - message.payments.push(Payment.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* uint64 first_index_offset */ 2: - message.firstIndexOffset = reader.uint64().toBigInt(); - break; - case /* uint64 last_index_offset */ 3: - message.lastIndexOffset = reader.uint64().toBigInt(); - break; - case /* uint64 total_num_payments */ 4: - message.totalNumPayments = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ListPaymentsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.Payment payments = 1; */ - for (let i = 0; i < message.payments.length; i++) - Payment.internalBinaryWrite(message.payments[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* uint64 first_index_offset = 2; */ - if (message.firstIndexOffset !== 0n) - writer.tag(2, WireType.Varint).uint64(message.firstIndexOffset); - /* uint64 last_index_offset = 3; */ - if (message.lastIndexOffset !== 0n) - writer.tag(3, WireType.Varint).uint64(message.lastIndexOffset); - /* uint64 total_num_payments = 4; */ - if (message.totalNumPayments !== 0n) - writer.tag(4, WireType.Varint).uint64(message.totalNumPayments); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListPaymentsResponse - */ -export const ListPaymentsResponse = new ListPaymentsResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class DeletePaymentRequest$Type extends MessageType { - constructor() { - super("lnrpc.DeletePaymentRequest", [ - { no: 1, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "failed_htlcs_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): DeletePaymentRequest { - const message = { paymentHash: new Uint8Array(0), failedHtlcsOnly: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeletePaymentRequest): DeletePaymentRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes payment_hash */ 1: - message.paymentHash = reader.bytes(); - break; - case /* bool failed_htlcs_only */ 2: - message.failedHtlcsOnly = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: DeletePaymentRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes payment_hash = 1; */ - if (message.paymentHash.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.paymentHash); - /* bool failed_htlcs_only = 2; */ - if (message.failedHtlcsOnly !== false) - writer.tag(2, WireType.Varint).bool(message.failedHtlcsOnly); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.DeletePaymentRequest - */ -export const DeletePaymentRequest = new DeletePaymentRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class DeleteAllPaymentsRequest$Type extends MessageType { - constructor() { - super("lnrpc.DeleteAllPaymentsRequest", [ - { no: 1, name: "failed_payments_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "failed_htlcs_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): DeleteAllPaymentsRequest { - const message = { failedPaymentsOnly: false, failedHtlcsOnly: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeleteAllPaymentsRequest): DeleteAllPaymentsRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool failed_payments_only */ 1: - message.failedPaymentsOnly = reader.bool(); - break; - case /* bool failed_htlcs_only */ 2: - message.failedHtlcsOnly = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: DeleteAllPaymentsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool failed_payments_only = 1; */ - if (message.failedPaymentsOnly !== false) - writer.tag(1, WireType.Varint).bool(message.failedPaymentsOnly); - /* bool failed_htlcs_only = 2; */ - if (message.failedHtlcsOnly !== false) - writer.tag(2, WireType.Varint).bool(message.failedHtlcsOnly); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.DeleteAllPaymentsRequest - */ -export const DeleteAllPaymentsRequest = new DeleteAllPaymentsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class DeletePaymentResponse$Type extends MessageType { - constructor() { - super("lnrpc.DeletePaymentResponse", []); - } - create(value?: PartialMessage): DeletePaymentResponse { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeletePaymentResponse): DeletePaymentResponse { - return target ?? this.create(); - } - internalBinaryWrite(message: DeletePaymentResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.DeletePaymentResponse - */ -export const DeletePaymentResponse = new DeletePaymentResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class DeleteAllPaymentsResponse$Type extends MessageType { - constructor() { - super("lnrpc.DeleteAllPaymentsResponse", []); - } - create(value?: PartialMessage): DeleteAllPaymentsResponse { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeleteAllPaymentsResponse): DeleteAllPaymentsResponse { - return target ?? this.create(); - } - internalBinaryWrite(message: DeleteAllPaymentsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.DeleteAllPaymentsResponse - */ -export const DeleteAllPaymentsResponse = new DeleteAllPaymentsResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class AbandonChannelRequest$Type extends MessageType { - constructor() { - super("lnrpc.AbandonChannelRequest", [ - { no: 1, name: "channel_point", kind: "message", T: () => ChannelPoint }, - { no: 2, name: "pending_funding_shim_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 3, name: "i_know_what_i_am_doing", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): AbandonChannelRequest { - const message = { pendingFundingShimOnly: false, iKnowWhatIAmDoing: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AbandonChannelRequest): AbandonChannelRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ChannelPoint channel_point */ 1: - message.channelPoint = ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.channelPoint); - break; - case /* bool pending_funding_shim_only */ 2: - message.pendingFundingShimOnly = reader.bool(); - break; - case /* bool i_know_what_i_am_doing */ 3: - message.iKnowWhatIAmDoing = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: AbandonChannelRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.ChannelPoint channel_point = 1; */ - if (message.channelPoint) - ChannelPoint.internalBinaryWrite(message.channelPoint, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* bool pending_funding_shim_only = 2; */ - if (message.pendingFundingShimOnly !== false) - writer.tag(2, WireType.Varint).bool(message.pendingFundingShimOnly); - /* bool i_know_what_i_am_doing = 3; */ - if (message.iKnowWhatIAmDoing !== false) - writer.tag(3, WireType.Varint).bool(message.iKnowWhatIAmDoing); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.AbandonChannelRequest - */ -export const AbandonChannelRequest = new AbandonChannelRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class AbandonChannelResponse$Type extends MessageType { - constructor() { - super("lnrpc.AbandonChannelResponse", []); - } - create(value?: PartialMessage): AbandonChannelResponse { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AbandonChannelResponse): AbandonChannelResponse { - return target ?? this.create(); - } - internalBinaryWrite(message: AbandonChannelResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.AbandonChannelResponse - */ -export const AbandonChannelResponse = new AbandonChannelResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class DebugLevelRequest$Type extends MessageType { - constructor() { - super("lnrpc.DebugLevelRequest", [ - { no: 1, name: "show", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "level_spec", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): DebugLevelRequest { - const message = { show: false, levelSpec: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DebugLevelRequest): DebugLevelRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool show */ 1: - message.show = reader.bool(); - break; - case /* string level_spec */ 2: - message.levelSpec = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: DebugLevelRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool show = 1; */ - if (message.show !== false) - writer.tag(1, WireType.Varint).bool(message.show); - /* string level_spec = 2; */ - if (message.levelSpec !== "") - writer.tag(2, WireType.LengthDelimited).string(message.levelSpec); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.DebugLevelRequest - */ -export const DebugLevelRequest = new DebugLevelRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class DebugLevelResponse$Type extends MessageType { - constructor() { - super("lnrpc.DebugLevelResponse", [ - { no: 1, name: "sub_systems", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): DebugLevelResponse { - const message = { subSystems: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DebugLevelResponse): DebugLevelResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string sub_systems */ 1: - message.subSystems = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: DebugLevelResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string sub_systems = 1; */ - if (message.subSystems !== "") - writer.tag(1, WireType.LengthDelimited).string(message.subSystems); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.DebugLevelResponse - */ -export const DebugLevelResponse = new DebugLevelResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PayReqString$Type extends MessageType { - constructor() { - super("lnrpc.PayReqString", [ - { no: 1, name: "pay_req", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): PayReqString { - const message = { payReq: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PayReqString): PayReqString { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string pay_req */ 1: - message.payReq = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PayReqString, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string pay_req = 1; */ - if (message.payReq !== "") - writer.tag(1, WireType.LengthDelimited).string(message.payReq); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PayReqString - */ -export const PayReqString = new PayReqString$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PayReq$Type extends MessageType { - constructor() { - super("lnrpc.PayReq", [ - { no: 1, name: "destination", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "payment_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "num_satoshis", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "timestamp", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "expiry", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "description", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 7, name: "description_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 8, name: "fallback_addr", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 9, name: "cltv_expiry", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 10, name: "route_hints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => RouteHint }, - { no: 11, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 12, name: "num_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 13, name: "features", kind: "map", K: 13 /*ScalarType.UINT32*/, V: { kind: "message", T: () => Feature } } - ]); - } - create(value?: PartialMessage): PayReq { - const message = { destination: "", paymentHash: "", numSatoshis: 0n, timestamp: 0n, expiry: 0n, description: "", descriptionHash: "", fallbackAddr: "", cltvExpiry: 0n, routeHints: [], paymentAddr: new Uint8Array(0), numMsat: 0n, features: {} }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PayReq): PayReq { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string destination */ 1: - message.destination = reader.string(); - break; - case /* string payment_hash */ 2: - message.paymentHash = reader.string(); - break; - case /* int64 num_satoshis */ 3: - message.numSatoshis = reader.int64().toBigInt(); - break; - case /* int64 timestamp */ 4: - message.timestamp = reader.int64().toBigInt(); - break; - case /* int64 expiry */ 5: - message.expiry = reader.int64().toBigInt(); - break; - case /* string description */ 6: - message.description = reader.string(); - break; - case /* string description_hash */ 7: - message.descriptionHash = reader.string(); - break; - case /* string fallback_addr */ 8: - message.fallbackAddr = reader.string(); - break; - case /* int64 cltv_expiry */ 9: - message.cltvExpiry = reader.int64().toBigInt(); - break; - case /* repeated lnrpc.RouteHint route_hints */ 10: - message.routeHints.push(RouteHint.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* bytes payment_addr */ 11: - message.paymentAddr = reader.bytes(); - break; - case /* int64 num_msat */ 12: - message.numMsat = reader.int64().toBigInt(); - break; - case /* map features */ 13: - this.binaryReadMap13(message.features, reader, options); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap13(map: PayReq["features"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof PayReq["features"] | undefined, val: PayReq["features"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint32(); - break; - case 2: - val = Feature.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.PayReq.features"); - } - } - map[key ?? 0] = val ?? Feature.create(); - } - internalBinaryWrite(message: PayReq, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string destination = 1; */ - if (message.destination !== "") - writer.tag(1, WireType.LengthDelimited).string(message.destination); - /* string payment_hash = 2; */ - if (message.paymentHash !== "") - writer.tag(2, WireType.LengthDelimited).string(message.paymentHash); - /* int64 num_satoshis = 3; */ - if (message.numSatoshis !== 0n) - writer.tag(3, WireType.Varint).int64(message.numSatoshis); - /* int64 timestamp = 4; */ - if (message.timestamp !== 0n) - writer.tag(4, WireType.Varint).int64(message.timestamp); - /* int64 expiry = 5; */ - if (message.expiry !== 0n) - writer.tag(5, WireType.Varint).int64(message.expiry); - /* string description = 6; */ - if (message.description !== "") - writer.tag(6, WireType.LengthDelimited).string(message.description); - /* string description_hash = 7; */ - if (message.descriptionHash !== "") - writer.tag(7, WireType.LengthDelimited).string(message.descriptionHash); - /* string fallback_addr = 8; */ - if (message.fallbackAddr !== "") - writer.tag(8, WireType.LengthDelimited).string(message.fallbackAddr); - /* int64 cltv_expiry = 9; */ - if (message.cltvExpiry !== 0n) - writer.tag(9, WireType.Varint).int64(message.cltvExpiry); - /* repeated lnrpc.RouteHint route_hints = 10; */ - for (let i = 0; i < message.routeHints.length; i++) - RouteHint.internalBinaryWrite(message.routeHints[i], writer.tag(10, WireType.LengthDelimited).fork(), options).join(); - /* bytes payment_addr = 11; */ - if (message.paymentAddr.length) - writer.tag(11, WireType.LengthDelimited).bytes(message.paymentAddr); - /* int64 num_msat = 12; */ - if (message.numMsat !== 0n) - writer.tag(12, WireType.Varint).int64(message.numMsat); - /* map features = 13; */ - for (let k of Object.keys(message.features)) { - writer.tag(13, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint32(parseInt(k)); - writer.tag(2, WireType.LengthDelimited).fork(); - Feature.internalBinaryWrite(message.features[k as any], writer, options); - writer.join().join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PayReq - */ -export const PayReq = new PayReq$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Feature$Type extends MessageType { - constructor() { - super("lnrpc.Feature", [ - { no: 2, name: "name", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "is_required", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 4, name: "is_known", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): Feature { - const message = { name: "", isRequired: false, isKnown: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Feature): Feature { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string name */ 2: - message.name = reader.string(); - break; - case /* bool is_required */ 3: - message.isRequired = reader.bool(); - break; - case /* bool is_known */ 4: - message.isKnown = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: Feature, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string name = 2; */ - if (message.name !== "") - writer.tag(2, WireType.LengthDelimited).string(message.name); - /* bool is_required = 3; */ - if (message.isRequired !== false) - writer.tag(3, WireType.Varint).bool(message.isRequired); - /* bool is_known = 4; */ - if (message.isKnown !== false) - writer.tag(4, WireType.Varint).bool(message.isKnown); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Feature - */ -export const Feature = new Feature$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FeeReportRequest$Type extends MessageType { - constructor() { - super("lnrpc.FeeReportRequest", []); - } - create(value?: PartialMessage): FeeReportRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FeeReportRequest): FeeReportRequest { - return target ?? this.create(); - } - internalBinaryWrite(message: FeeReportRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FeeReportRequest - */ -export const FeeReportRequest = new FeeReportRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelFeeReport$Type extends MessageType { - constructor() { - super("lnrpc.ChannelFeeReport", [ - { no: 5, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 1, name: "channel_point", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "base_fee_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "fee_per_mil", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "fee_rate", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ } - ]); - } - create(value?: PartialMessage): ChannelFeeReport { - const message = { chanId: "0", channelPoint: "", baseFeeMsat: 0n, feePerMil: 0n, feeRate: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelFeeReport): ChannelFeeReport { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 chan_id = 5 [jstype = JS_STRING];*/ 5: - message.chanId = reader.uint64().toString(); - break; - case /* string channel_point */ 1: - message.channelPoint = reader.string(); - break; - case /* int64 base_fee_msat */ 2: - message.baseFeeMsat = reader.int64().toBigInt(); - break; - case /* int64 fee_per_mil */ 3: - message.feePerMil = reader.int64().toBigInt(); - break; - case /* double fee_rate */ 4: - message.feeRate = reader.double(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChannelFeeReport, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 chan_id = 5 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(5, WireType.Varint).uint64(message.chanId); - /* string channel_point = 1; */ - if (message.channelPoint !== "") - writer.tag(1, WireType.LengthDelimited).string(message.channelPoint); - /* int64 base_fee_msat = 2; */ - if (message.baseFeeMsat !== 0n) - writer.tag(2, WireType.Varint).int64(message.baseFeeMsat); - /* int64 fee_per_mil = 3; */ - if (message.feePerMil !== 0n) - writer.tag(3, WireType.Varint).int64(message.feePerMil); - /* double fee_rate = 4; */ - if (message.feeRate !== 0) - writer.tag(4, WireType.Bit64).double(message.feeRate); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelFeeReport - */ -export const ChannelFeeReport = new ChannelFeeReport$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FeeReportResponse$Type extends MessageType { - constructor() { - super("lnrpc.FeeReportResponse", [ - { no: 1, name: "channel_fees", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => ChannelFeeReport }, - { no: 2, name: "day_fee_sum", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "week_fee_sum", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "month_fee_sum", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): FeeReportResponse { - const message = { channelFees: [], dayFeeSum: 0n, weekFeeSum: 0n, monthFeeSum: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FeeReportResponse): FeeReportResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.ChannelFeeReport channel_fees */ 1: - message.channelFees.push(ChannelFeeReport.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* uint64 day_fee_sum */ 2: - message.dayFeeSum = reader.uint64().toBigInt(); - break; - case /* uint64 week_fee_sum */ 3: - message.weekFeeSum = reader.uint64().toBigInt(); - break; - case /* uint64 month_fee_sum */ 4: - message.monthFeeSum = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: FeeReportResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.ChannelFeeReport channel_fees = 1; */ - for (let i = 0; i < message.channelFees.length; i++) - ChannelFeeReport.internalBinaryWrite(message.channelFees[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* uint64 day_fee_sum = 2; */ - if (message.dayFeeSum !== 0n) - writer.tag(2, WireType.Varint).uint64(message.dayFeeSum); - /* uint64 week_fee_sum = 3; */ - if (message.weekFeeSum !== 0n) - writer.tag(3, WireType.Varint).uint64(message.weekFeeSum); - /* uint64 month_fee_sum = 4; */ - if (message.monthFeeSum !== 0n) - writer.tag(4, WireType.Varint).uint64(message.monthFeeSum); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FeeReportResponse - */ -export const FeeReportResponse = new FeeReportResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PolicyUpdateRequest$Type extends MessageType { - constructor() { - super("lnrpc.PolicyUpdateRequest", [ - { no: 1, name: "global", kind: "scalar", oneof: "scope", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "chan_point", kind: "message", oneof: "scope", T: () => ChannelPoint }, - { no: 3, name: "base_fee_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "fee_rate", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ }, - { no: 9, name: "fee_rate_ppm", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "time_lock_delta", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 6, name: "max_htlc_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 7, name: "min_htlc_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 8, name: "min_htlc_msat_specified", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): PolicyUpdateRequest { - const message = { scope: { oneofKind: undefined }, baseFeeMsat: 0n, feeRate: 0, feeRatePpm: 0, timeLockDelta: 0, maxHtlcMsat: 0n, minHtlcMsat: 0n, minHtlcMsatSpecified: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PolicyUpdateRequest): PolicyUpdateRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool global */ 1: - message.scope = { - oneofKind: "global", - global: reader.bool() - }; - break; - case /* lnrpc.ChannelPoint chan_point */ 2: - message.scope = { - oneofKind: "chanPoint", - chanPoint: ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, (message.scope as any).chanPoint) - }; - break; - case /* int64 base_fee_msat */ 3: - message.baseFeeMsat = reader.int64().toBigInt(); - break; - case /* double fee_rate */ 4: - message.feeRate = reader.double(); - break; - case /* uint32 fee_rate_ppm */ 9: - message.feeRatePpm = reader.uint32(); - break; - case /* uint32 time_lock_delta */ 5: - message.timeLockDelta = reader.uint32(); - break; - case /* uint64 max_htlc_msat */ 6: - message.maxHtlcMsat = reader.uint64().toBigInt(); - break; - case /* uint64 min_htlc_msat */ 7: - message.minHtlcMsat = reader.uint64().toBigInt(); - break; - case /* bool min_htlc_msat_specified */ 8: - message.minHtlcMsatSpecified = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PolicyUpdateRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool global = 1; */ - if (message.scope.oneofKind === "global") - writer.tag(1, WireType.Varint).bool(message.scope.global); - /* lnrpc.ChannelPoint chan_point = 2; */ - if (message.scope.oneofKind === "chanPoint") - ChannelPoint.internalBinaryWrite(message.scope.chanPoint, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - /* int64 base_fee_msat = 3; */ - if (message.baseFeeMsat !== 0n) - writer.tag(3, WireType.Varint).int64(message.baseFeeMsat); - /* double fee_rate = 4; */ - if (message.feeRate !== 0) - writer.tag(4, WireType.Bit64).double(message.feeRate); - /* uint32 fee_rate_ppm = 9; */ - if (message.feeRatePpm !== 0) - writer.tag(9, WireType.Varint).uint32(message.feeRatePpm); - /* uint32 time_lock_delta = 5; */ - if (message.timeLockDelta !== 0) - writer.tag(5, WireType.Varint).uint32(message.timeLockDelta); - /* uint64 max_htlc_msat = 6; */ - if (message.maxHtlcMsat !== 0n) - writer.tag(6, WireType.Varint).uint64(message.maxHtlcMsat); - /* uint64 min_htlc_msat = 7; */ - if (message.minHtlcMsat !== 0n) - writer.tag(7, WireType.Varint).uint64(message.minHtlcMsat); - /* bool min_htlc_msat_specified = 8; */ - if (message.minHtlcMsatSpecified !== false) - writer.tag(8, WireType.Varint).bool(message.minHtlcMsatSpecified); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PolicyUpdateRequest - */ -export const PolicyUpdateRequest = new PolicyUpdateRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FailedUpdate$Type extends MessageType { - constructor() { - super("lnrpc.FailedUpdate", [ - { no: 1, name: "outpoint", kind: "message", T: () => OutPoint }, - { no: 2, name: "reason", kind: "enum", T: () => ["lnrpc.UpdateFailure", UpdateFailure, "UPDATE_FAILURE_"] }, - { no: 3, name: "update_error", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): FailedUpdate { - const message = { reason: 0, updateError: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FailedUpdate): FailedUpdate { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.OutPoint outpoint */ 1: - message.outpoint = OutPoint.internalBinaryRead(reader, reader.uint32(), options, message.outpoint); - break; - case /* lnrpc.UpdateFailure reason */ 2: - message.reason = reader.int32(); - break; - case /* string update_error */ 3: - message.updateError = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: FailedUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.OutPoint outpoint = 1; */ - if (message.outpoint) - OutPoint.internalBinaryWrite(message.outpoint, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.UpdateFailure reason = 2; */ - if (message.reason !== 0) - writer.tag(2, WireType.Varint).int32(message.reason); - /* string update_error = 3; */ - if (message.updateError !== "") - writer.tag(3, WireType.LengthDelimited).string(message.updateError); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.FailedUpdate - */ -export const FailedUpdate = new FailedUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PolicyUpdateResponse$Type extends MessageType { - constructor() { - super("lnrpc.PolicyUpdateResponse", [ - { no: 1, name: "failed_updates", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => FailedUpdate } - ]); - } - create(value?: PartialMessage): PolicyUpdateResponse { - const message = { failedUpdates: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PolicyUpdateResponse): PolicyUpdateResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.FailedUpdate failed_updates */ 1: - message.failedUpdates.push(FailedUpdate.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PolicyUpdateResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.FailedUpdate failed_updates = 1; */ - for (let i = 0; i < message.failedUpdates.length; i++) - FailedUpdate.internalBinaryWrite(message.failedUpdates[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.PolicyUpdateResponse - */ -export const PolicyUpdateResponse = new PolicyUpdateResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ForwardingHistoryRequest$Type extends MessageType { - constructor() { - super("lnrpc.ForwardingHistoryRequest", [ - { no: 1, name: "start_time", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "end_time", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "index_offset", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 4, name: "num_max_events", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "peer_alias_lookup", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): ForwardingHistoryRequest { - const message = { startTime: 0n, endTime: 0n, indexOffset: 0, numMaxEvents: 0, peerAliasLookup: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ForwardingHistoryRequest): ForwardingHistoryRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 start_time */ 1: - message.startTime = reader.uint64().toBigInt(); - break; - case /* uint64 end_time */ 2: - message.endTime = reader.uint64().toBigInt(); - break; - case /* uint32 index_offset */ 3: - message.indexOffset = reader.uint32(); - break; - case /* uint32 num_max_events */ 4: - message.numMaxEvents = reader.uint32(); - break; - case /* bool peer_alias_lookup */ 5: - message.peerAliasLookup = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ForwardingHistoryRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 start_time = 1; */ - if (message.startTime !== 0n) - writer.tag(1, WireType.Varint).uint64(message.startTime); - /* uint64 end_time = 2; */ - if (message.endTime !== 0n) - writer.tag(2, WireType.Varint).uint64(message.endTime); - /* uint32 index_offset = 3; */ - if (message.indexOffset !== 0) - writer.tag(3, WireType.Varint).uint32(message.indexOffset); - /* uint32 num_max_events = 4; */ - if (message.numMaxEvents !== 0) - writer.tag(4, WireType.Varint).uint32(message.numMaxEvents); - /* bool peer_alias_lookup = 5; */ - if (message.peerAliasLookup !== false) - writer.tag(5, WireType.Varint).bool(message.peerAliasLookup); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ForwardingHistoryRequest - */ -export const ForwardingHistoryRequest = new ForwardingHistoryRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ForwardingEvent$Type extends MessageType { - constructor() { - super("lnrpc.ForwardingEvent", [ - { no: 1, name: "timestamp", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "chan_id_in", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 4, name: "chan_id_out", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 5, name: "amt_in", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "amt_out", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 7, name: "fee", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 8, name: "fee_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 9, name: "amt_in_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 10, name: "amt_out_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 11, name: "timestamp_ns", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 12, name: "peer_alias_in", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 13, name: "peer_alias_out", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): ForwardingEvent { - const message = { timestamp: 0n, chanIdIn: "0", chanIdOut: "0", amtIn: 0n, amtOut: 0n, fee: 0n, feeMsat: 0n, amtInMsat: 0n, amtOutMsat: 0n, timestampNs: 0n, peerAliasIn: "", peerAliasOut: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ForwardingEvent): ForwardingEvent { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 timestamp = 1 [deprecated = true];*/ 1: - message.timestamp = reader.uint64().toBigInt(); - break; - case /* uint64 chan_id_in = 2 [jstype = JS_STRING];*/ 2: - message.chanIdIn = reader.uint64().toString(); - break; - case /* uint64 chan_id_out = 4 [jstype = JS_STRING];*/ 4: - message.chanIdOut = reader.uint64().toString(); - break; - case /* uint64 amt_in */ 5: - message.amtIn = reader.uint64().toBigInt(); - break; - case /* uint64 amt_out */ 6: - message.amtOut = reader.uint64().toBigInt(); - break; - case /* uint64 fee */ 7: - message.fee = reader.uint64().toBigInt(); - break; - case /* uint64 fee_msat */ 8: - message.feeMsat = reader.uint64().toBigInt(); - break; - case /* uint64 amt_in_msat */ 9: - message.amtInMsat = reader.uint64().toBigInt(); - break; - case /* uint64 amt_out_msat */ 10: - message.amtOutMsat = reader.uint64().toBigInt(); - break; - case /* uint64 timestamp_ns */ 11: - message.timestampNs = reader.uint64().toBigInt(); - break; - case /* string peer_alias_in */ 12: - message.peerAliasIn = reader.string(); - break; - case /* string peer_alias_out */ 13: - message.peerAliasOut = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ForwardingEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 timestamp = 1 [deprecated = true]; */ - if (message.timestamp !== 0n) - writer.tag(1, WireType.Varint).uint64(message.timestamp); - /* uint64 chan_id_in = 2 [jstype = JS_STRING]; */ - if (message.chanIdIn !== "0") - writer.tag(2, WireType.Varint).uint64(message.chanIdIn); - /* uint64 chan_id_out = 4 [jstype = JS_STRING]; */ - if (message.chanIdOut !== "0") - writer.tag(4, WireType.Varint).uint64(message.chanIdOut); - /* uint64 amt_in = 5; */ - if (message.amtIn !== 0n) - writer.tag(5, WireType.Varint).uint64(message.amtIn); - /* uint64 amt_out = 6; */ - if (message.amtOut !== 0n) - writer.tag(6, WireType.Varint).uint64(message.amtOut); - /* uint64 fee = 7; */ - if (message.fee !== 0n) - writer.tag(7, WireType.Varint).uint64(message.fee); - /* uint64 fee_msat = 8; */ - if (message.feeMsat !== 0n) - writer.tag(8, WireType.Varint).uint64(message.feeMsat); - /* uint64 amt_in_msat = 9; */ - if (message.amtInMsat !== 0n) - writer.tag(9, WireType.Varint).uint64(message.amtInMsat); - /* uint64 amt_out_msat = 10; */ - if (message.amtOutMsat !== 0n) - writer.tag(10, WireType.Varint).uint64(message.amtOutMsat); - /* uint64 timestamp_ns = 11; */ - if (message.timestampNs !== 0n) - writer.tag(11, WireType.Varint).uint64(message.timestampNs); - /* string peer_alias_in = 12; */ - if (message.peerAliasIn !== "") - writer.tag(12, WireType.LengthDelimited).string(message.peerAliasIn); - /* string peer_alias_out = 13; */ - if (message.peerAliasOut !== "") - writer.tag(13, WireType.LengthDelimited).string(message.peerAliasOut); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ForwardingEvent - */ -export const ForwardingEvent = new ForwardingEvent$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ForwardingHistoryResponse$Type extends MessageType { - constructor() { - super("lnrpc.ForwardingHistoryResponse", [ - { no: 1, name: "forwarding_events", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => ForwardingEvent }, - { no: 2, name: "last_offset_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value?: PartialMessage): ForwardingHistoryResponse { - const message = { forwardingEvents: [], lastOffsetIndex: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ForwardingHistoryResponse): ForwardingHistoryResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.ForwardingEvent forwarding_events */ 1: - message.forwardingEvents.push(ForwardingEvent.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* uint32 last_offset_index */ 2: - message.lastOffsetIndex = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ForwardingHistoryResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.ForwardingEvent forwarding_events = 1; */ - for (let i = 0; i < message.forwardingEvents.length; i++) - ForwardingEvent.internalBinaryWrite(message.forwardingEvents[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* uint32 last_offset_index = 2; */ - if (message.lastOffsetIndex !== 0) - writer.tag(2, WireType.Varint).uint32(message.lastOffsetIndex); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ForwardingHistoryResponse - */ -export const ForwardingHistoryResponse = new ForwardingHistoryResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ExportChannelBackupRequest$Type extends MessageType { - constructor() { - super("lnrpc.ExportChannelBackupRequest", [ - { no: 1, name: "chan_point", kind: "message", T: () => ChannelPoint } - ]); - } - create(value?: PartialMessage): ExportChannelBackupRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ExportChannelBackupRequest): ExportChannelBackupRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ChannelPoint chan_point */ 1: - message.chanPoint = ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.chanPoint); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ExportChannelBackupRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.ChannelPoint chan_point = 1; */ - if (message.chanPoint) - ChannelPoint.internalBinaryWrite(message.chanPoint, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ExportChannelBackupRequest - */ -export const ExportChannelBackupRequest = new ExportChannelBackupRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelBackup$Type extends MessageType { - constructor() { - super("lnrpc.ChannelBackup", [ - { no: 1, name: "chan_point", kind: "message", T: () => ChannelPoint }, - { no: 2, name: "chan_backup", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): ChannelBackup { - const message = { chanBackup: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelBackup): ChannelBackup { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ChannelPoint chan_point */ 1: - message.chanPoint = ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.chanPoint); - break; - case /* bytes chan_backup */ 2: - message.chanBackup = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChannelBackup, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.ChannelPoint chan_point = 1; */ - if (message.chanPoint) - ChannelPoint.internalBinaryWrite(message.chanPoint, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* bytes chan_backup = 2; */ - if (message.chanBackup.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.chanBackup); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelBackup - */ -export const ChannelBackup = new ChannelBackup$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class MultiChanBackup$Type extends MessageType { - constructor() { - super("lnrpc.MultiChanBackup", [ - { no: 1, name: "chan_points", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => ChannelPoint }, - { no: 2, name: "multi_chan_backup", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): MultiChanBackup { - const message = { chanPoints: [], multiChanBackup: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MultiChanBackup): MultiChanBackup { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.ChannelPoint chan_points */ 1: - message.chanPoints.push(ChannelPoint.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* bytes multi_chan_backup */ 2: - message.multiChanBackup = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: MultiChanBackup, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.ChannelPoint chan_points = 1; */ - for (let i = 0; i < message.chanPoints.length; i++) - ChannelPoint.internalBinaryWrite(message.chanPoints[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* bytes multi_chan_backup = 2; */ - if (message.multiChanBackup.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.multiChanBackup); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.MultiChanBackup - */ -export const MultiChanBackup = new MultiChanBackup$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChanBackupExportRequest$Type extends MessageType { - constructor() { - super("lnrpc.ChanBackupExportRequest", []); - } - create(value?: PartialMessage): ChanBackupExportRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChanBackupExportRequest): ChanBackupExportRequest { - return target ?? this.create(); - } - internalBinaryWrite(message: ChanBackupExportRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChanBackupExportRequest - */ -export const ChanBackupExportRequest = new ChanBackupExportRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChanBackupSnapshot$Type extends MessageType { - constructor() { - super("lnrpc.ChanBackupSnapshot", [ - { no: 1, name: "single_chan_backups", kind: "message", T: () => ChannelBackups }, - { no: 2, name: "multi_chan_backup", kind: "message", T: () => MultiChanBackup } - ]); - } - create(value?: PartialMessage): ChanBackupSnapshot { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChanBackupSnapshot): ChanBackupSnapshot { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ChannelBackups single_chan_backups */ 1: - message.singleChanBackups = ChannelBackups.internalBinaryRead(reader, reader.uint32(), options, message.singleChanBackups); - break; - case /* lnrpc.MultiChanBackup multi_chan_backup */ 2: - message.multiChanBackup = MultiChanBackup.internalBinaryRead(reader, reader.uint32(), options, message.multiChanBackup); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChanBackupSnapshot, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.ChannelBackups single_chan_backups = 1; */ - if (message.singleChanBackups) - ChannelBackups.internalBinaryWrite(message.singleChanBackups, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.MultiChanBackup multi_chan_backup = 2; */ - if (message.multiChanBackup) - MultiChanBackup.internalBinaryWrite(message.multiChanBackup, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChanBackupSnapshot - */ -export const ChanBackupSnapshot = new ChanBackupSnapshot$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelBackups$Type extends MessageType { - constructor() { - super("lnrpc.ChannelBackups", [ - { no: 1, name: "chan_backups", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => ChannelBackup } - ]); - } - create(value?: PartialMessage): ChannelBackups { - const message = { chanBackups: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelBackups): ChannelBackups { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.ChannelBackup chan_backups */ 1: - message.chanBackups.push(ChannelBackup.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChannelBackups, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.ChannelBackup chan_backups = 1; */ - for (let i = 0; i < message.chanBackups.length; i++) - ChannelBackup.internalBinaryWrite(message.chanBackups[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelBackups - */ -export const ChannelBackups = new ChannelBackups$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class RestoreChanBackupRequest$Type extends MessageType { - constructor() { - super("lnrpc.RestoreChanBackupRequest", [ - { no: 1, name: "chan_backups", kind: "message", oneof: "backup", T: () => ChannelBackups }, - { no: 2, name: "multi_chan_backup", kind: "scalar", oneof: "backup", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): RestoreChanBackupRequest { - const message = { backup: { oneofKind: undefined } }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RestoreChanBackupRequest): RestoreChanBackupRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ChannelBackups chan_backups */ 1: - message.backup = { - oneofKind: "chanBackups", - chanBackups: ChannelBackups.internalBinaryRead(reader, reader.uint32(), options, (message.backup as any).chanBackups) - }; - break; - case /* bytes multi_chan_backup */ 2: - message.backup = { - oneofKind: "multiChanBackup", - multiChanBackup: reader.bytes() - }; - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: RestoreChanBackupRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.ChannelBackups chan_backups = 1; */ - if (message.backup.oneofKind === "chanBackups") - ChannelBackups.internalBinaryWrite(message.backup.chanBackups, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* bytes multi_chan_backup = 2; */ - if (message.backup.oneofKind === "multiChanBackup") - writer.tag(2, WireType.LengthDelimited).bytes(message.backup.multiChanBackup); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.RestoreChanBackupRequest - */ -export const RestoreChanBackupRequest = new RestoreChanBackupRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class RestoreBackupResponse$Type extends MessageType { - constructor() { - super("lnrpc.RestoreBackupResponse", []); - } - create(value?: PartialMessage): RestoreBackupResponse { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RestoreBackupResponse): RestoreBackupResponse { - return target ?? this.create(); - } - internalBinaryWrite(message: RestoreBackupResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.RestoreBackupResponse - */ -export const RestoreBackupResponse = new RestoreBackupResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelBackupSubscription$Type extends MessageType { - constructor() { - super("lnrpc.ChannelBackupSubscription", []); - } - create(value?: PartialMessage): ChannelBackupSubscription { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelBackupSubscription): ChannelBackupSubscription { - return target ?? this.create(); - } - internalBinaryWrite(message: ChannelBackupSubscription, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelBackupSubscription - */ -export const ChannelBackupSubscription = new ChannelBackupSubscription$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class VerifyChanBackupResponse$Type extends MessageType { - constructor() { - super("lnrpc.VerifyChanBackupResponse", []); - } - create(value?: PartialMessage): VerifyChanBackupResponse { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: VerifyChanBackupResponse): VerifyChanBackupResponse { - return target ?? this.create(); - } - internalBinaryWrite(message: VerifyChanBackupResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.VerifyChanBackupResponse - */ -export const VerifyChanBackupResponse = new VerifyChanBackupResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class MacaroonPermission$Type extends MessageType { - constructor() { - super("lnrpc.MacaroonPermission", [ - { no: 1, name: "entity", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "action", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): MacaroonPermission { - const message = { entity: "", action: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MacaroonPermission): MacaroonPermission { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string entity */ 1: - message.entity = reader.string(); - break; - case /* string action */ 2: - message.action = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: MacaroonPermission, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string entity = 1; */ - if (message.entity !== "") - writer.tag(1, WireType.LengthDelimited).string(message.entity); - /* string action = 2; */ - if (message.action !== "") - writer.tag(2, WireType.LengthDelimited).string(message.action); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.MacaroonPermission - */ -export const MacaroonPermission = new MacaroonPermission$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class BakeMacaroonRequest$Type extends MessageType { - constructor() { - super("lnrpc.BakeMacaroonRequest", [ - { no: 1, name: "permissions", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => MacaroonPermission }, - { no: 2, name: "root_key_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "allow_external_permissions", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): BakeMacaroonRequest { - const message = { permissions: [], rootKeyId: 0n, allowExternalPermissions: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BakeMacaroonRequest): BakeMacaroonRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.MacaroonPermission permissions */ 1: - message.permissions.push(MacaroonPermission.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* uint64 root_key_id */ 2: - message.rootKeyId = reader.uint64().toBigInt(); - break; - case /* bool allow_external_permissions */ 3: - message.allowExternalPermissions = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: BakeMacaroonRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.MacaroonPermission permissions = 1; */ - for (let i = 0; i < message.permissions.length; i++) - MacaroonPermission.internalBinaryWrite(message.permissions[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* uint64 root_key_id = 2; */ - if (message.rootKeyId !== 0n) - writer.tag(2, WireType.Varint).uint64(message.rootKeyId); - /* bool allow_external_permissions = 3; */ - if (message.allowExternalPermissions !== false) - writer.tag(3, WireType.Varint).bool(message.allowExternalPermissions); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.BakeMacaroonRequest - */ -export const BakeMacaroonRequest = new BakeMacaroonRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class BakeMacaroonResponse$Type extends MessageType { - constructor() { - super("lnrpc.BakeMacaroonResponse", [ - { no: 1, name: "macaroon", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): BakeMacaroonResponse { - const message = { macaroon: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BakeMacaroonResponse): BakeMacaroonResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string macaroon */ 1: - message.macaroon = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: BakeMacaroonResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string macaroon = 1; */ - if (message.macaroon !== "") - writer.tag(1, WireType.LengthDelimited).string(message.macaroon); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.BakeMacaroonResponse - */ -export const BakeMacaroonResponse = new BakeMacaroonResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListMacaroonIDsRequest$Type extends MessageType { - constructor() { - super("lnrpc.ListMacaroonIDsRequest", []); - } - create(value?: PartialMessage): ListMacaroonIDsRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListMacaroonIDsRequest): ListMacaroonIDsRequest { - return target ?? this.create(); - } - internalBinaryWrite(message: ListMacaroonIDsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListMacaroonIDsRequest - */ -export const ListMacaroonIDsRequest = new ListMacaroonIDsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListMacaroonIDsResponse$Type extends MessageType { - constructor() { - super("lnrpc.ListMacaroonIDsResponse", [ - { no: 1, name: "root_key_ids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): ListMacaroonIDsResponse { - const message = { rootKeyIds: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListMacaroonIDsResponse): ListMacaroonIDsResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated uint64 root_key_ids */ 1: - if (wireType === WireType.LengthDelimited) - for (let e = reader.int32() + reader.pos; reader.pos < e;) - message.rootKeyIds.push(reader.uint64().toBigInt()); - else - message.rootKeyIds.push(reader.uint64().toBigInt()); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ListMacaroonIDsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated uint64 root_key_ids = 1; */ - if (message.rootKeyIds.length) { - writer.tag(1, WireType.LengthDelimited).fork(); - for (let i = 0; i < message.rootKeyIds.length; i++) - writer.uint64(message.rootKeyIds[i]); - writer.join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListMacaroonIDsResponse - */ -export const ListMacaroonIDsResponse = new ListMacaroonIDsResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class DeleteMacaroonIDRequest$Type extends MessageType { - constructor() { - super("lnrpc.DeleteMacaroonIDRequest", [ - { no: 1, name: "root_key_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): DeleteMacaroonIDRequest { - const message = { rootKeyId: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeleteMacaroonIDRequest): DeleteMacaroonIDRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 root_key_id */ 1: - message.rootKeyId = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: DeleteMacaroonIDRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 root_key_id = 1; */ - if (message.rootKeyId !== 0n) - writer.tag(1, WireType.Varint).uint64(message.rootKeyId); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.DeleteMacaroonIDRequest - */ -export const DeleteMacaroonIDRequest = new DeleteMacaroonIDRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class DeleteMacaroonIDResponse$Type extends MessageType { - constructor() { - super("lnrpc.DeleteMacaroonIDResponse", [ - { no: 1, name: "deleted", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): DeleteMacaroonIDResponse { - const message = { deleted: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeleteMacaroonIDResponse): DeleteMacaroonIDResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool deleted */ 1: - message.deleted = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: DeleteMacaroonIDResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool deleted = 1; */ - if (message.deleted !== false) - writer.tag(1, WireType.Varint).bool(message.deleted); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.DeleteMacaroonIDResponse - */ -export const DeleteMacaroonIDResponse = new DeleteMacaroonIDResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class MacaroonPermissionList$Type extends MessageType { - constructor() { - super("lnrpc.MacaroonPermissionList", [ - { no: 1, name: "permissions", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => MacaroonPermission } - ]); - } - create(value?: PartialMessage): MacaroonPermissionList { - const message = { permissions: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MacaroonPermissionList): MacaroonPermissionList { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated lnrpc.MacaroonPermission permissions */ 1: - message.permissions.push(MacaroonPermission.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: MacaroonPermissionList, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated lnrpc.MacaroonPermission permissions = 1; */ - for (let i = 0; i < message.permissions.length; i++) - MacaroonPermission.internalBinaryWrite(message.permissions[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.MacaroonPermissionList - */ -export const MacaroonPermissionList = new MacaroonPermissionList$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListPermissionsRequest$Type extends MessageType { - constructor() { - super("lnrpc.ListPermissionsRequest", []); - } - create(value?: PartialMessage): ListPermissionsRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListPermissionsRequest): ListPermissionsRequest { - return target ?? this.create(); - } - internalBinaryWrite(message: ListPermissionsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListPermissionsRequest - */ -export const ListPermissionsRequest = new ListPermissionsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ListPermissionsResponse$Type extends MessageType { - constructor() { - super("lnrpc.ListPermissionsResponse", [ - { no: 1, name: "method_permissions", kind: "map", K: 9 /*ScalarType.STRING*/, V: { kind: "message", T: () => MacaroonPermissionList } } - ]); - } - create(value?: PartialMessage): ListPermissionsResponse { - const message = { methodPermissions: {} }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListPermissionsResponse): ListPermissionsResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* map method_permissions */ 1: - this.binaryReadMap1(message.methodPermissions, reader, options); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap1(map: ListPermissionsResponse["methodPermissions"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof ListPermissionsResponse["methodPermissions"] | undefined, val: ListPermissionsResponse["methodPermissions"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.string(); - break; - case 2: - val = MacaroonPermissionList.internalBinaryRead(reader, reader.uint32(), options); - break; - default: throw new globalThis.Error("unknown map entry field for field lnrpc.ListPermissionsResponse.method_permissions"); - } - } - map[key ?? ""] = val ?? MacaroonPermissionList.create(); - } - internalBinaryWrite(message: ListPermissionsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* map method_permissions = 1; */ - for (let k of Object.keys(message.methodPermissions)) { - writer.tag(1, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k); - writer.tag(2, WireType.LengthDelimited).fork(); - MacaroonPermissionList.internalBinaryWrite(message.methodPermissions[k], writer, options); - writer.join().join(); - } - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ListPermissionsResponse - */ -export const ListPermissionsResponse = new ListPermissionsResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Failure$Type extends MessageType { - constructor() { - super("lnrpc.Failure", [ - { no: 1, name: "code", kind: "enum", T: () => ["lnrpc.Failure.FailureCode", Failure_FailureCode] }, - { no: 3, name: "channel_update", kind: "message", T: () => ChannelUpdate }, - { no: 4, name: "htlc_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "onion_sha_256", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 6, name: "cltv_expiry", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 7, name: "flags", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 8, name: "failure_source_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 9, name: "height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } - ]); - } - create(value?: PartialMessage): Failure { - const message = { code: 0, htlcMsat: 0n, onionSha256: new Uint8Array(0), cltvExpiry: 0, flags: 0, failureSourceIndex: 0, height: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Failure): Failure { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.Failure.FailureCode code */ 1: - message.code = reader.int32(); - break; - case /* lnrpc.ChannelUpdate channel_update */ 3: - message.channelUpdate = ChannelUpdate.internalBinaryRead(reader, reader.uint32(), options, message.channelUpdate); - break; - case /* uint64 htlc_msat */ 4: - message.htlcMsat = reader.uint64().toBigInt(); - break; - case /* bytes onion_sha_256 */ 5: - message.onionSha256 = reader.bytes(); - break; - case /* uint32 cltv_expiry */ 6: - message.cltvExpiry = reader.uint32(); - break; - case /* uint32 flags */ 7: - message.flags = reader.uint32(); - break; - case /* uint32 failure_source_index */ 8: - message.failureSourceIndex = reader.uint32(); - break; - case /* uint32 height */ 9: - message.height = reader.uint32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: Failure, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.Failure.FailureCode code = 1; */ - if (message.code !== 0) - writer.tag(1, WireType.Varint).int32(message.code); - /* lnrpc.ChannelUpdate channel_update = 3; */ - if (message.channelUpdate) - ChannelUpdate.internalBinaryWrite(message.channelUpdate, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); - /* uint64 htlc_msat = 4; */ - if (message.htlcMsat !== 0n) - writer.tag(4, WireType.Varint).uint64(message.htlcMsat); - /* bytes onion_sha_256 = 5; */ - if (message.onionSha256.length) - writer.tag(5, WireType.LengthDelimited).bytes(message.onionSha256); - /* uint32 cltv_expiry = 6; */ - if (message.cltvExpiry !== 0) - writer.tag(6, WireType.Varint).uint32(message.cltvExpiry); - /* uint32 flags = 7; */ - if (message.flags !== 0) - writer.tag(7, WireType.Varint).uint32(message.flags); - /* uint32 failure_source_index = 8; */ - if (message.failureSourceIndex !== 0) - writer.tag(8, WireType.Varint).uint32(message.failureSourceIndex); - /* uint32 height = 9; */ - if (message.height !== 0) - writer.tag(9, WireType.Varint).uint32(message.height); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Failure - */ -export const Failure = new Failure$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ChannelUpdate$Type extends MessageType { - constructor() { - super("lnrpc.ChannelUpdate", [ - { no: 1, name: "signature", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "chain_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 4, name: "timestamp", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 10, name: "message_flags", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "channel_flags", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 6, name: "time_lock_delta", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 7, name: "htlc_minimum_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 8, name: "base_fee", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 9, name: "fee_rate", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 11, name: "htlc_maximum_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 12, name: "extra_opaque_data", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): ChannelUpdate { - const message = { signature: new Uint8Array(0), chainHash: new Uint8Array(0), chanId: "0", timestamp: 0, messageFlags: 0, channelFlags: 0, timeLockDelta: 0, htlcMinimumMsat: 0n, baseFee: 0, feeRate: 0, htlcMaximumMsat: 0n, extraOpaqueData: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelUpdate): ChannelUpdate { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes signature */ 1: - message.signature = reader.bytes(); - break; - case /* bytes chain_hash */ 2: - message.chainHash = reader.bytes(); - break; - case /* uint64 chan_id = 3 [jstype = JS_STRING];*/ 3: - message.chanId = reader.uint64().toString(); - break; - case /* uint32 timestamp */ 4: - message.timestamp = reader.uint32(); - break; - case /* uint32 message_flags */ 10: - message.messageFlags = reader.uint32(); - break; - case /* uint32 channel_flags */ 5: - message.channelFlags = reader.uint32(); - break; - case /* uint32 time_lock_delta */ 6: - message.timeLockDelta = reader.uint32(); - break; - case /* uint64 htlc_minimum_msat */ 7: - message.htlcMinimumMsat = reader.uint64().toBigInt(); - break; - case /* uint32 base_fee */ 8: - message.baseFee = reader.uint32(); - break; - case /* uint32 fee_rate */ 9: - message.feeRate = reader.uint32(); - break; - case /* uint64 htlc_maximum_msat */ 11: - message.htlcMaximumMsat = reader.uint64().toBigInt(); - break; - case /* bytes extra_opaque_data */ 12: - message.extraOpaqueData = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ChannelUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes signature = 1; */ - if (message.signature.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.signature); - /* bytes chain_hash = 2; */ - if (message.chainHash.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.chainHash); - /* uint64 chan_id = 3 [jstype = JS_STRING]; */ - if (message.chanId !== "0") - writer.tag(3, WireType.Varint).uint64(message.chanId); - /* uint32 timestamp = 4; */ - if (message.timestamp !== 0) - writer.tag(4, WireType.Varint).uint32(message.timestamp); - /* uint32 message_flags = 10; */ - if (message.messageFlags !== 0) - writer.tag(10, WireType.Varint).uint32(message.messageFlags); - /* uint32 channel_flags = 5; */ - if (message.channelFlags !== 0) - writer.tag(5, WireType.Varint).uint32(message.channelFlags); - /* uint32 time_lock_delta = 6; */ - if (message.timeLockDelta !== 0) - writer.tag(6, WireType.Varint).uint32(message.timeLockDelta); - /* uint64 htlc_minimum_msat = 7; */ - if (message.htlcMinimumMsat !== 0n) - writer.tag(7, WireType.Varint).uint64(message.htlcMinimumMsat); - /* uint32 base_fee = 8; */ - if (message.baseFee !== 0) - writer.tag(8, WireType.Varint).uint32(message.baseFee); - /* uint32 fee_rate = 9; */ - if (message.feeRate !== 0) - writer.tag(9, WireType.Varint).uint32(message.feeRate); - /* uint64 htlc_maximum_msat = 11; */ - if (message.htlcMaximumMsat !== 0n) - writer.tag(11, WireType.Varint).uint64(message.htlcMaximumMsat); - /* bytes extra_opaque_data = 12; */ - if (message.extraOpaqueData.length) - writer.tag(12, WireType.LengthDelimited).bytes(message.extraOpaqueData); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.ChannelUpdate - */ -export const ChannelUpdate = new ChannelUpdate$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class MacaroonId$Type extends MessageType { - constructor() { - super("lnrpc.MacaroonId", [ - { no: 1, name: "nonce", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "storageId", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "ops", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Op } - ]); - } - create(value?: PartialMessage): MacaroonId { - const message = { nonce: new Uint8Array(0), storageId: new Uint8Array(0), ops: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MacaroonId): MacaroonId { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes nonce */ 1: - message.nonce = reader.bytes(); - break; - case /* bytes storageId */ 2: - message.storageId = reader.bytes(); - break; - case /* repeated lnrpc.Op ops */ 3: - message.ops.push(Op.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: MacaroonId, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes nonce = 1; */ - if (message.nonce.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.nonce); - /* bytes storageId = 2; */ - if (message.storageId.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.storageId); - /* repeated lnrpc.Op ops = 3; */ - for (let i = 0; i < message.ops.length; i++) - Op.internalBinaryWrite(message.ops[i], writer.tag(3, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.MacaroonId - */ -export const MacaroonId = new MacaroonId$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class Op$Type extends MessageType { - constructor() { - super("lnrpc.Op", [ - { no: 1, name: "entity", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "actions", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): Op { - const message = { entity: "", actions: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Op): Op { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string entity */ 1: - message.entity = reader.string(); - break; - case /* repeated string actions */ 2: - message.actions.push(reader.string()); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: Op, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string entity = 1; */ - if (message.entity !== "") - writer.tag(1, WireType.LengthDelimited).string(message.entity); - /* repeated string actions = 2; */ - for (let i = 0; i < message.actions.length; i++) - writer.tag(2, WireType.LengthDelimited).string(message.actions[i]); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.Op - */ -export const Op = new Op$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class CheckMacPermRequest$Type extends MessageType { - constructor() { - super("lnrpc.CheckMacPermRequest", [ - { no: 1, name: "macaroon", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "permissions", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => MacaroonPermission }, - { no: 3, name: "fullMethod", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): CheckMacPermRequest { - const message = { macaroon: new Uint8Array(0), permissions: [], fullMethod: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CheckMacPermRequest): CheckMacPermRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes macaroon */ 1: - message.macaroon = reader.bytes(); - break; - case /* repeated lnrpc.MacaroonPermission permissions */ 2: - message.permissions.push(MacaroonPermission.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* string fullMethod */ 3: - message.fullMethod = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: CheckMacPermRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes macaroon = 1; */ - if (message.macaroon.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.macaroon); - /* repeated lnrpc.MacaroonPermission permissions = 2; */ - for (let i = 0; i < message.permissions.length; i++) - MacaroonPermission.internalBinaryWrite(message.permissions[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - /* string fullMethod = 3; */ - if (message.fullMethod !== "") - writer.tag(3, WireType.LengthDelimited).string(message.fullMethod); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.CheckMacPermRequest - */ -export const CheckMacPermRequest = new CheckMacPermRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class CheckMacPermResponse$Type extends MessageType { - constructor() { - super("lnrpc.CheckMacPermResponse", [ - { no: 1, name: "valid", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): CheckMacPermResponse { - const message = { valid: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CheckMacPermResponse): CheckMacPermResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool valid */ 1: - message.valid = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: CheckMacPermResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool valid = 1; */ - if (message.valid !== false) - writer.tag(1, WireType.Varint).bool(message.valid); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.CheckMacPermResponse - */ -export const CheckMacPermResponse = new CheckMacPermResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class RPCMiddlewareRequest$Type extends MessageType { - constructor() { - super("lnrpc.RPCMiddlewareRequest", [ - { no: 1, name: "request_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "raw_macaroon", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "custom_caveat_condition", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "stream_auth", kind: "message", oneof: "interceptType", T: () => StreamAuth }, - { no: 5, name: "request", kind: "message", oneof: "interceptType", T: () => RPCMessage }, - { no: 6, name: "response", kind: "message", oneof: "interceptType", T: () => RPCMessage }, - { no: 8, name: "reg_complete", kind: "scalar", oneof: "interceptType", T: 8 /*ScalarType.BOOL*/ }, - { no: 7, name: "msg_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): RPCMiddlewareRequest { - const message = { requestId: 0n, rawMacaroon: new Uint8Array(0), customCaveatCondition: "", interceptType: { oneofKind: undefined }, msgId: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RPCMiddlewareRequest): RPCMiddlewareRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 request_id */ 1: - message.requestId = reader.uint64().toBigInt(); - break; - case /* bytes raw_macaroon */ 2: - message.rawMacaroon = reader.bytes(); - break; - case /* string custom_caveat_condition */ 3: - message.customCaveatCondition = reader.string(); - break; - case /* lnrpc.StreamAuth stream_auth */ 4: - message.interceptType = { - oneofKind: "streamAuth", - streamAuth: StreamAuth.internalBinaryRead(reader, reader.uint32(), options, (message.interceptType as any).streamAuth) - }; - break; - case /* lnrpc.RPCMessage request */ 5: - message.interceptType = { - oneofKind: "request", - request: RPCMessage.internalBinaryRead(reader, reader.uint32(), options, (message.interceptType as any).request) - }; - break; - case /* lnrpc.RPCMessage response */ 6: - message.interceptType = { - oneofKind: "response", - response: RPCMessage.internalBinaryRead(reader, reader.uint32(), options, (message.interceptType as any).response) - }; - break; - case /* bool reg_complete */ 8: - message.interceptType = { - oneofKind: "regComplete", - regComplete: reader.bool() - }; - break; - case /* uint64 msg_id */ 7: - message.msgId = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: RPCMiddlewareRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 request_id = 1; */ - if (message.requestId !== 0n) - writer.tag(1, WireType.Varint).uint64(message.requestId); - /* bytes raw_macaroon = 2; */ - if (message.rawMacaroon.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.rawMacaroon); - /* string custom_caveat_condition = 3; */ - if (message.customCaveatCondition !== "") - writer.tag(3, WireType.LengthDelimited).string(message.customCaveatCondition); - /* lnrpc.StreamAuth stream_auth = 4; */ - if (message.interceptType.oneofKind === "streamAuth") - StreamAuth.internalBinaryWrite(message.interceptType.streamAuth, writer.tag(4, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.RPCMessage request = 5; */ - if (message.interceptType.oneofKind === "request") - RPCMessage.internalBinaryWrite(message.interceptType.request, writer.tag(5, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.RPCMessage response = 6; */ - if (message.interceptType.oneofKind === "response") - RPCMessage.internalBinaryWrite(message.interceptType.response, writer.tag(6, WireType.LengthDelimited).fork(), options).join(); - /* bool reg_complete = 8; */ - if (message.interceptType.oneofKind === "regComplete") - writer.tag(8, WireType.Varint).bool(message.interceptType.regComplete); - /* uint64 msg_id = 7; */ - if (message.msgId !== 0n) - writer.tag(7, WireType.Varint).uint64(message.msgId); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.RPCMiddlewareRequest - */ -export const RPCMiddlewareRequest = new RPCMiddlewareRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class StreamAuth$Type extends MessageType { - constructor() { - super("lnrpc.StreamAuth", [ - { no: 1, name: "method_full_uri", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): StreamAuth { - const message = { methodFullUri: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StreamAuth): StreamAuth { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string method_full_uri */ 1: - message.methodFullUri = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: StreamAuth, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string method_full_uri = 1; */ - if (message.methodFullUri !== "") - writer.tag(1, WireType.LengthDelimited).string(message.methodFullUri); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.StreamAuth - */ -export const StreamAuth = new StreamAuth$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class RPCMessage$Type extends MessageType { - constructor() { - super("lnrpc.RPCMessage", [ - { no: 1, name: "method_full_uri", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "stream_rpc", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 3, name: "type_name", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 4, name: "serialized", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 5, name: "is_error", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): RPCMessage { - const message = { methodFullUri: "", streamRpc: false, typeName: "", serialized: new Uint8Array(0), isError: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RPCMessage): RPCMessage { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string method_full_uri */ 1: - message.methodFullUri = reader.string(); - break; - case /* bool stream_rpc */ 2: - message.streamRpc = reader.bool(); - break; - case /* string type_name */ 3: - message.typeName = reader.string(); - break; - case /* bytes serialized */ 4: - message.serialized = reader.bytes(); - break; - case /* bool is_error */ 5: - message.isError = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: RPCMessage, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string method_full_uri = 1; */ - if (message.methodFullUri !== "") - writer.tag(1, WireType.LengthDelimited).string(message.methodFullUri); - /* bool stream_rpc = 2; */ - if (message.streamRpc !== false) - writer.tag(2, WireType.Varint).bool(message.streamRpc); - /* string type_name = 3; */ - if (message.typeName !== "") - writer.tag(3, WireType.LengthDelimited).string(message.typeName); - /* bytes serialized = 4; */ - if (message.serialized.length) - writer.tag(4, WireType.LengthDelimited).bytes(message.serialized); - /* bool is_error = 5; */ - if (message.isError !== false) - writer.tag(5, WireType.Varint).bool(message.isError); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.RPCMessage - */ -export const RPCMessage = new RPCMessage$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class RPCMiddlewareResponse$Type extends MessageType { - constructor() { - super("lnrpc.RPCMiddlewareResponse", [ - { no: 1, name: "ref_msg_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "register", kind: "message", oneof: "middlewareMessage", T: () => MiddlewareRegistration }, - { no: 3, name: "feedback", kind: "message", oneof: "middlewareMessage", T: () => InterceptFeedback } - ]); - } - create(value?: PartialMessage): RPCMiddlewareResponse { - const message = { refMsgId: 0n, middlewareMessage: { oneofKind: undefined } }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RPCMiddlewareResponse): RPCMiddlewareResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 ref_msg_id */ 1: - message.refMsgId = reader.uint64().toBigInt(); - break; - case /* lnrpc.MiddlewareRegistration register */ 2: - message.middlewareMessage = { - oneofKind: "register", - register: MiddlewareRegistration.internalBinaryRead(reader, reader.uint32(), options, (message.middlewareMessage as any).register) - }; - break; - case /* lnrpc.InterceptFeedback feedback */ 3: - message.middlewareMessage = { - oneofKind: "feedback", - feedback: InterceptFeedback.internalBinaryRead(reader, reader.uint32(), options, (message.middlewareMessage as any).feedback) - }; - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: RPCMiddlewareResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 ref_msg_id = 1; */ - if (message.refMsgId !== 0n) - writer.tag(1, WireType.Varint).uint64(message.refMsgId); - /* lnrpc.MiddlewareRegistration register = 2; */ - if (message.middlewareMessage.oneofKind === "register") - MiddlewareRegistration.internalBinaryWrite(message.middlewareMessage.register, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.InterceptFeedback feedback = 3; */ - if (message.middlewareMessage.oneofKind === "feedback") - InterceptFeedback.internalBinaryWrite(message.middlewareMessage.feedback, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.RPCMiddlewareResponse - */ -export const RPCMiddlewareResponse = new RPCMiddlewareResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class MiddlewareRegistration$Type extends MessageType { - constructor() { - super("lnrpc.MiddlewareRegistration", [ - { no: 1, name: "middleware_name", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "custom_macaroon_caveat_name", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 3, name: "read_only_mode", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): MiddlewareRegistration { - const message = { middlewareName: "", customMacaroonCaveatName: "", readOnlyMode: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MiddlewareRegistration): MiddlewareRegistration { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string middleware_name */ 1: - message.middlewareName = reader.string(); - break; - case /* string custom_macaroon_caveat_name */ 2: - message.customMacaroonCaveatName = reader.string(); - break; - case /* bool read_only_mode */ 3: - message.readOnlyMode = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: MiddlewareRegistration, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string middleware_name = 1; */ - if (message.middlewareName !== "") - writer.tag(1, WireType.LengthDelimited).string(message.middlewareName); - /* string custom_macaroon_caveat_name = 2; */ - if (message.customMacaroonCaveatName !== "") - writer.tag(2, WireType.LengthDelimited).string(message.customMacaroonCaveatName); - /* bool read_only_mode = 3; */ - if (message.readOnlyMode !== false) - writer.tag(3, WireType.Varint).bool(message.readOnlyMode); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.MiddlewareRegistration - */ -export const MiddlewareRegistration = new MiddlewareRegistration$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class InterceptFeedback$Type extends MessageType { - constructor() { - super("lnrpc.InterceptFeedback", [ - { no: 1, name: "error", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 2, name: "replace_response", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 3, name: "replacement_serialized", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): InterceptFeedback { - const message = { error: "", replaceResponse: false, replacementSerialized: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: InterceptFeedback): InterceptFeedback { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* string error */ 1: - message.error = reader.string(); - break; - case /* bool replace_response */ 2: - message.replaceResponse = reader.bool(); - break; - case /* bytes replacement_serialized */ 3: - message.replacementSerialized = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: InterceptFeedback, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* string error = 1; */ - if (message.error !== "") - writer.tag(1, WireType.LengthDelimited).string(message.error); - /* bool replace_response = 2; */ - if (message.replaceResponse !== false) - writer.tag(2, WireType.Varint).bool(message.replaceResponse); - /* bytes replacement_serialized = 3; */ - if (message.replacementSerialized.length) - writer.tag(3, WireType.LengthDelimited).bytes(message.replacementSerialized); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message lnrpc.InterceptFeedback - */ -export const InterceptFeedback = new InterceptFeedback$Type(); -/** - * @generated ServiceType for protobuf service lnrpc.Lightning - */ -export const Lightning = new ServiceType("lnrpc.Lightning", [ - { name: "WalletBalance", options: {}, I: WalletBalanceRequest, O: WalletBalanceResponse }, - { name: "ChannelBalance", options: {}, I: ChannelBalanceRequest, O: ChannelBalanceResponse }, - { name: "GetTransactions", options: {}, I: GetTransactionsRequest, O: TransactionDetails }, - { name: "EstimateFee", options: {}, I: EstimateFeeRequest, O: EstimateFeeResponse }, - { name: "SendCoins", options: {}, I: SendCoinsRequest, O: SendCoinsResponse }, - { name: "ListUnspent", options: {}, I: ListUnspentRequest, O: ListUnspentResponse }, - { name: "SubscribeTransactions", serverStreaming: true, options: {}, I: GetTransactionsRequest, O: Transaction }, - { name: "SendMany", options: {}, I: SendManyRequest, O: SendManyResponse }, - { name: "NewAddress", options: {}, I: NewAddressRequest, O: NewAddressResponse }, - { name: "SignMessage", options: {}, I: SignMessageRequest, O: SignMessageResponse }, - { name: "VerifyMessage", options: {}, I: VerifyMessageRequest, O: VerifyMessageResponse }, - { name: "ConnectPeer", options: {}, I: ConnectPeerRequest, O: ConnectPeerResponse }, - { name: "DisconnectPeer", options: {}, I: DisconnectPeerRequest, O: DisconnectPeerResponse }, - { name: "ListPeers", options: {}, I: ListPeersRequest, O: ListPeersResponse }, - { name: "SubscribePeerEvents", serverStreaming: true, options: {}, I: PeerEventSubscription, O: PeerEvent }, - { name: "GetInfo", options: {}, I: GetInfoRequest, O: GetInfoResponse }, - { name: "GetRecoveryInfo", options: {}, I: GetRecoveryInfoRequest, O: GetRecoveryInfoResponse }, - { name: "PendingChannels", options: {}, I: PendingChannelsRequest, O: PendingChannelsResponse }, - { name: "ListChannels", options: {}, I: ListChannelsRequest, O: ListChannelsResponse }, - { name: "SubscribeChannelEvents", serverStreaming: true, options: {}, I: ChannelEventSubscription, O: ChannelEventUpdate }, - { name: "ClosedChannels", options: {}, I: ClosedChannelsRequest, O: ClosedChannelsResponse }, - { name: "OpenChannelSync", options: {}, I: OpenChannelRequest, O: ChannelPoint }, - { name: "OpenChannel", serverStreaming: true, options: {}, I: OpenChannelRequest, O: OpenStatusUpdate }, - { name: "BatchOpenChannel", options: {}, I: BatchOpenChannelRequest, O: BatchOpenChannelResponse }, - { name: "FundingStateStep", options: {}, I: FundingTransitionMsg, O: FundingStateStepResp }, - { name: "ChannelAcceptor", serverStreaming: true, clientStreaming: true, options: {}, I: ChannelAcceptResponse, O: ChannelAcceptRequest }, - { name: "CloseChannel", serverStreaming: true, options: {}, I: CloseChannelRequest, O: CloseStatusUpdate }, - { name: "AbandonChannel", options: {}, I: AbandonChannelRequest, O: AbandonChannelResponse }, - { name: "SendPayment", serverStreaming: true, clientStreaming: true, options: {}, I: SendRequest, O: SendResponse }, - { name: "SendPaymentSync", options: {}, I: SendRequest, O: SendResponse }, - { name: "SendToRoute", serverStreaming: true, clientStreaming: true, options: {}, I: SendToRouteRequest, O: SendResponse }, - { name: "SendToRouteSync", options: {}, I: SendToRouteRequest, O: SendResponse }, - { name: "AddInvoice", options: {}, I: Invoice, O: AddInvoiceResponse }, - { name: "ListInvoices", options: {}, I: ListInvoiceRequest, O: ListInvoiceResponse }, - { name: "LookupInvoice", options: {}, I: PaymentHash, O: Invoice }, - { name: "SubscribeInvoices", serverStreaming: true, options: {}, I: InvoiceSubscription, O: Invoice }, - { name: "DecodePayReq", options: {}, I: PayReqString, O: PayReq }, - { name: "ListPayments", options: {}, I: ListPaymentsRequest, O: ListPaymentsResponse }, - { name: "DeletePayment", options: {}, I: DeletePaymentRequest, O: DeletePaymentResponse }, - { name: "DeleteAllPayments", options: {}, I: DeleteAllPaymentsRequest, O: DeleteAllPaymentsResponse }, - { name: "DescribeGraph", options: {}, I: ChannelGraphRequest, O: ChannelGraph }, - { name: "GetNodeMetrics", options: {}, I: NodeMetricsRequest, O: NodeMetricsResponse }, - { name: "GetChanInfo", options: {}, I: ChanInfoRequest, O: ChannelEdge }, - { name: "GetNodeInfo", options: {}, I: NodeInfoRequest, O: NodeInfo }, - { name: "QueryRoutes", options: {}, I: QueryRoutesRequest, O: QueryRoutesResponse }, - { name: "GetNetworkInfo", options: {}, I: NetworkInfoRequest, O: NetworkInfo }, - { name: "StopDaemon", options: {}, I: StopRequest, O: StopResponse }, - { name: "SubscribeChannelGraph", serverStreaming: true, options: {}, I: GraphTopologySubscription, O: GraphTopologyUpdate }, - { name: "DebugLevel", options: {}, I: DebugLevelRequest, O: DebugLevelResponse }, - { name: "FeeReport", options: {}, I: FeeReportRequest, O: FeeReportResponse }, - { name: "UpdateChannelPolicy", options: {}, I: PolicyUpdateRequest, O: PolicyUpdateResponse }, - { name: "ForwardingHistory", options: {}, I: ForwardingHistoryRequest, O: ForwardingHistoryResponse }, - { name: "ExportChannelBackup", options: {}, I: ExportChannelBackupRequest, O: ChannelBackup }, - { name: "ExportAllChannelBackups", options: {}, I: ChanBackupExportRequest, O: ChanBackupSnapshot }, - { name: "VerifyChanBackup", options: {}, I: ChanBackupSnapshot, O: VerifyChanBackupResponse }, - { name: "RestoreChannelBackups", options: {}, I: RestoreChanBackupRequest, O: RestoreBackupResponse }, - { name: "SubscribeChannelBackups", serverStreaming: true, options: {}, I: ChannelBackupSubscription, O: ChanBackupSnapshot }, - { name: "BakeMacaroon", options: {}, I: BakeMacaroonRequest, O: BakeMacaroonResponse }, - { name: "ListMacaroonIDs", options: {}, I: ListMacaroonIDsRequest, O: ListMacaroonIDsResponse }, - { name: "DeleteMacaroonID", options: {}, I: DeleteMacaroonIDRequest, O: DeleteMacaroonIDResponse }, - { name: "ListPermissions", options: {}, I: ListPermissionsRequest, O: ListPermissionsResponse }, - { name: "CheckMacaroonPermissions", options: {}, I: CheckMacPermRequest, O: CheckMacPermResponse }, - { name: "RegisterRPCMiddleware", serverStreaming: true, clientStreaming: true, options: {}, I: RPCMiddlewareResponse, O: RPCMiddlewareRequest }, - { name: "SendCustomMessage", options: {}, I: SendCustomMessageRequest, O: SendCustomMessageResponse }, - { name: "SubscribeCustomMessages", serverStreaming: true, options: {}, I: SubscribeCustomMessagesRequest, O: CustomMessage }, - { name: "ListAliases", options: {}, I: ListAliasesRequest, O: ListAliasesResponse }, - { name: "LookupHtlc", options: {}, I: LookupHtlcRequest, O: LookupHtlcResponse } -]); +// @generated by protobuf-ts 2.8.1 +// @generated from protobuf file "lightning.proto" (package "lnrpc", syntax proto3) +// tslint:disable +import { ServiceType } from "@protobuf-ts/runtime-rpc"; +import type { BinaryWriteOptions } from "@protobuf-ts/runtime"; +import type { IBinaryWriter } from "@protobuf-ts/runtime"; +import { WireType } from "@protobuf-ts/runtime"; +import type { BinaryReadOptions } from "@protobuf-ts/runtime"; +import type { IBinaryReader } from "@protobuf-ts/runtime"; +import { UnknownFieldHandler } from "@protobuf-ts/runtime"; +import type { PartialMessage } from "@protobuf-ts/runtime"; +import { reflectionMergePartial } from "@protobuf-ts/runtime"; +import { MESSAGE_TYPE } from "@protobuf-ts/runtime"; +import { MessageType } from "@protobuf-ts/runtime"; +/** + * @generated from protobuf message lnrpc.LookupHtlcResolutionRequest + */ +export interface LookupHtlcResolutionRequest { + /** + * @generated from protobuf field: uint64 chan_id = 1; + */ + chanId: bigint; + /** + * @generated from protobuf field: uint64 htlc_index = 2; + */ + htlcIndex: bigint; +} +/** + * @generated from protobuf message lnrpc.LookupHtlcResolutionResponse + */ +export interface LookupHtlcResolutionResponse { + /** + * Settled is true is the htlc was settled. If false, the htlc was failed. + * + * @generated from protobuf field: bool settled = 1; + */ + settled: boolean; + /** + * Offchain indicates whether the htlc was resolved off-chain or on-chain. + * + * @generated from protobuf field: bool offchain = 2; + */ + offchain: boolean; +} +/** + * @generated from protobuf message lnrpc.SubscribeCustomMessagesRequest + */ +export interface SubscribeCustomMessagesRequest { +} +/** + * @generated from protobuf message lnrpc.CustomMessage + */ +export interface CustomMessage { + /** + * Peer from which the message originates + * + * @generated from protobuf field: bytes peer = 1; + */ + peer: Uint8Array; + /** + * Message type. This value will be in the custom range (>= 32768). + * + * @generated from protobuf field: uint32 type = 2; + */ + type: number; + /** + * Raw message data + * + * @generated from protobuf field: bytes data = 3; + */ + data: Uint8Array; +} +/** + * @generated from protobuf message lnrpc.SendCustomMessageRequest + */ +export interface SendCustomMessageRequest { + /** + * Peer to send the message to + * + * @generated from protobuf field: bytes peer = 1; + */ + peer: Uint8Array; + /** + * Message type. This value needs to be in the custom range (>= 32768). + * To send a type < custom range, lnd needs to be compiled with the `dev` + * build tag, and the message type to override should be specified in lnd's + * experimental protocol configuration. + * + * @generated from protobuf field: uint32 type = 2; + */ + type: number; + /** + * Raw message data. + * + * @generated from protobuf field: bytes data = 3; + */ + data: Uint8Array; +} +/** + * @generated from protobuf message lnrpc.SendCustomMessageResponse + */ +export interface SendCustomMessageResponse { +} +/** + * @generated from protobuf message lnrpc.Utxo + */ +export interface Utxo { + /** + * The type of address + * + * @generated from protobuf field: lnrpc.AddressType address_type = 1; + */ + addressType: AddressType; + /** + * The address + * + * @generated from protobuf field: string address = 2; + */ + address: string; + /** + * The value of the unspent coin in satoshis + * + * @generated from protobuf field: int64 amount_sat = 3; + */ + amountSat: bigint; + /** + * The pkscript in hex + * + * @generated from protobuf field: string pk_script = 4; + */ + pkScript: string; + /** + * The outpoint in format txid:n + * + * @generated from protobuf field: lnrpc.OutPoint outpoint = 5; + */ + outpoint?: OutPoint; + /** + * The number of confirmations for the Utxo + * + * @generated from protobuf field: int64 confirmations = 6; + */ + confirmations: bigint; +} +/** + * @generated from protobuf message lnrpc.OutputDetail + */ +export interface OutputDetail { + /** + * The type of the output + * + * @generated from protobuf field: lnrpc.OutputScriptType output_type = 1; + */ + outputType: OutputScriptType; + /** + * The address + * + * @generated from protobuf field: string address = 2; + */ + address: string; + /** + * The pkscript in hex + * + * @generated from protobuf field: string pk_script = 3; + */ + pkScript: string; + /** + * The output index used in the raw transaction + * + * @generated from protobuf field: int64 output_index = 4; + */ + outputIndex: bigint; + /** + * The value of the output coin in satoshis + * + * @generated from protobuf field: int64 amount = 5; + */ + amount: bigint; + /** + * Denotes if the output is controlled by the internal wallet + * + * @generated from protobuf field: bool is_our_address = 6; + */ + isOurAddress: boolean; +} +/** + * @generated from protobuf message lnrpc.Transaction + */ +export interface Transaction { + /** + * The transaction hash + * + * @generated from protobuf field: string tx_hash = 1; + */ + txHash: string; + /** + * The transaction amount, denominated in satoshis + * + * @generated from protobuf field: int64 amount = 2; + */ + amount: bigint; + /** + * The number of confirmations + * + * @generated from protobuf field: int32 num_confirmations = 3; + */ + numConfirmations: number; + /** + * The hash of the block this transaction was included in + * + * @generated from protobuf field: string block_hash = 4; + */ + blockHash: string; + /** + * The height of the block this transaction was included in + * + * @generated from protobuf field: int32 block_height = 5; + */ + blockHeight: number; + /** + * Timestamp of this transaction + * + * @generated from protobuf field: int64 time_stamp = 6; + */ + timeStamp: bigint; + /** + * Fees paid for this transaction + * + * @generated from protobuf field: int64 total_fees = 7; + */ + totalFees: bigint; + /** + * Addresses that received funds for this transaction. Deprecated as it is + * now incorporated in the output_details field. + * + * @deprecated + * @generated from protobuf field: repeated string dest_addresses = 8 [deprecated = true]; + */ + destAddresses: string[]; + /** + * Outputs that received funds for this transaction + * + * @generated from protobuf field: repeated lnrpc.OutputDetail output_details = 11; + */ + outputDetails: OutputDetail[]; + /** + * The raw transaction hex. + * + * @generated from protobuf field: string raw_tx_hex = 9; + */ + rawTxHex: string; + /** + * A label that was optionally set on transaction broadcast. + * + * @generated from protobuf field: string label = 10; + */ + label: string; + /** + * PreviousOutpoints/Inputs of this transaction. + * + * @generated from protobuf field: repeated lnrpc.PreviousOutPoint previous_outpoints = 12; + */ + previousOutpoints: PreviousOutPoint[]; +} +/** + * @generated from protobuf message lnrpc.GetTransactionsRequest + */ +export interface GetTransactionsRequest { + /** + * + * The height from which to list transactions, inclusive. If this value is + * greater than end_height, transactions will be read in reverse. + * + * @generated from protobuf field: int32 start_height = 1; + */ + startHeight: number; + /** + * + * 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. + * + * @generated from protobuf field: int32 end_height = 2; + */ + endHeight: number; + /** + * An optional filter to only include transactions relevant to an account. + * + * @generated from protobuf field: string account = 3; + */ + account: string; +} +/** + * @generated from protobuf message lnrpc.TransactionDetails + */ +export interface TransactionDetails { + /** + * The list of transactions relevant to the wallet. + * + * @generated from protobuf field: repeated lnrpc.Transaction transactions = 1; + */ + transactions: Transaction[]; +} +/** + * @generated from protobuf message lnrpc.FeeLimit + */ +export interface FeeLimit { + /** + * @generated from protobuf oneof: limit + */ + limit: { + oneofKind: "fixed"; + /** + * + * The fee limit expressed as a fixed amount of satoshis. + * + * The fields fixed and fixed_msat are mutually exclusive. + * + * @generated from protobuf field: int64 fixed = 1; + */ + fixed: bigint; + } | { + oneofKind: "fixedMsat"; + /** + * + * The fee limit expressed as a fixed amount of millisatoshis. + * + * The fields fixed and fixed_msat are mutually exclusive. + * + * @generated from protobuf field: int64 fixed_msat = 3; + */ + fixedMsat: bigint; + } | { + oneofKind: "percent"; + /** + * The fee limit expressed as a percentage of the payment amount. + * + * @generated from protobuf field: int64 percent = 2; + */ + percent: bigint; + } | { + oneofKind: undefined; + }; +} +/** + * @generated from protobuf message lnrpc.SendRequest + */ +export interface SendRequest { + /** + * + * The identity pubkey of the payment recipient. When using REST, this field + * must be encoded as base64. + * + * @generated from protobuf field: bytes dest = 1; + */ + dest: Uint8Array; + /** + * + * The hex-encoded identity pubkey of the payment recipient. Deprecated now + * that the REST gateway supports base64 encoding of bytes fields. + * + * @deprecated + * @generated from protobuf field: string dest_string = 2 [deprecated = true]; + */ + destString: string; + /** + * + * The amount to send expressed in satoshis. + * + * The fields amt and amt_msat are mutually exclusive. + * + * @generated from protobuf field: int64 amt = 3; + */ + amt: bigint; + /** + * + * The amount to send expressed in millisatoshis. + * + * The fields amt and amt_msat are mutually exclusive. + * + * @generated from protobuf field: int64 amt_msat = 12; + */ + amtMsat: bigint; + /** + * + * The hash to use within the payment's HTLC. When using REST, this field + * must be encoded as base64. + * + * @generated from protobuf field: bytes payment_hash = 4; + */ + paymentHash: Uint8Array; + /** + * + * The hex-encoded hash to use within the payment's HTLC. Deprecated now + * that the REST gateway supports base64 encoding of bytes fields. + * + * @deprecated + * @generated from protobuf field: string payment_hash_string = 5 [deprecated = true]; + */ + paymentHashString: string; + /** + * + * 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. + * + * @generated from protobuf field: string payment_request = 6; + */ + paymentRequest: string; + /** + * + * The CLTV delta from the current height that should be used to set the + * timelock for the final hop. + * + * @generated from protobuf field: int32 final_cltv_delta = 7; + */ + finalCltvDelta: number; + /** + * + * 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. If not specified, lnd will use a default value of 100% + * fees for small amounts (<=1k sat) or 5% fees for larger amounts. + * + * @generated from protobuf field: lnrpc.FeeLimit fee_limit = 8; + */ + feeLimit?: FeeLimit; + /** + * + * The channel id of the channel that must be taken to the first hop. If zero, + * any channel may be used. + * + * @generated from protobuf field: uint64 outgoing_chan_id = 9 [jstype = JS_STRING]; + */ + outgoingChanId: string; + /** + * + * The pubkey of the last hop of the route. If empty, any hop may be used. + * + * @generated from protobuf field: bytes last_hop_pubkey = 13; + */ + lastHopPubkey: Uint8Array; + /** + * + * 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. + * + * @generated from protobuf field: uint32 cltv_limit = 10; + */ + cltvLimit: number; + /** + * + * 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. + * + * @generated from protobuf field: map dest_custom_records = 11; + */ + destCustomRecords: { + [key: string]: Uint8Array; + }; + /** + * If set, circular payments to self are permitted. + * + * @generated from protobuf field: bool allow_self_payment = 14; + */ + allowSelfPayment: boolean; + /** + * + * 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. + * + * @generated from protobuf field: repeated lnrpc.FeatureBit dest_features = 15; + */ + destFeatures: FeatureBit[]; + /** + * + * The payment address of the generated invoice. This is also called + * payment secret in specifications (e.g. BOLT 11). + * + * @generated from protobuf field: bytes payment_addr = 16; + */ + paymentAddr: Uint8Array; +} +/** + * @generated from protobuf message lnrpc.SendResponse + */ +export interface SendResponse { + /** + * @generated from protobuf field: string payment_error = 1; + */ + paymentError: string; + /** + * @generated from protobuf field: bytes payment_preimage = 2; + */ + paymentPreimage: Uint8Array; + /** + * @generated from protobuf field: lnrpc.Route payment_route = 3; + */ + paymentRoute?: Route; + /** + * @generated from protobuf field: bytes payment_hash = 4; + */ + paymentHash: Uint8Array; +} +/** + * @generated from protobuf message lnrpc.SendToRouteRequest + */ +export interface SendToRouteRequest { + /** + * + * The payment hash to use for the HTLC. When using REST, this field must be + * encoded as base64. + * + * @generated from protobuf field: bytes payment_hash = 1; + */ + paymentHash: Uint8Array; + /** + * + * 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 + * @generated from protobuf field: string payment_hash_string = 2 [deprecated = true]; + */ + paymentHashString: string; + /** + * Route that should be used to attempt to complete the payment. + * + * @generated from protobuf field: lnrpc.Route route = 4; + */ + route?: Route; +} +/** + * @generated from protobuf message lnrpc.ChannelAcceptRequest + */ +export interface ChannelAcceptRequest { + /** + * The pubkey of the node that wishes to open an inbound channel. + * + * @generated from protobuf field: bytes node_pubkey = 1; + */ + nodePubkey: Uint8Array; + /** + * The hash of the genesis block that the proposed channel resides in. + * + * @generated from protobuf field: bytes chain_hash = 2; + */ + chainHash: Uint8Array; + /** + * The pending channel id. + * + * @generated from protobuf field: bytes pending_chan_id = 3; + */ + pendingChanId: Uint8Array; + /** + * The funding amount in satoshis that initiator wishes to use in the + * channel. + * + * @generated from protobuf field: uint64 funding_amt = 4; + */ + fundingAmt: bigint; + /** + * The push amount of the proposed channel in millisatoshis. + * + * @generated from protobuf field: uint64 push_amt = 5; + */ + pushAmt: bigint; + /** + * The dust limit of the initiator's commitment tx. + * + * @generated from protobuf field: uint64 dust_limit = 6; + */ + dustLimit: bigint; + /** + * The maximum amount of coins in millisatoshis that can be pending in this + * channel. + * + * @generated from protobuf field: uint64 max_value_in_flight = 7; + */ + maxValueInFlight: bigint; + /** + * The minimum amount of satoshis the initiator requires us to have at all + * times. + * + * @generated from protobuf field: uint64 channel_reserve = 8; + */ + channelReserve: bigint; + /** + * The smallest HTLC in millisatoshis that the initiator will accept. + * + * @generated from protobuf field: uint64 min_htlc = 9; + */ + minHtlc: bigint; + /** + * The initial fee rate that the initiator suggests for both commitment + * transactions. + * + * @generated from protobuf field: uint64 fee_per_kw = 10; + */ + feePerKw: bigint; + /** + * + * The number of blocks to use for the relative time lock in the pay-to-self + * output of both commitment transactions. + * + * @generated from protobuf field: uint32 csv_delay = 11; + */ + csvDelay: number; + /** + * The total number of incoming HTLC's that the initiator will accept. + * + * @generated from protobuf field: uint32 max_accepted_htlcs = 12; + */ + maxAcceptedHtlcs: number; + /** + * A bit-field which the initiator uses to specify proposed channel + * behavior. + * + * @generated from protobuf field: uint32 channel_flags = 13; + */ + channelFlags: number; + /** + * The commitment type the initiator wishes to use for the proposed channel. + * + * @generated from protobuf field: lnrpc.CommitmentType commitment_type = 14; + */ + commitmentType: CommitmentType; + /** + * Whether the initiator wants to open a zero-conf channel via the channel + * type. + * + * @generated from protobuf field: bool wants_zero_conf = 15; + */ + wantsZeroConf: boolean; + /** + * Whether the initiator wants to use the scid-alias channel type. This is + * separate from the feature bit. + * + * @generated from protobuf field: bool wants_scid_alias = 16; + */ + wantsScidAlias: boolean; +} +/** + * @generated from protobuf message lnrpc.ChannelAcceptResponse + */ +export interface ChannelAcceptResponse { + /** + * Whether or not the client accepts the channel. + * + * @generated from protobuf field: bool accept = 1; + */ + accept: boolean; + /** + * The pending channel id to which this response applies. + * + * @generated from protobuf field: bytes pending_chan_id = 2; + */ + pendingChanId: Uint8Array; + /** + * + * 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. + * + * @generated from protobuf field: string error = 3; + */ + error: string; + /** + * + * 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. + * + * @generated from protobuf field: string upfront_shutdown = 4; + */ + upfrontShutdown: string; + /** + * + * The csv delay (in blocks) that we require for the remote party. + * + * @generated from protobuf field: uint32 csv_delay = 5; + */ + csvDelay: number; + /** + * + * 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). + * + * @generated from protobuf field: uint64 reserve_sat = 6; + */ + reserveSat: bigint; + /** + * + * The maximum amount of funds in millisatoshis that we allow the remote peer + * to have in outstanding htlcs. + * + * @generated from protobuf field: uint64 in_flight_max_msat = 7; + */ + inFlightMaxMsat: bigint; + /** + * + * The maximum number of htlcs that the remote peer can offer us. + * + * @generated from protobuf field: uint32 max_htlc_count = 8; + */ + maxHtlcCount: number; + /** + * + * The minimum value in millisatoshis for incoming htlcs on the channel. + * + * @generated from protobuf field: uint64 min_htlc_in = 9; + */ + minHtlcIn: bigint; + /** + * + * The number of confirmations we require before we consider the channel open. + * + * @generated from protobuf field: uint32 min_accept_depth = 10; + */ + minAcceptDepth: number; + /** + * + * Whether the responder wants this to be a zero-conf channel. This will fail + * if either side does not have the scid-alias feature bit set. The minimum + * depth field must be zero if this is true. + * + * @generated from protobuf field: bool zero_conf = 11; + */ + zeroConf: boolean; +} +/** + * @generated from protobuf message lnrpc.ChannelPoint + */ +export interface ChannelPoint { + /** + * @generated from protobuf oneof: funding_txid + */ + fundingTxid: { + oneofKind: "fundingTxidBytes"; + /** + * + * Txid of the funding transaction. When using REST, this field must be + * encoded as base64. + * + * @generated from protobuf field: bytes funding_txid_bytes = 1; + */ + fundingTxidBytes: Uint8Array; + } | { + oneofKind: "fundingTxidStr"; + /** + * + * Hex-encoded string representing the byte-reversed hash of the funding + * transaction. + * + * @generated from protobuf field: string funding_txid_str = 2; + */ + fundingTxidStr: string; + } | { + oneofKind: undefined; + }; + /** + * The index of the output of the funding transaction + * + * @generated from protobuf field: uint32 output_index = 3; + */ + outputIndex: number; +} +/** + * @generated from protobuf message lnrpc.OutPoint + */ +export interface OutPoint { + /** + * Raw bytes representing the transaction id. + * + * @generated from protobuf field: bytes txid_bytes = 1; + */ + txidBytes: Uint8Array; + /** + * Reversed, hex-encoded string representing the transaction id. + * + * @generated from protobuf field: string txid_str = 2; + */ + txidStr: string; + /** + * The index of the output on the transaction. + * + * @generated from protobuf field: uint32 output_index = 3; + */ + outputIndex: number; +} +/** + * @generated from protobuf message lnrpc.PreviousOutPoint + */ +export interface PreviousOutPoint { + /** + * The outpoint in format txid:n. + * + * @generated from protobuf field: string outpoint = 1; + */ + outpoint: string; + /** + * Denotes if the outpoint is controlled by the internal wallet. + * The flag will only detect p2wkh, np2wkh and p2tr inputs as its own. + * + * @generated from protobuf field: bool is_our_output = 2; + */ + isOurOutput: boolean; +} +/** + * @generated from protobuf message lnrpc.LightningAddress + */ +export interface LightningAddress { + /** + * The identity pubkey of the Lightning node. + * + * @generated from protobuf field: string pubkey = 1; + */ + pubkey: string; + /** + * The network location of the lightning node, e.g. `69.69.69.69:1337` or + * `localhost:10011`. + * + * @generated from protobuf field: string host = 2; + */ + host: string; +} +/** + * @generated from protobuf message lnrpc.EstimateFeeRequest + */ +export interface EstimateFeeRequest { + /** + * The map from addresses to amounts for the transaction. + * + * @generated from protobuf field: map AddrToAmount = 1 [json_name = "AddrToAmount"]; + */ + addrToAmount: { + [key: string]: bigint; + }; + /** + * The target number of blocks that this transaction should be confirmed + * by. + * + * @generated from protobuf field: int32 target_conf = 2; + */ + targetConf: number; + /** + * The minimum number of confirmations each one of your outputs used for + * the transaction must satisfy. + * + * @generated from protobuf field: int32 min_confs = 3; + */ + minConfs: number; + /** + * Whether unconfirmed outputs should be used as inputs for the transaction. + * + * @generated from protobuf field: bool spend_unconfirmed = 4; + */ + spendUnconfirmed: boolean; + /** + * The strategy to use for selecting coins during fees estimation. + * + * @generated from protobuf field: lnrpc.CoinSelectionStrategy coin_selection_strategy = 5; + */ + coinSelectionStrategy: CoinSelectionStrategy; +} +/** + * @generated from protobuf message lnrpc.EstimateFeeResponse + */ +export interface EstimateFeeResponse { + /** + * The total fee in satoshis. + * + * @generated from protobuf field: int64 fee_sat = 1; + */ + feeSat: bigint; + /** + * Deprecated, use sat_per_vbyte. + * The fee rate in satoshi/vbyte. + * + * @deprecated + * @generated from protobuf field: int64 feerate_sat_per_byte = 2 [deprecated = true]; + */ + feerateSatPerByte: bigint; + /** + * The fee rate in satoshi/vbyte. + * + * @generated from protobuf field: uint64 sat_per_vbyte = 3; + */ + satPerVbyte: bigint; +} +/** + * @generated from protobuf message lnrpc.SendManyRequest + */ +export interface SendManyRequest { + /** + * The map from addresses to amounts + * + * @generated from protobuf field: map AddrToAmount = 1 [json_name = "AddrToAmount"]; + */ + addrToAmount: { + [key: string]: bigint; + }; + /** + * The target number of blocks that this transaction should be confirmed + * by. + * + * @generated from protobuf field: int32 target_conf = 3; + */ + targetConf: number; + /** + * A manual fee rate set in sat/vbyte that should be used when crafting the + * transaction. + * + * @generated from protobuf field: uint64 sat_per_vbyte = 4; + */ + satPerVbyte: bigint; + /** + * Deprecated, use sat_per_vbyte. + * A manual fee rate set in sat/vbyte that should be used when crafting the + * transaction. + * + * @deprecated + * @generated from protobuf field: int64 sat_per_byte = 5 [deprecated = true]; + */ + satPerByte: bigint; + /** + * An optional label for the transaction, limited to 500 characters. + * + * @generated from protobuf field: string label = 6; + */ + label: string; + /** + * The minimum number of confirmations each one of your outputs used for + * the transaction must satisfy. + * + * @generated from protobuf field: int32 min_confs = 7; + */ + minConfs: number; + /** + * Whether unconfirmed outputs should be used as inputs for the transaction. + * + * @generated from protobuf field: bool spend_unconfirmed = 8; + */ + spendUnconfirmed: boolean; + /** + * The strategy to use for selecting coins during sending many requests. + * + * @generated from protobuf field: lnrpc.CoinSelectionStrategy coin_selection_strategy = 9; + */ + coinSelectionStrategy: CoinSelectionStrategy; +} +/** + * @generated from protobuf message lnrpc.SendManyResponse + */ +export interface SendManyResponse { + /** + * The id of the transaction + * + * @generated from protobuf field: string txid = 1; + */ + txid: string; +} +/** + * @generated from protobuf message lnrpc.SendCoinsRequest + */ +export interface SendCoinsRequest { + /** + * The address to send coins to + * + * @generated from protobuf field: string addr = 1; + */ + addr: string; + /** + * The amount in satoshis to send + * + * @generated from protobuf field: int64 amount = 2; + */ + amount: bigint; + /** + * The target number of blocks that this transaction should be confirmed + * by. + * + * @generated from protobuf field: int32 target_conf = 3; + */ + targetConf: number; + /** + * A manual fee rate set in sat/vbyte that should be used when crafting the + * transaction. + * + * @generated from protobuf field: uint64 sat_per_vbyte = 4; + */ + satPerVbyte: bigint; + /** + * Deprecated, use sat_per_vbyte. + * A manual fee rate set in sat/vbyte that should be used when crafting the + * transaction. + * + * @deprecated + * @generated from protobuf field: int64 sat_per_byte = 5 [deprecated = true]; + */ + satPerByte: bigint; + /** + * + * If set, the amount field should be unset. It indicates lnd will send all + * wallet coins or all selected coins to the specified address. + * + * @generated from protobuf field: bool send_all = 6; + */ + sendAll: boolean; + /** + * An optional label for the transaction, limited to 500 characters. + * + * @generated from protobuf field: string label = 7; + */ + label: string; + /** + * The minimum number of confirmations each one of your outputs used for + * the transaction must satisfy. + * + * @generated from protobuf field: int32 min_confs = 8; + */ + minConfs: number; + /** + * Whether unconfirmed outputs should be used as inputs for the transaction. + * + * @generated from protobuf field: bool spend_unconfirmed = 9; + */ + spendUnconfirmed: boolean; + /** + * The strategy to use for selecting coins. + * + * @generated from protobuf field: lnrpc.CoinSelectionStrategy coin_selection_strategy = 10; + */ + coinSelectionStrategy: CoinSelectionStrategy; + /** + * A list of selected outpoints as inputs for the transaction. + * + * @generated from protobuf field: repeated lnrpc.OutPoint outpoints = 11; + */ + outpoints: OutPoint[]; +} +/** + * @generated from protobuf message lnrpc.SendCoinsResponse + */ +export interface SendCoinsResponse { + /** + * The transaction ID of the transaction + * + * @generated from protobuf field: string txid = 1; + */ + txid: string; +} +/** + * @generated from protobuf message lnrpc.ListUnspentRequest + */ +export interface ListUnspentRequest { + /** + * The minimum number of confirmations to be included. + * + * @generated from protobuf field: int32 min_confs = 1; + */ + minConfs: number; + /** + * The maximum number of confirmations to be included. + * + * @generated from protobuf field: int32 max_confs = 2; + */ + maxConfs: number; + /** + * An optional filter to only include outputs belonging to an account. + * + * @generated from protobuf field: string account = 3; + */ + account: string; +} +/** + * @generated from protobuf message lnrpc.ListUnspentResponse + */ +export interface ListUnspentResponse { + /** + * A list of utxos + * + * @generated from protobuf field: repeated lnrpc.Utxo utxos = 1; + */ + utxos: Utxo[]; +} +/** + * @generated from protobuf message lnrpc.NewAddressRequest + */ +export interface NewAddressRequest { + /** + * The type of address to generate. + * + * @generated from protobuf field: lnrpc.AddressType type = 1; + */ + type: AddressType; + /** + * + * The name of the account to generate a new address for. If empty, the + * default wallet account is used. + * + * @generated from protobuf field: string account = 2; + */ + account: string; +} +/** + * @generated from protobuf message lnrpc.NewAddressResponse + */ +export interface NewAddressResponse { + /** + * The newly generated wallet address + * + * @generated from protobuf field: string address = 1; + */ + address: string; +} +/** + * @generated from protobuf message lnrpc.SignMessageRequest + */ +export interface SignMessageRequest { + /** + * + * The message to be signed. When using REST, this field must be encoded as + * base64. + * + * @generated from protobuf field: bytes msg = 1; + */ + msg: Uint8Array; + /** + * + * Instead of the default double-SHA256 hashing of the message before signing, + * only use one round of hashing instead. + * + * @generated from protobuf field: bool single_hash = 2; + */ + singleHash: boolean; +} +/** + * @generated from protobuf message lnrpc.SignMessageResponse + */ +export interface SignMessageResponse { + /** + * The signature for the given message + * + * @generated from protobuf field: string signature = 1; + */ + signature: string; +} +/** + * @generated from protobuf message lnrpc.VerifyMessageRequest + */ +export interface VerifyMessageRequest { + /** + * + * The message over which the signature is to be verified. When using REST, + * this field must be encoded as base64. + * + * @generated from protobuf field: bytes msg = 1; + */ + msg: Uint8Array; + /** + * The signature to be verified over the given message + * + * @generated from protobuf field: string signature = 2; + */ + signature: string; +} +/** + * @generated from protobuf message lnrpc.VerifyMessageResponse + */ +export interface VerifyMessageResponse { + /** + * Whether the signature was valid over the given message + * + * @generated from protobuf field: bool valid = 1; + */ + valid: boolean; + /** + * The pubkey recovered from the signature + * + * @generated from protobuf field: string pubkey = 2; + */ + pubkey: string; +} +/** + * @generated from protobuf message lnrpc.ConnectPeerRequest + */ +export interface ConnectPeerRequest { + /** + * + * Lightning address of the peer to connect to. + * + * @generated from protobuf field: lnrpc.LightningAddress addr = 1; + */ + addr?: LightningAddress; + /** + * + * If set, the daemon will attempt to persistently connect to the target + * peer. Otherwise, the call will be synchronous. + * + * @generated from protobuf field: bool perm = 2; + */ + perm: boolean; + /** + * + * The connection timeout value (in seconds) for this request. It won't affect + * other requests. + * + * @generated from protobuf field: uint64 timeout = 3; + */ + timeout: bigint; +} +/** + * @generated from protobuf message lnrpc.ConnectPeerResponse + */ +export interface ConnectPeerResponse { +} +/** + * @generated from protobuf message lnrpc.DisconnectPeerRequest + */ +export interface DisconnectPeerRequest { + /** + * The pubkey of the node to disconnect from + * + * @generated from protobuf field: string pub_key = 1; + */ + pubKey: string; +} +/** + * @generated from protobuf message lnrpc.DisconnectPeerResponse + */ +export interface DisconnectPeerResponse { +} +/** + * @generated from protobuf message lnrpc.HTLC + */ +export interface HTLC { + /** + * @generated from protobuf field: bool incoming = 1; + */ + incoming: boolean; + /** + * @generated from protobuf field: int64 amount = 2; + */ + amount: bigint; + /** + * @generated from protobuf field: bytes hash_lock = 3; + */ + hashLock: Uint8Array; + /** + * @generated from protobuf field: uint32 expiration_height = 4; + */ + expirationHeight: number; + /** + * Index identifying the htlc on the channel. + * + * @generated from protobuf field: uint64 htlc_index = 5; + */ + htlcIndex: bigint; + /** + * 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. + * + * @generated from protobuf field: uint64 forwarding_channel = 6; + */ + forwardingChannel: bigint; + /** + * Index identifying the htlc on the forwarding channel. + * + * @generated from protobuf field: uint64 forwarding_htlc_index = 7; + */ + forwardingHtlcIndex: bigint; +} +/** + * @generated from protobuf message lnrpc.ChannelConstraints + */ +export interface ChannelConstraints { + /** + * + * 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. + * + * @generated from protobuf field: uint32 csv_delay = 1; + */ + csvDelay: number; + /** + * The minimum satoshis this node is required to reserve in its balance. + * + * @generated from protobuf field: uint64 chan_reserve_sat = 2; + */ + chanReserveSat: bigint; + /** + * The dust limit (in satoshis) of the initiator's commitment tx. + * + * @generated from protobuf field: uint64 dust_limit_sat = 3; + */ + dustLimitSat: bigint; + /** + * The maximum amount of coins in millisatoshis that can be pending in this + * channel. + * + * @generated from protobuf field: uint64 max_pending_amt_msat = 4; + */ + maxPendingAmtMsat: bigint; + /** + * The smallest HTLC in millisatoshis that the initiator will accept. + * + * @generated from protobuf field: uint64 min_htlc_msat = 5; + */ + minHtlcMsat: bigint; + /** + * The total number of incoming HTLC's that the initiator will accept. + * + * @generated from protobuf field: uint32 max_accepted_htlcs = 6; + */ + maxAcceptedHtlcs: number; +} +/** + * @generated from protobuf message lnrpc.Channel + */ +export interface Channel { + /** + * Whether this channel is active or not + * + * @generated from protobuf field: bool active = 1; + */ + active: boolean; + /** + * The identity pubkey of the remote node + * + * @generated from protobuf field: string remote_pubkey = 2; + */ + remotePubkey: string; + /** + * + * 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. + * + * @generated from protobuf field: string channel_point = 3; + */ + channelPoint: string; + /** + * + * 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. + * + * @generated from protobuf field: uint64 chan_id = 4 [jstype = JS_STRING]; + */ + chanId: string; + /** + * The total amount of funds held in this channel + * + * @generated from protobuf field: int64 capacity = 5; + */ + capacity: bigint; + /** + * This node's current balance in this channel + * + * @generated from protobuf field: int64 local_balance = 6; + */ + localBalance: bigint; + /** + * The counterparty's current balance in this channel + * + * @generated from protobuf field: int64 remote_balance = 7; + */ + remoteBalance: bigint; + /** + * + * 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. + * + * @generated from protobuf field: int64 commit_fee = 8; + */ + commitFee: bigint; + /** + * The weight of the commitment transaction + * + * @generated from protobuf field: int64 commit_weight = 9; + */ + commitWeight: bigint; + /** + * + * 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. + * + * @generated from protobuf field: int64 fee_per_kw = 10; + */ + feePerKw: bigint; + /** + * The unsettled balance in this channel + * + * @generated from protobuf field: int64 unsettled_balance = 11; + */ + unsettledBalance: bigint; + /** + * + * The total number of satoshis we've sent within this channel. + * + * @generated from protobuf field: int64 total_satoshis_sent = 12; + */ + totalSatoshisSent: bigint; + /** + * + * The total number of satoshis we've received within this channel. + * + * @generated from protobuf field: int64 total_satoshis_received = 13; + */ + totalSatoshisReceived: bigint; + /** + * + * The total number of updates conducted within this channel. + * + * @generated from protobuf field: uint64 num_updates = 14; + */ + numUpdates: bigint; + /** + * + * The list of active, uncleared HTLCs currently pending within the channel. + * + * @generated from protobuf field: repeated lnrpc.HTLC pending_htlcs = 15; + */ + pendingHtlcs: HTLC[]; + /** + * + * 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 + * @generated from protobuf field: uint32 csv_delay = 16 [deprecated = true]; + */ + csvDelay: number; + /** + * Whether this channel is advertised to the network or not. + * + * @generated from protobuf field: bool private = 17; + */ + private: boolean; + /** + * True if we were the ones that created the channel. + * + * @generated from protobuf field: bool initiator = 18; + */ + initiator: boolean; + /** + * A set of flags showing the current state of the channel. + * + * @generated from protobuf field: string chan_status_flags = 19; + */ + chanStatusFlags: string; + /** + * Deprecated. The minimum satoshis this node is required to reserve in its + * balance. + * + * @deprecated + * @generated from protobuf field: int64 local_chan_reserve_sat = 20 [deprecated = true]; + */ + localChanReserveSat: bigint; + /** + * + * Deprecated. The minimum satoshis the other node is required to reserve in + * its balance. + * + * @deprecated + * @generated from protobuf field: int64 remote_chan_reserve_sat = 21 [deprecated = true]; + */ + remoteChanReserveSat: bigint; + /** + * Deprecated. Use commitment_type. + * + * @deprecated + * @generated from protobuf field: bool static_remote_key = 22 [deprecated = true]; + */ + staticRemoteKey: boolean; + /** + * The commitment type used by this channel. + * + * @generated from protobuf field: lnrpc.CommitmentType commitment_type = 26; + */ + commitmentType: CommitmentType; + /** + * + * 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]. + * + * @generated from protobuf field: int64 lifetime = 23; + */ + lifetime: bigint; + /** + * + * 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]. + * + * @generated from protobuf field: int64 uptime = 24; + */ + uptime: bigint; + /** + * + * 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. + * + * @generated from protobuf field: string close_address = 25; + */ + closeAddress: string; + /** + * + * 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. + * + * @generated from protobuf field: uint64 push_amount_sat = 27; + */ + pushAmountSat: bigint; + /** + * + * 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. + * + * @generated from protobuf field: uint32 thaw_height = 28; + */ + thawHeight: number; + /** + * List constraints for the local node. + * + * @generated from protobuf field: lnrpc.ChannelConstraints local_constraints = 29; + */ + localConstraints?: ChannelConstraints; + /** + * List constraints for the remote node. + * + * @generated from protobuf field: lnrpc.ChannelConstraints remote_constraints = 30; + */ + remoteConstraints?: ChannelConstraints; + /** + * + * This lists out the set of alias short channel ids that exist for a channel. + * This may be empty. + * + * @generated from protobuf field: repeated uint64 alias_scids = 31; + */ + aliasScids: bigint[]; + /** + * Whether or not this is a zero-conf channel. + * + * @generated from protobuf field: bool zero_conf = 32; + */ + zeroConf: boolean; + /** + * This is the confirmed / on-chain zero-conf SCID. + * + * @generated from protobuf field: uint64 zero_conf_confirmed_scid = 33; + */ + zeroConfConfirmedScid: bigint; + /** + * The configured alias name of our peer. + * + * @generated from protobuf field: string peer_alias = 34; + */ + peerAlias: string; + /** + * This is the peer SCID alias. + * + * @generated from protobuf field: uint64 peer_scid_alias = 35 [jstype = JS_STRING]; + */ + peerScidAlias: string; + /** + * + * An optional note-to-self to go along with the channel containing some + * useful information. This is only ever stored locally and in no way impacts + * the channel's operation. + * + * @generated from protobuf field: string memo = 36; + */ + memo: string; +} +/** + * @generated from protobuf message lnrpc.ListChannelsRequest + */ +export interface ListChannelsRequest { + /** + * @generated from protobuf field: bool active_only = 1; + */ + activeOnly: boolean; + /** + * @generated from protobuf field: bool inactive_only = 2; + */ + inactiveOnly: boolean; + /** + * @generated from protobuf field: bool public_only = 3; + */ + publicOnly: boolean; + /** + * @generated from protobuf field: bool private_only = 4; + */ + privateOnly: boolean; + /** + * + * Filters the response for channels with a target peer's pubkey. If peer is + * empty, all channels will be returned. + * + * @generated from protobuf field: bytes peer = 5; + */ + peer: Uint8Array; + /** + * Informs the server if the peer alias lookup per channel should be + * enabled. It is turned off by default in order to avoid degradation of + * performance for existing clients. + * + * @generated from protobuf field: bool peer_alias_lookup = 6; + */ + peerAliasLookup: boolean; +} +/** + * @generated from protobuf message lnrpc.ListChannelsResponse + */ +export interface ListChannelsResponse { + /** + * The list of active channels + * + * @generated from protobuf field: repeated lnrpc.Channel channels = 11; + */ + channels: Channel[]; +} +/** + * @generated from protobuf message lnrpc.AliasMap + */ +export interface AliasMap { + /** + * + * For non-zero-conf channels, this is the confirmed SCID. Otherwise, this is + * the first assigned "base" alias. + * + * @generated from protobuf field: uint64 base_scid = 1; + */ + baseScid: bigint; + /** + * The set of all aliases stored for the base SCID. + * + * @generated from protobuf field: repeated uint64 aliases = 2; + */ + aliases: bigint[]; +} +/** + * @generated from protobuf message lnrpc.ListAliasesRequest + */ +export interface ListAliasesRequest { +} +/** + * @generated from protobuf message lnrpc.ListAliasesResponse + */ +export interface ListAliasesResponse { + /** + * @generated from protobuf field: repeated lnrpc.AliasMap alias_maps = 1; + */ + aliasMaps: AliasMap[]; +} +/** + * @generated from protobuf message lnrpc.ChannelCloseSummary + */ +export interface ChannelCloseSummary { + /** + * The outpoint (txid:index) of the funding transaction. + * + * @generated from protobuf field: string channel_point = 1; + */ + channelPoint: string; + /** + * The unique channel ID for the channel. + * + * @generated from protobuf field: uint64 chan_id = 2 [jstype = JS_STRING]; + */ + chanId: string; + /** + * The hash of the genesis block that this channel resides within. + * + * @generated from protobuf field: string chain_hash = 3; + */ + chainHash: string; + /** + * The txid of the transaction which ultimately closed this channel. + * + * @generated from protobuf field: string closing_tx_hash = 4; + */ + closingTxHash: string; + /** + * Public key of the remote peer that we formerly had a channel with. + * + * @generated from protobuf field: string remote_pubkey = 5; + */ + remotePubkey: string; + /** + * Total capacity of the channel. + * + * @generated from protobuf field: int64 capacity = 6; + */ + capacity: bigint; + /** + * Height at which the funding transaction was spent. + * + * @generated from protobuf field: uint32 close_height = 7; + */ + closeHeight: number; + /** + * Settled balance at the time of channel closure + * + * @generated from protobuf field: int64 settled_balance = 8; + */ + settledBalance: bigint; + /** + * The sum of all the time-locked outputs at the time of channel closure + * + * @generated from protobuf field: int64 time_locked_balance = 9; + */ + timeLockedBalance: bigint; + /** + * Details on how the channel was closed. + * + * @generated from protobuf field: lnrpc.ChannelCloseSummary.ClosureType close_type = 10; + */ + closeType: ChannelCloseSummary_ClosureType; + /** + * + * 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. + * + * @generated from protobuf field: lnrpc.Initiator open_initiator = 11; + */ + openInitiator: Initiator; + /** + * + * 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. + * + * @generated from protobuf field: lnrpc.Initiator close_initiator = 12; + */ + closeInitiator: Initiator; + /** + * @generated from protobuf field: repeated lnrpc.Resolution resolutions = 13; + */ + resolutions: Resolution[]; + /** + * + * This lists out the set of alias short channel ids that existed for the + * closed channel. This may be empty. + * + * @generated from protobuf field: repeated uint64 alias_scids = 14; + */ + aliasScids: bigint[]; + /** + * The confirmed SCID for a zero-conf channel. + * + * @generated from protobuf field: uint64 zero_conf_confirmed_scid = 15 [jstype = JS_STRING]; + */ + zeroConfConfirmedScid: string; +} +/** + * @generated from protobuf enum lnrpc.ChannelCloseSummary.ClosureType + */ +export enum ChannelCloseSummary_ClosureType { + /** + * @generated from protobuf enum value: COOPERATIVE_CLOSE = 0; + */ + COOPERATIVE_CLOSE = 0, + /** + * @generated from protobuf enum value: LOCAL_FORCE_CLOSE = 1; + */ + LOCAL_FORCE_CLOSE = 1, + /** + * @generated from protobuf enum value: REMOTE_FORCE_CLOSE = 2; + */ + REMOTE_FORCE_CLOSE = 2, + /** + * @generated from protobuf enum value: BREACH_CLOSE = 3; + */ + BREACH_CLOSE = 3, + /** + * @generated from protobuf enum value: FUNDING_CANCELED = 4; + */ + FUNDING_CANCELED = 4, + /** + * @generated from protobuf enum value: ABANDONED = 5; + */ + ABANDONED = 5 +} +/** + * @generated from protobuf message lnrpc.Resolution + */ +export interface Resolution { + /** + * The type of output we are resolving. + * + * @generated from protobuf field: lnrpc.ResolutionType resolution_type = 1; + */ + resolutionType: ResolutionType; + /** + * The outcome of our on chain action that resolved the outpoint. + * + * @generated from protobuf field: lnrpc.ResolutionOutcome outcome = 2; + */ + outcome: ResolutionOutcome; + /** + * The outpoint that was spent by the resolution. + * + * @generated from protobuf field: lnrpc.OutPoint outpoint = 3; + */ + outpoint?: OutPoint; + /** + * The amount that was claimed by the resolution. + * + * @generated from protobuf field: uint64 amount_sat = 4; + */ + amountSat: bigint; + /** + * The hex-encoded transaction ID of the sweep transaction that spent the + * output. + * + * @generated from protobuf field: string sweep_txid = 5; + */ + sweepTxid: string; +} +/** + * @generated from protobuf message lnrpc.ClosedChannelsRequest + */ +export interface ClosedChannelsRequest { + /** + * @generated from protobuf field: bool cooperative = 1; + */ + cooperative: boolean; + /** + * @generated from protobuf field: bool local_force = 2; + */ + localForce: boolean; + /** + * @generated from protobuf field: bool remote_force = 3; + */ + remoteForce: boolean; + /** + * @generated from protobuf field: bool breach = 4; + */ + breach: boolean; + /** + * @generated from protobuf field: bool funding_canceled = 5; + */ + fundingCanceled: boolean; + /** + * @generated from protobuf field: bool abandoned = 6; + */ + abandoned: boolean; +} +/** + * @generated from protobuf message lnrpc.ClosedChannelsResponse + */ +export interface ClosedChannelsResponse { + /** + * @generated from protobuf field: repeated lnrpc.ChannelCloseSummary channels = 1; + */ + channels: ChannelCloseSummary[]; +} +/** + * @generated from protobuf message lnrpc.Peer + */ +export interface Peer { + /** + * The identity pubkey of the peer + * + * @generated from protobuf field: string pub_key = 1; + */ + pubKey: string; + /** + * Network address of the peer; eg `127.0.0.1:10011` + * + * @generated from protobuf field: string address = 3; + */ + address: string; + /** + * Bytes of data transmitted to this peer + * + * @generated from protobuf field: uint64 bytes_sent = 4; + */ + bytesSent: bigint; + /** + * Bytes of data transmitted from this peer + * + * @generated from protobuf field: uint64 bytes_recv = 5; + */ + bytesRecv: bigint; + /** + * Satoshis sent to this peer + * + * @generated from protobuf field: int64 sat_sent = 6; + */ + satSent: bigint; + /** + * Satoshis received from this peer + * + * @generated from protobuf field: int64 sat_recv = 7; + */ + satRecv: bigint; + /** + * A channel is inbound if the counterparty initiated the channel + * + * @generated from protobuf field: bool inbound = 8; + */ + inbound: boolean; + /** + * Ping time to this peer + * + * @generated from protobuf field: int64 ping_time = 9; + */ + pingTime: bigint; + /** + * The type of sync we are currently performing with this peer. + * + * @generated from protobuf field: lnrpc.Peer.SyncType sync_type = 10; + */ + syncType: Peer_SyncType; + /** + * Features advertised by the remote peer in their init message. + * + * @generated from protobuf field: map features = 11; + */ + features: { + [key: number]: Feature; + }; + /** + * + * 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. + * + * @generated from protobuf field: repeated lnrpc.TimestampedError errors = 12; + */ + errors: TimestampedError[]; + /** + * + * 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. + * + * @generated from protobuf field: int32 flap_count = 13; + */ + flapCount: number; + /** + * + * 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. + * + * @generated from protobuf field: int64 last_flap_ns = 14; + */ + lastFlapNs: bigint; + /** + * + * The last ping payload the peer has sent to us. + * + * @generated from protobuf field: bytes last_ping_payload = 15; + */ + lastPingPayload: Uint8Array; +} +/** + * @generated from protobuf enum lnrpc.Peer.SyncType + */ +export enum Peer_SyncType { + /** + * + * Denotes that we cannot determine the peer's current sync type. + * + * @generated from protobuf enum value: UNKNOWN_SYNC = 0; + */ + UNKNOWN_SYNC = 0, + /** + * + * Denotes that we are actively receiving new graph updates from the peer. + * + * @generated from protobuf enum value: ACTIVE_SYNC = 1; + */ + ACTIVE_SYNC = 1, + /** + * + * Denotes that we are not receiving new graph updates from the peer. + * + * @generated from protobuf enum value: PASSIVE_SYNC = 2; + */ + PASSIVE_SYNC = 2, + /** + * + * Denotes that this peer is pinned into an active sync. + * + * @generated from protobuf enum value: PINNED_SYNC = 3; + */ + PINNED_SYNC = 3 +} +/** + * @generated from protobuf message lnrpc.TimestampedError + */ +export interface TimestampedError { + /** + * The unix timestamp in seconds when the error occurred. + * + * @generated from protobuf field: uint64 timestamp = 1; + */ + timestamp: bigint; + /** + * The string representation of the error sent by our peer. + * + * @generated from protobuf field: string error = 2; + */ + error: string; +} +/** + * @generated from protobuf message lnrpc.ListPeersRequest + */ +export interface ListPeersRequest { + /** + * + * 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. + * + * @generated from protobuf field: bool latest_error = 1; + */ + latestError: boolean; +} +/** + * @generated from protobuf message lnrpc.ListPeersResponse + */ +export interface ListPeersResponse { + /** + * The list of currently connected peers + * + * @generated from protobuf field: repeated lnrpc.Peer peers = 1; + */ + peers: Peer[]; +} +/** + * @generated from protobuf message lnrpc.PeerEventSubscription + */ +export interface PeerEventSubscription { +} +/** + * @generated from protobuf message lnrpc.PeerEvent + */ +export interface PeerEvent { + /** + * The identity pubkey of the peer. + * + * @generated from protobuf field: string pub_key = 1; + */ + pubKey: string; + /** + * @generated from protobuf field: lnrpc.PeerEvent.EventType type = 2; + */ + type: PeerEvent_EventType; +} +/** + * @generated from protobuf enum lnrpc.PeerEvent.EventType + */ +export enum PeerEvent_EventType { + /** + * @generated from protobuf enum value: PEER_ONLINE = 0; + */ + PEER_ONLINE = 0, + /** + * @generated from protobuf enum value: PEER_OFFLINE = 1; + */ + PEER_OFFLINE = 1 +} +/** + * @generated from protobuf message lnrpc.GetInfoRequest + */ +export interface GetInfoRequest { +} +/** + * @generated from protobuf message lnrpc.GetInfoResponse + */ +export interface GetInfoResponse { + /** + * The version of the LND software that the node is running. + * + * @generated from protobuf field: string version = 14; + */ + version: string; + /** + * The SHA1 commit hash that the daemon is compiled with. + * + * @generated from protobuf field: string commit_hash = 20; + */ + commitHash: string; + /** + * The identity pubkey of the current node. + * + * @generated from protobuf field: string identity_pubkey = 1; + */ + identityPubkey: string; + /** + * If applicable, the alias of the current node, e.g. "bob" + * + * @generated from protobuf field: string alias = 2; + */ + alias: string; + /** + * The color of the current node in hex code format + * + * @generated from protobuf field: string color = 17; + */ + color: string; + /** + * Number of pending channels + * + * @generated from protobuf field: uint32 num_pending_channels = 3; + */ + numPendingChannels: number; + /** + * Number of active channels + * + * @generated from protobuf field: uint32 num_active_channels = 4; + */ + numActiveChannels: number; + /** + * Number of inactive channels + * + * @generated from protobuf field: uint32 num_inactive_channels = 15; + */ + numInactiveChannels: number; + /** + * Number of peers + * + * @generated from protobuf field: uint32 num_peers = 5; + */ + numPeers: number; + /** + * The node's current view of the height of the best block + * + * @generated from protobuf field: uint32 block_height = 6; + */ + blockHeight: number; + /** + * The node's current view of the hash of the best block + * + * @generated from protobuf field: string block_hash = 8; + */ + blockHash: string; + /** + * Timestamp of the block best known to the wallet + * + * @generated from protobuf field: int64 best_header_timestamp = 13; + */ + bestHeaderTimestamp: bigint; + /** + * Whether the wallet's view is synced to the main chain + * + * @generated from protobuf field: bool synced_to_chain = 9; + */ + syncedToChain: boolean; + /** + * Whether we consider ourselves synced with the public channel graph. + * + * @generated from protobuf field: bool synced_to_graph = 18; + */ + syncedToGraph: boolean; + /** + * + * Whether the current node is connected to testnet. This field is + * deprecated and the network field should be used instead + * + * @deprecated + * @generated from protobuf field: bool testnet = 10 [deprecated = true]; + */ + testnet: boolean; + /** + * + * A list of active chains the node is connected to. This will only + * ever contain a single entry since LND will only ever have a single + * chain backend during its lifetime. + * + * @generated from protobuf field: repeated lnrpc.Chain chains = 16; + */ + chains: Chain[]; + /** + * The URIs of the current node. + * + * @generated from protobuf field: repeated string uris = 12; + */ + uris: string[]; + /** + * + * Features that our node has advertised in our init message, node + * announcements and invoices. + * + * @generated from protobuf field: map features = 19; + */ + features: { + [key: number]: Feature; + }; + /** + * + * Indicates whether the HTLC interceptor API is in always-on mode. + * + * @generated from protobuf field: bool require_htlc_interceptor = 21; + */ + requireHtlcInterceptor: boolean; + /** + * Indicates whether final htlc resolutions are stored on disk. + * + * @generated from protobuf field: bool store_final_htlc_resolutions = 22; + */ + storeFinalHtlcResolutions: boolean; +} +/** + * @generated from protobuf message lnrpc.GetDebugInfoRequest + */ +export interface GetDebugInfoRequest { +} +/** + * @generated from protobuf message lnrpc.GetDebugInfoResponse + */ +export interface GetDebugInfoResponse { + /** + * @generated from protobuf field: map config = 1; + */ + config: { + [key: string]: string; + }; + /** + * @generated from protobuf field: repeated string log = 2; + */ + log: string[]; +} +/** + * @generated from protobuf message lnrpc.GetRecoveryInfoRequest + */ +export interface GetRecoveryInfoRequest { +} +/** + * @generated from protobuf message lnrpc.GetRecoveryInfoResponse + */ +export interface GetRecoveryInfoResponse { + /** + * Whether the wallet is in recovery mode + * + * @generated from protobuf field: bool recovery_mode = 1; + */ + recoveryMode: boolean; + /** + * Whether the wallet recovery progress is finished + * + * @generated from protobuf field: bool recovery_finished = 2; + */ + recoveryFinished: boolean; + /** + * The recovery progress, ranging from 0 to 1. + * + * @generated from protobuf field: double progress = 3; + */ + progress: number; +} +/** + * @generated from protobuf message lnrpc.Chain + */ +export interface Chain { + /** + * Deprecated. The chain is now always assumed to be bitcoin. + * The blockchain the node is on (must be bitcoin) + * + * @deprecated + * @generated from protobuf field: string chain = 1 [deprecated = true]; + */ + chain: string; + /** + * The network the node is on (eg regtest, testnet, mainnet) + * + * @generated from protobuf field: string network = 2; + */ + network: string; +} +/** + * @generated from protobuf message lnrpc.ConfirmationUpdate + */ +export interface ConfirmationUpdate { + /** + * @generated from protobuf field: bytes block_sha = 1; + */ + blockSha: Uint8Array; + /** + * @generated from protobuf field: int32 block_height = 2; + */ + blockHeight: number; + /** + * @generated from protobuf field: uint32 num_confs_left = 3; + */ + numConfsLeft: number; +} +/** + * @generated from protobuf message lnrpc.ChannelOpenUpdate + */ +export interface ChannelOpenUpdate { + /** + * @generated from protobuf field: lnrpc.ChannelPoint channel_point = 1; + */ + channelPoint?: ChannelPoint; +} +/** + * @generated from protobuf message lnrpc.ChannelCloseUpdate + */ +export interface ChannelCloseUpdate { + /** + * @generated from protobuf field: bytes closing_txid = 1; + */ + closingTxid: Uint8Array; + /** + * @generated from protobuf field: bool success = 2; + */ + success: boolean; +} +/** + * @generated from protobuf message lnrpc.CloseChannelRequest + */ +export interface CloseChannelRequest { + /** + * + * 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. + * + * @generated from protobuf field: lnrpc.ChannelPoint channel_point = 1; + */ + channelPoint?: ChannelPoint; + /** + * If true, then the channel will be closed forcibly. This means the + * current commitment transaction will be signed and broadcast. + * + * @generated from protobuf field: bool force = 2; + */ + force: boolean; + /** + * The target number of blocks that the closure transaction should be + * confirmed by. + * + * @generated from protobuf field: int32 target_conf = 3; + */ + targetConf: number; + /** + * Deprecated, use sat_per_vbyte. + * A manual fee rate set in sat/vbyte that should be used when crafting the + * closure transaction. + * + * @deprecated + * @generated from protobuf field: int64 sat_per_byte = 4 [deprecated = true]; + */ + satPerByte: bigint; + /** + * + * 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. + * + * @generated from protobuf field: string delivery_address = 5; + */ + deliveryAddress: string; + /** + * A manual fee rate set in sat/vbyte that should be used when crafting the + * closure transaction. + * + * @generated from protobuf field: uint64 sat_per_vbyte = 6; + */ + satPerVbyte: bigint; + /** + * The maximum fee rate the closer is willing to pay. + * + * NOTE: This field is only respected if we're the initiator of the channel. + * + * @generated from protobuf field: uint64 max_fee_per_vbyte = 7; + */ + maxFeePerVbyte: bigint; + /** + * If true, then the rpc call will not block while it awaits a closing txid. + * Consequently this RPC call will not return a closing txid if this value + * is set. + * + * @generated from protobuf field: bool no_wait = 8; + */ + noWait: boolean; +} +/** + * @generated from protobuf message lnrpc.CloseStatusUpdate + */ +export interface CloseStatusUpdate { + /** + * @generated from protobuf oneof: update + */ + update: { + oneofKind: "closePending"; + /** + * @generated from protobuf field: lnrpc.PendingUpdate close_pending = 1; + */ + closePending: PendingUpdate; + } | { + oneofKind: "chanClose"; + /** + * @generated from protobuf field: lnrpc.ChannelCloseUpdate chan_close = 3; + */ + chanClose: ChannelCloseUpdate; + } | { + oneofKind: "closeInstant"; + /** + * @generated from protobuf field: lnrpc.InstantUpdate close_instant = 4; + */ + closeInstant: InstantUpdate; + } | { + oneofKind: undefined; + }; +} +/** + * @generated from protobuf message lnrpc.PendingUpdate + */ +export interface PendingUpdate { + /** + * @generated from protobuf field: bytes txid = 1; + */ + txid: Uint8Array; + /** + * @generated from protobuf field: uint32 output_index = 2; + */ + outputIndex: number; +} +/** + * @generated from protobuf message lnrpc.InstantUpdate + */ +export interface InstantUpdate { +} +/** + * @generated from protobuf message lnrpc.ReadyForPsbtFunding + */ +export interface ReadyForPsbtFunding { + /** + * + * The P2WSH address of the channel funding multisig address that the below + * specified amount in satoshis needs to be sent to. + * + * @generated from protobuf field: string funding_address = 1; + */ + fundingAddress: string; + /** + * + * The exact amount in satoshis that needs to be sent to the above address to + * fund the pending channel. + * + * @generated from protobuf field: int64 funding_amount = 2; + */ + fundingAmount: bigint; + /** + * + * 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. + * + * @generated from protobuf field: bytes psbt = 3; + */ + psbt: Uint8Array; +} +/** + * @generated from protobuf message lnrpc.BatchOpenChannelRequest + */ +export interface BatchOpenChannelRequest { + /** + * The list of channels to open. + * + * @generated from protobuf field: repeated lnrpc.BatchOpenChannel channels = 1; + */ + channels: BatchOpenChannel[]; + /** + * The target number of blocks that the funding transaction should be + * confirmed by. + * + * @generated from protobuf field: int32 target_conf = 2; + */ + targetConf: number; + /** + * A manual fee rate set in sat/vByte that should be used when crafting the + * funding transaction. + * + * @generated from protobuf field: int64 sat_per_vbyte = 3; + */ + satPerVbyte: bigint; + /** + * The minimum number of confirmations each one of your outputs used for + * the funding transaction must satisfy. + * + * @generated from protobuf field: int32 min_confs = 4; + */ + minConfs: number; + /** + * Whether unconfirmed outputs should be used as inputs for the funding + * transaction. + * + * @generated from protobuf field: bool spend_unconfirmed = 5; + */ + spendUnconfirmed: boolean; + /** + * An optional label for the batch transaction, limited to 500 characters. + * + * @generated from protobuf field: string label = 6; + */ + label: string; + /** + * The strategy to use for selecting coins during batch opening channels. + * + * @generated from protobuf field: lnrpc.CoinSelectionStrategy coin_selection_strategy = 7; + */ + coinSelectionStrategy: CoinSelectionStrategy; +} +/** + * @generated from protobuf message lnrpc.BatchOpenChannel + */ +export interface BatchOpenChannel { + /** + * The pubkey of the node to open a channel with. When using REST, this + * field must be encoded as base64. + * + * @generated from protobuf field: bytes node_pubkey = 1; + */ + nodePubkey: Uint8Array; + /** + * The number of satoshis the wallet should commit to the channel. + * + * @generated from protobuf field: int64 local_funding_amount = 2; + */ + localFundingAmount: bigint; + /** + * The number of satoshis to push to the remote side as part of the initial + * commitment state. + * + * @generated from protobuf field: int64 push_sat = 3; + */ + pushSat: bigint; + /** + * Whether this channel should be private, not announced to the greater + * network. + * + * @generated from protobuf field: bool private = 4; + */ + private: boolean; + /** + * The minimum value in millisatoshi we will require for incoming HTLCs on + * the channel. + * + * @generated from protobuf field: int64 min_htlc_msat = 5; + */ + minHtlcMsat: bigint; + /** + * The delay we require on the remote's commitment transaction. If this is + * not set, it will be scaled automatically with the channel size. + * + * @generated from protobuf field: uint32 remote_csv_delay = 6; + */ + remoteCsvDelay: number; + /** + * + * 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. + * + * @generated from protobuf field: string close_address = 7; + */ + closeAddress: string; + /** + * + * An optional, unique identifier of 32 random bytes that will be used as the + * pending channel ID to identify the channel while it is in the pre-pending + * state. + * + * @generated from protobuf field: bytes pending_chan_id = 8; + */ + pendingChanId: Uint8Array; + /** + * + * The explicit commitment type to use. Note this field will only be used if + * the remote peer supports explicit channel negotiation. + * + * @generated from protobuf field: lnrpc.CommitmentType commitment_type = 9; + */ + commitmentType: CommitmentType; + /** + * + * The maximum amount of coins in millisatoshi that can be pending within + * the channel. It only applies to the remote party. + * + * @generated from protobuf field: uint64 remote_max_value_in_flight_msat = 10; + */ + remoteMaxValueInFlightMsat: bigint; + /** + * + * The maximum number of concurrent HTLCs we will allow the remote party to add + * to the commitment transaction. + * + * @generated from protobuf field: uint32 remote_max_htlcs = 11; + */ + remoteMaxHtlcs: number; + /** + * + * Max local csv is the maximum csv delay we will allow for our own commitment + * transaction. + * + * @generated from protobuf field: uint32 max_local_csv = 12; + */ + maxLocalCsv: number; + /** + * + * If this is true, then a zero-conf channel open will be attempted. + * + * @generated from protobuf field: bool zero_conf = 13; + */ + zeroConf: boolean; + /** + * + * If this is true, then an option-scid-alias channel-type open will be + * attempted. + * + * @generated from protobuf field: bool scid_alias = 14; + */ + scidAlias: boolean; + /** + * + * The base fee charged regardless of the number of milli-satoshis sent. + * + * @generated from protobuf field: uint64 base_fee = 15; + */ + baseFee: bigint; + /** + * + * The fee rate in ppm (parts per million) that will be charged in + * proportion of the value of each forwarded HTLC. + * + * @generated from protobuf field: uint64 fee_rate = 16; + */ + feeRate: bigint; + /** + * + * If use_base_fee is true the open channel announcement will update the + * channel base fee with the value specified in base_fee. In the case of + * a base_fee of 0 use_base_fee is needed downstream to distinguish whether + * to use the default base fee value specified in the config or 0. + * + * @generated from protobuf field: bool use_base_fee = 17; + */ + useBaseFee: boolean; + /** + * + * If use_fee_rate is true the open channel announcement will update the + * channel fee rate with the value specified in fee_rate. In the case of + * a fee_rate of 0 use_fee_rate is needed downstream to distinguish whether + * to use the default fee rate value specified in the config or 0. + * + * @generated from protobuf field: bool use_fee_rate = 18; + */ + useFeeRate: boolean; + /** + * + * The number of satoshis we require the remote peer to reserve. This value, + * if specified, must be above the dust limit and below 20% of the channel + * capacity. + * + * @generated from protobuf field: uint64 remote_chan_reserve_sat = 19; + */ + remoteChanReserveSat: bigint; + /** + * + * An optional note-to-self to go along with the channel containing some + * useful information. This is only ever stored locally and in no way impacts + * the channel's operation. + * + * @generated from protobuf field: string memo = 20; + */ + memo: string; +} +/** + * @generated from protobuf message lnrpc.BatchOpenChannelResponse + */ +export interface BatchOpenChannelResponse { + /** + * @generated from protobuf field: repeated lnrpc.PendingUpdate pending_channels = 1; + */ + pendingChannels: PendingUpdate[]; +} +/** + * @generated from protobuf message lnrpc.OpenChannelRequest + */ +export interface OpenChannelRequest { + /** + * A manual fee rate set in sat/vbyte that should be used when crafting the + * funding transaction. + * + * @generated from protobuf field: uint64 sat_per_vbyte = 1; + */ + satPerVbyte: bigint; + /** + * + * The pubkey of the node to open a channel with. When using REST, this field + * must be encoded as base64. + * + * @generated from protobuf field: bytes node_pubkey = 2; + */ + nodePubkey: Uint8Array; + /** + * + * 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 + * @generated from protobuf field: string node_pubkey_string = 3 [deprecated = true]; + */ + nodePubkeyString: string; + /** + * The number of satoshis the wallet should commit to the channel + * + * @generated from protobuf field: int64 local_funding_amount = 4; + */ + localFundingAmount: bigint; + /** + * The number of satoshis to push to the remote side as part of the initial + * commitment state + * + * @generated from protobuf field: int64 push_sat = 5; + */ + pushSat: bigint; + /** + * The target number of blocks that the funding transaction should be + * confirmed by. + * + * @generated from protobuf field: int32 target_conf = 6; + */ + targetConf: number; + /** + * Deprecated, use sat_per_vbyte. + * A manual fee rate set in sat/vbyte that should be used when crafting the + * funding transaction. + * + * @deprecated + * @generated from protobuf field: int64 sat_per_byte = 7 [deprecated = true]; + */ + satPerByte: bigint; + /** + * Whether this channel should be private, not announced to the greater + * network. + * + * @generated from protobuf field: bool private = 8; + */ + private: boolean; + /** + * The minimum value in millisatoshi we will require for incoming HTLCs on + * the channel. + * + * @generated from protobuf field: int64 min_htlc_msat = 9; + */ + minHtlcMsat: bigint; + /** + * The delay we require on the remote's commitment transaction. If this is + * not set, it will be scaled automatically with the channel size. + * + * @generated from protobuf field: uint32 remote_csv_delay = 10; + */ + remoteCsvDelay: number; + /** + * The minimum number of confirmations each one of your outputs used for + * the funding transaction must satisfy. + * + * @generated from protobuf field: int32 min_confs = 11; + */ + minConfs: number; + /** + * Whether unconfirmed outputs should be used as inputs for the funding + * transaction. + * + * @generated from protobuf field: bool spend_unconfirmed = 12; + */ + spendUnconfirmed: boolean; + /** + * + * 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. + * + * @generated from protobuf field: string close_address = 13; + */ + closeAddress: string; + /** + * + * 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). + * + * @generated from protobuf field: lnrpc.FundingShim funding_shim = 14; + */ + fundingShim?: FundingShim; + /** + * + * The maximum amount of coins in millisatoshi that can be pending within + * the channel. It only applies to the remote party. + * + * @generated from protobuf field: uint64 remote_max_value_in_flight_msat = 15; + */ + remoteMaxValueInFlightMsat: bigint; + /** + * + * The maximum number of concurrent HTLCs we will allow the remote party to add + * to the commitment transaction. + * + * @generated from protobuf field: uint32 remote_max_htlcs = 16; + */ + remoteMaxHtlcs: number; + /** + * + * Max local csv is the maximum csv delay we will allow for our own commitment + * transaction. + * + * @generated from protobuf field: uint32 max_local_csv = 17; + */ + maxLocalCsv: number; + /** + * + * The explicit commitment type to use. Note this field will only be used if + * the remote peer supports explicit channel negotiation. + * + * @generated from protobuf field: lnrpc.CommitmentType commitment_type = 18; + */ + commitmentType: CommitmentType; + /** + * + * If this is true, then a zero-conf channel open will be attempted. + * + * @generated from protobuf field: bool zero_conf = 19; + */ + zeroConf: boolean; + /** + * + * If this is true, then an option-scid-alias channel-type open will be + * attempted. + * + * @generated from protobuf field: bool scid_alias = 20; + */ + scidAlias: boolean; + /** + * + * The base fee charged regardless of the number of milli-satoshis sent. + * + * @generated from protobuf field: uint64 base_fee = 21; + */ + baseFee: bigint; + /** + * + * The fee rate in ppm (parts per million) that will be charged in + * proportion of the value of each forwarded HTLC. + * + * @generated from protobuf field: uint64 fee_rate = 22; + */ + feeRate: bigint; + /** + * + * If use_base_fee is true the open channel announcement will update the + * channel base fee with the value specified in base_fee. In the case of + * a base_fee of 0 use_base_fee is needed downstream to distinguish whether + * to use the default base fee value specified in the config or 0. + * + * @generated from protobuf field: bool use_base_fee = 23; + */ + useBaseFee: boolean; + /** + * + * If use_fee_rate is true the open channel announcement will update the + * channel fee rate with the value specified in fee_rate. In the case of + * a fee_rate of 0 use_fee_rate is needed downstream to distinguish whether + * to use the default fee rate value specified in the config or 0. + * + * @generated from protobuf field: bool use_fee_rate = 24; + */ + useFeeRate: boolean; + /** + * + * The number of satoshis we require the remote peer to reserve. This value, + * if specified, must be above the dust limit and below 20% of the channel + * capacity. + * + * @generated from protobuf field: uint64 remote_chan_reserve_sat = 25; + */ + remoteChanReserveSat: bigint; + /** + * + * If set, then lnd will attempt to commit all the coins under control of the + * internal wallet to open the channel, and the LocalFundingAmount field must + * be zero and is ignored. + * + * @generated from protobuf field: bool fund_max = 26; + */ + fundMax: boolean; + /** + * + * An optional note-to-self to go along with the channel containing some + * useful information. This is only ever stored locally and in no way impacts + * the channel's operation. + * + * @generated from protobuf field: string memo = 27; + */ + memo: string; + /** + * + * A list of selected outpoints that are allocated for channel funding. + * + * @generated from protobuf field: repeated lnrpc.OutPoint outpoints = 28; + */ + outpoints: OutPoint[]; +} +/** + * @generated from protobuf message lnrpc.OpenStatusUpdate + */ +export interface OpenStatusUpdate { + /** + * @generated from protobuf oneof: update + */ + update: { + oneofKind: "chanPending"; + /** + * + * Signals that the channel is now fully negotiated and the funding + * transaction published. + * + * @generated from protobuf field: lnrpc.PendingUpdate chan_pending = 1; + */ + chanPending: PendingUpdate; + } | { + oneofKind: "chanOpen"; + /** + * + * Signals that the channel's funding transaction has now reached the + * required number of confirmations on chain and can be used. + * + * @generated from protobuf field: lnrpc.ChannelOpenUpdate chan_open = 3; + */ + chanOpen: ChannelOpenUpdate; + } | { + oneofKind: "psbtFund"; + /** + * + * Signals that the funding process has been suspended and the construction + * of a PSBT that funds the channel PK script is now required. + * + * @generated from protobuf field: lnrpc.ReadyForPsbtFunding psbt_fund = 5; + */ + psbtFund: ReadyForPsbtFunding; + } | { + oneofKind: undefined; + }; + /** + * + * The pending channel ID of the created channel. This value may be used to + * further the funding flow manually via the FundingStateStep method. + * + * @generated from protobuf field: bytes pending_chan_id = 4; + */ + pendingChanId: Uint8Array; +} +/** + * @generated from protobuf message lnrpc.KeyLocator + */ +export interface KeyLocator { + /** + * The family of key being identified. + * + * @generated from protobuf field: int32 key_family = 1; + */ + keyFamily: number; + /** + * The precise index of the key being identified. + * + * @generated from protobuf field: int32 key_index = 2; + */ + keyIndex: number; +} +/** + * @generated from protobuf message lnrpc.KeyDescriptor + */ +export interface KeyDescriptor { + /** + * + * The raw bytes of the key being identified. + * + * @generated from protobuf field: bytes raw_key_bytes = 1; + */ + rawKeyBytes: Uint8Array; + /** + * + * The key locator that identifies which key to use for signing. + * + * @generated from protobuf field: lnrpc.KeyLocator key_loc = 2; + */ + keyLoc?: KeyLocator; +} +/** + * @generated from protobuf message lnrpc.ChanPointShim + */ +export interface ChanPointShim { + /** + * + * The size of the pre-crafted output to be used as the channel point for this + * channel funding. + * + * @generated from protobuf field: int64 amt = 1; + */ + amt: bigint; + /** + * The target channel point to refrence in created commitment transactions. + * + * @generated from protobuf field: lnrpc.ChannelPoint chan_point = 2; + */ + chanPoint?: ChannelPoint; + /** + * Our local key to use when creating the multi-sig output. + * + * @generated from protobuf field: lnrpc.KeyDescriptor local_key = 3; + */ + localKey?: KeyDescriptor; + /** + * The key of the remote party to use when creating the multi-sig output. + * + * @generated from protobuf field: bytes remote_key = 4; + */ + remoteKey: Uint8Array; + /** + * + * 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. + * + * @generated from protobuf field: bytes pending_chan_id = 5; + */ + pendingChanId: Uint8Array; + /** + * + * 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. + * + * @generated from protobuf field: uint32 thaw_height = 6; + */ + thawHeight: number; + /** + * + * Indicates that the funding output is using a MuSig2 multi-sig output. + * + * @generated from protobuf field: bool musig2 = 7; + */ + musig2: boolean; +} +/** + * @generated from protobuf message lnrpc.PsbtShim + */ +export interface PsbtShim { + /** + * + * 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. + * + * @generated from protobuf field: bytes pending_chan_id = 1; + */ + pendingChanId: Uint8Array; + /** + * + * An optional base PSBT the new channel output will be added to. If this is + * non-empty, it must be a binary serialized PSBT. + * + * @generated from protobuf field: bytes base_psbt = 2; + */ + basePsbt: Uint8Array; + /** + * + * 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. + * + * @generated from protobuf field: bool no_publish = 3; + */ + noPublish: boolean; +} +/** + * @generated from protobuf message lnrpc.FundingShim + */ +export interface FundingShim { + /** + * @generated from protobuf oneof: shim + */ + shim: { + oneofKind: "chanPointShim"; + /** + * + * A channel shim where the channel point was fully constructed outside + * of lnd's wallet and the transaction might already be published. + * + * @generated from protobuf field: lnrpc.ChanPointShim chan_point_shim = 1; + */ + chanPointShim: ChanPointShim; + } | { + oneofKind: "psbtShim"; + /** + * + * A channel shim that uses a PSBT to fund and sign the channel funding + * transaction. + * + * @generated from protobuf field: lnrpc.PsbtShim psbt_shim = 2; + */ + psbtShim: PsbtShim; + } | { + oneofKind: undefined; + }; +} +/** + * @generated from protobuf message lnrpc.FundingShimCancel + */ +export interface FundingShimCancel { + /** + * The pending channel ID of the channel to cancel the funding shim for. + * + * @generated from protobuf field: bytes pending_chan_id = 1; + */ + pendingChanId: Uint8Array; +} +/** + * @generated from protobuf message lnrpc.FundingPsbtVerify + */ +export interface FundingPsbtVerify { + /** + * + * 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. + * + * @generated from protobuf field: bytes funded_psbt = 1; + */ + fundedPsbt: Uint8Array; + /** + * The pending channel ID of the channel to get the PSBT for. + * + * @generated from protobuf field: bytes pending_chan_id = 2; + */ + pendingChanId: Uint8Array; + /** + * + * Can only be used if the no_publish flag was set to true in the OpenChannel + * call meaning that the caller is solely responsible for publishing the final + * funding transaction. If skip_finalize is set to true then lnd will not wait + * for a FundingPsbtFinalize state step and instead assumes that a transaction + * with the same TXID as the passed in PSBT will eventually confirm. + * IT IS ABSOLUTELY IMPERATIVE that the TXID of the transaction that is + * eventually published does have the _same TXID_ as the verified PSBT. That + * means no inputs or outputs can change, only signatures can be added. If the + * TXID changes between this call and the publish step then the channel will + * never be created and the funds will be in limbo. + * + * @generated from protobuf field: bool skip_finalize = 3; + */ + skipFinalize: boolean; +} +/** + * @generated from protobuf message lnrpc.FundingPsbtFinalize + */ +export interface FundingPsbtFinalize { + /** + * + * 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. + * + * @generated from protobuf field: bytes signed_psbt = 1; + */ + signedPsbt: Uint8Array; + /** + * The pending channel ID of the channel to get the PSBT for. + * + * @generated from protobuf field: bytes pending_chan_id = 2; + */ + pendingChanId: Uint8Array; + /** + * + * 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. + * + * @generated from protobuf field: bytes final_raw_tx = 3; + */ + finalRawTx: Uint8Array; +} +/** + * @generated from protobuf message lnrpc.FundingTransitionMsg + */ +export interface FundingTransitionMsg { + /** + * @generated from protobuf oneof: trigger + */ + trigger: { + oneofKind: "shimRegister"; + /** + * + * 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. + * + * @generated from protobuf field: lnrpc.FundingShim shim_register = 1; + */ + shimRegister: FundingShim; + } | { + oneofKind: "shimCancel"; + /** + * Used to cancel an existing registered funding shim. + * + * @generated from protobuf field: lnrpc.FundingShimCancel shim_cancel = 2; + */ + shimCancel: FundingShimCancel; + } | { + oneofKind: "psbtVerify"; + /** + * + * 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. + * + * @generated from protobuf field: lnrpc.FundingPsbtVerify psbt_verify = 3; + */ + psbtVerify: FundingPsbtVerify; + } | { + oneofKind: "psbtFinalize"; + /** + * + * 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. + * + * @generated from protobuf field: lnrpc.FundingPsbtFinalize psbt_finalize = 4; + */ + psbtFinalize: FundingPsbtFinalize; + } | { + oneofKind: undefined; + }; +} +/** + * @generated from protobuf message lnrpc.FundingStateStepResp + */ +export interface FundingStateStepResp { +} +/** + * @generated from protobuf message lnrpc.PendingHTLC + */ +export interface PendingHTLC { + /** + * The direction within the channel that the htlc was sent + * + * @generated from protobuf field: bool incoming = 1; + */ + incoming: boolean; + /** + * The total value of the htlc + * + * @generated from protobuf field: int64 amount = 2; + */ + amount: bigint; + /** + * The final output to be swept back to the user's wallet + * + * @generated from protobuf field: string outpoint = 3; + */ + outpoint: string; + /** + * The next block height at which we can spend the current stage + * + * @generated from protobuf field: uint32 maturity_height = 4; + */ + maturityHeight: number; + /** + * + * The number of blocks remaining until the current stage can be swept. + * Negative values indicate how many blocks have passed since becoming + * mature. + * + * @generated from protobuf field: int32 blocks_til_maturity = 5; + */ + blocksTilMaturity: number; + /** + * Indicates whether the htlc is in its first or second stage of recovery + * + * @generated from protobuf field: uint32 stage = 6; + */ + stage: number; +} +/** + * @generated from protobuf message lnrpc.PendingChannelsRequest + */ +export interface PendingChannelsRequest { + /** + * Indicates whether to include the raw transaction hex for + * waiting_close_channels. + * + * @generated from protobuf field: bool include_raw_tx = 1; + */ + includeRawTx: boolean; +} +/** + * @generated from protobuf message lnrpc.PendingChannelsResponse + */ +export interface PendingChannelsResponse { + /** + * The balance in satoshis encumbered in pending channels + * + * @generated from protobuf field: int64 total_limbo_balance = 1; + */ + totalLimboBalance: bigint; + /** + * Channels pending opening + * + * @generated from protobuf field: repeated lnrpc.PendingChannelsResponse.PendingOpenChannel pending_open_channels = 2; + */ + pendingOpenChannels: PendingChannelsResponse_PendingOpenChannel[]; + /** + * + * 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 + * @generated from protobuf field: repeated lnrpc.PendingChannelsResponse.ClosedChannel pending_closing_channels = 3 [deprecated = true]; + */ + pendingClosingChannels: PendingChannelsResponse_ClosedChannel[]; + /** + * Channels pending force closing + * + * @generated from protobuf field: repeated lnrpc.PendingChannelsResponse.ForceClosedChannel pending_force_closing_channels = 4; + */ + pendingForceClosingChannels: PendingChannelsResponse_ForceClosedChannel[]; + /** + * Channels waiting for closing tx to confirm + * + * @generated from protobuf field: repeated lnrpc.PendingChannelsResponse.WaitingCloseChannel waiting_close_channels = 5; + */ + waitingCloseChannels: PendingChannelsResponse_WaitingCloseChannel[]; +} +/** + * @generated from protobuf message lnrpc.PendingChannelsResponse.PendingChannel + */ +export interface PendingChannelsResponse_PendingChannel { + /** + * @generated from protobuf field: string remote_node_pub = 1; + */ + remoteNodePub: string; + /** + * @generated from protobuf field: string channel_point = 2; + */ + channelPoint: string; + /** + * @generated from protobuf field: int64 capacity = 3; + */ + capacity: bigint; + /** + * @generated from protobuf field: int64 local_balance = 4; + */ + localBalance: bigint; + /** + * @generated from protobuf field: int64 remote_balance = 5; + */ + remoteBalance: bigint; + /** + * The minimum satoshis this node is required to reserve in its + * balance. + * + * @generated from protobuf field: int64 local_chan_reserve_sat = 6; + */ + localChanReserveSat: bigint; + /** + * + * The minimum satoshis the other node is required to reserve in its + * balance. + * + * @generated from protobuf field: int64 remote_chan_reserve_sat = 7; + */ + remoteChanReserveSat: bigint; + /** + * The party that initiated opening the channel. + * + * @generated from protobuf field: lnrpc.Initiator initiator = 8; + */ + initiator: Initiator; + /** + * The commitment type used by this channel. + * + * @generated from protobuf field: lnrpc.CommitmentType commitment_type = 9; + */ + commitmentType: CommitmentType; + /** + * Total number of forwarding packages created in this channel. + * + * @generated from protobuf field: int64 num_forwarding_packages = 10; + */ + numForwardingPackages: bigint; + /** + * A set of flags showing the current state of the channel. + * + * @generated from protobuf field: string chan_status_flags = 11; + */ + chanStatusFlags: string; + /** + * Whether this channel is advertised to the network or not. + * + * @generated from protobuf field: bool private = 12; + */ + private: boolean; + /** + * + * An optional note-to-self to go along with the channel containing some + * useful information. This is only ever stored locally and in no way + * impacts the channel's operation. + * + * @generated from protobuf field: string memo = 13; + */ + memo: string; +} +/** + * @generated from protobuf message lnrpc.PendingChannelsResponse.PendingOpenChannel + */ +export interface PendingChannelsResponse_PendingOpenChannel { + /** + * The pending channel + * + * @generated from protobuf field: lnrpc.PendingChannelsResponse.PendingChannel channel = 1; + */ + channel?: PendingChannelsResponse_PendingChannel; + /** + * + * 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. + * + * @generated from protobuf field: int64 commit_fee = 4; + */ + commitFee: bigint; + /** + * The weight of the commitment transaction + * + * @generated from protobuf field: int64 commit_weight = 5; + */ + commitWeight: bigint; + /** + * + * 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. + * + * @generated from protobuf field: int64 fee_per_kw = 6; + */ + feePerKw: bigint; + /** + * The number of blocks until the funding transaction is considered + * expired. If this value gets close to zero, there is a risk that the + * channel funding will be canceled by the channel responder. The + * channel should be fee bumped using CPFP (see walletrpc.BumpFee) to + * ensure that the channel confirms in time. Otherwise a force-close + * will be necessary if the channel confirms after the funding + * transaction expires. A negative value means the channel responder has + * very likely canceled the funding and the channel will never become + * fully operational. + * + * @generated from protobuf field: int32 funding_expiry_blocks = 3; + */ + fundingExpiryBlocks: number; +} +/** + * @generated from protobuf message lnrpc.PendingChannelsResponse.WaitingCloseChannel + */ +export interface PendingChannelsResponse_WaitingCloseChannel { + /** + * The pending channel waiting for closing tx to confirm + * + * @generated from protobuf field: lnrpc.PendingChannelsResponse.PendingChannel channel = 1; + */ + channel?: PendingChannelsResponse_PendingChannel; + /** + * The balance in satoshis encumbered in this channel + * + * @generated from protobuf field: int64 limbo_balance = 2; + */ + limboBalance: bigint; + /** + * + * A list of valid commitment transactions. Any of these can confirm at + * this point. + * + * @generated from protobuf field: lnrpc.PendingChannelsResponse.Commitments commitments = 3; + */ + commitments?: PendingChannelsResponse_Commitments; + /** + * The transaction id of the closing transaction + * + * @generated from protobuf field: string closing_txid = 4; + */ + closingTxid: string; + /** + * The raw hex encoded bytes of the closing transaction. Included if + * include_raw_tx in the request is true. + * + * @generated from protobuf field: string closing_tx_hex = 5; + */ + closingTxHex: string; +} +/** + * @generated from protobuf message lnrpc.PendingChannelsResponse.Commitments + */ +export interface PendingChannelsResponse_Commitments { + /** + * Hash of the local version of the commitment tx. + * + * @generated from protobuf field: string local_txid = 1; + */ + localTxid: string; + /** + * Hash of the remote version of the commitment tx. + * + * @generated from protobuf field: string remote_txid = 2; + */ + remoteTxid: string; + /** + * Hash of the remote pending version of the commitment tx. + * + * @generated from protobuf field: string remote_pending_txid = 3; + */ + remotePendingTxid: string; + /** + * + * The amount in satoshis calculated to be paid in fees for the local + * commitment. + * + * @generated from protobuf field: uint64 local_commit_fee_sat = 4; + */ + localCommitFeeSat: bigint; + /** + * + * The amount in satoshis calculated to be paid in fees for the remote + * commitment. + * + * @generated from protobuf field: uint64 remote_commit_fee_sat = 5; + */ + remoteCommitFeeSat: bigint; + /** + * + * The amount in satoshis calculated to be paid in fees for the remote + * pending commitment. + * + * @generated from protobuf field: uint64 remote_pending_commit_fee_sat = 6; + */ + remotePendingCommitFeeSat: bigint; +} +/** + * @generated from protobuf message lnrpc.PendingChannelsResponse.ClosedChannel + */ +export interface PendingChannelsResponse_ClosedChannel { + /** + * The pending channel to be closed + * + * @generated from protobuf field: lnrpc.PendingChannelsResponse.PendingChannel channel = 1; + */ + channel?: PendingChannelsResponse_PendingChannel; + /** + * The transaction id of the closing transaction + * + * @generated from protobuf field: string closing_txid = 2; + */ + closingTxid: string; +} +/** + * @generated from protobuf message lnrpc.PendingChannelsResponse.ForceClosedChannel + */ +export interface PendingChannelsResponse_ForceClosedChannel { + /** + * The pending channel to be force closed + * + * @generated from protobuf field: lnrpc.PendingChannelsResponse.PendingChannel channel = 1; + */ + channel?: PendingChannelsResponse_PendingChannel; + /** + * The transaction id of the closing transaction + * + * @generated from protobuf field: string closing_txid = 2; + */ + closingTxid: string; + /** + * The balance in satoshis encumbered in this pending channel + * + * @generated from protobuf field: int64 limbo_balance = 3; + */ + limboBalance: bigint; + /** + * The height at which funds can be swept into the wallet + * + * @generated from protobuf field: uint32 maturity_height = 4; + */ + maturityHeight: number; + /** + * + * Remaining # of blocks until the commitment output can be swept. + * Negative values indicate how many blocks have passed since becoming + * mature. + * + * @generated from protobuf field: int32 blocks_til_maturity = 5; + */ + blocksTilMaturity: number; + /** + * The total value of funds successfully recovered from this channel + * + * @generated from protobuf field: int64 recovered_balance = 6; + */ + recoveredBalance: bigint; + /** + * @generated from protobuf field: repeated lnrpc.PendingHTLC pending_htlcs = 8; + */ + pendingHtlcs: PendingHTLC[]; + /** + * @generated from protobuf field: lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState anchor = 9; + */ + anchor: PendingChannelsResponse_ForceClosedChannel_AnchorState; +} +/** + * + * There are three resolution states for the anchor: + * limbo, lost and recovered. Derive the current state + * from the limbo and recovered balances. + * + * @generated from protobuf enum lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState + */ +export enum PendingChannelsResponse_ForceClosedChannel_AnchorState { + /** + * The recovered_balance is zero and limbo_balance is non-zero. + * + * @generated from protobuf enum value: LIMBO = 0; + */ + LIMBO = 0, + /** + * The recovered_balance is non-zero. + * + * @generated from protobuf enum value: RECOVERED = 1; + */ + RECOVERED = 1, + /** + * A state that is neither LIMBO nor RECOVERED. + * + * @generated from protobuf enum value: LOST = 2; + */ + LOST = 2 +} +/** + * @generated from protobuf message lnrpc.ChannelEventSubscription + */ +export interface ChannelEventSubscription { +} +/** + * @generated from protobuf message lnrpc.ChannelEventUpdate + */ +export interface ChannelEventUpdate { + /** + * @generated from protobuf oneof: channel + */ + channel: { + oneofKind: "openChannel"; + /** + * @generated from protobuf field: lnrpc.Channel open_channel = 1; + */ + openChannel: Channel; + } | { + oneofKind: "closedChannel"; + /** + * @generated from protobuf field: lnrpc.ChannelCloseSummary closed_channel = 2; + */ + closedChannel: ChannelCloseSummary; + } | { + oneofKind: "activeChannel"; + /** + * @generated from protobuf field: lnrpc.ChannelPoint active_channel = 3; + */ + activeChannel: ChannelPoint; + } | { + oneofKind: "inactiveChannel"; + /** + * @generated from protobuf field: lnrpc.ChannelPoint inactive_channel = 4; + */ + inactiveChannel: ChannelPoint; + } | { + oneofKind: "pendingOpenChannel"; + /** + * @generated from protobuf field: lnrpc.PendingUpdate pending_open_channel = 6; + */ + pendingOpenChannel: PendingUpdate; + } | { + oneofKind: "fullyResolvedChannel"; + /** + * @generated from protobuf field: lnrpc.ChannelPoint fully_resolved_channel = 7; + */ + fullyResolvedChannel: ChannelPoint; + } | { + oneofKind: undefined; + }; + /** + * @generated from protobuf field: lnrpc.ChannelEventUpdate.UpdateType type = 5; + */ + type: ChannelEventUpdate_UpdateType; +} +/** + * @generated from protobuf enum lnrpc.ChannelEventUpdate.UpdateType + */ +export enum ChannelEventUpdate_UpdateType { + /** + * @generated from protobuf enum value: OPEN_CHANNEL = 0; + */ + OPEN_CHANNEL = 0, + /** + * @generated from protobuf enum value: CLOSED_CHANNEL = 1; + */ + CLOSED_CHANNEL = 1, + /** + * @generated from protobuf enum value: ACTIVE_CHANNEL = 2; + */ + ACTIVE_CHANNEL = 2, + /** + * @generated from protobuf enum value: INACTIVE_CHANNEL = 3; + */ + INACTIVE_CHANNEL = 3, + /** + * @generated from protobuf enum value: PENDING_OPEN_CHANNEL = 4; + */ + PENDING_OPEN_CHANNEL = 4, + /** + * @generated from protobuf enum value: FULLY_RESOLVED_CHANNEL = 5; + */ + FULLY_RESOLVED_CHANNEL = 5 +} +/** + * @generated from protobuf message lnrpc.WalletAccountBalance + */ +export interface WalletAccountBalance { + /** + * The confirmed balance of the account (with >= 1 confirmations). + * + * @generated from protobuf field: int64 confirmed_balance = 1; + */ + confirmedBalance: bigint; + /** + * The unconfirmed balance of the account (with 0 confirmations). + * + * @generated from protobuf field: int64 unconfirmed_balance = 2; + */ + unconfirmedBalance: bigint; +} +/** + * @generated from protobuf message lnrpc.WalletBalanceRequest + */ +export interface WalletBalanceRequest { + /** + * The wallet account the balance is shown for. + * If this is not specified, the balance of the "default" account is shown. + * + * @generated from protobuf field: string account = 1; + */ + account: string; + /** + * The minimum number of confirmations each one of your outputs used for the + * funding transaction must satisfy. If this is not specified, the default + * value of 1 is used. + * + * @generated from protobuf field: int32 min_confs = 2; + */ + minConfs: number; +} +/** + * @generated from protobuf message lnrpc.WalletBalanceResponse + */ +export interface WalletBalanceResponse { + /** + * The balance of the wallet + * + * @generated from protobuf field: int64 total_balance = 1; + */ + totalBalance: bigint; + /** + * The confirmed balance of a wallet(with >= 1 confirmations) + * + * @generated from protobuf field: int64 confirmed_balance = 2; + */ + confirmedBalance: bigint; + /** + * The unconfirmed balance of a wallet(with 0 confirmations) + * + * @generated from protobuf field: int64 unconfirmed_balance = 3; + */ + unconfirmedBalance: bigint; + /** + * The total amount of wallet UTXOs held in outputs that are locked for + * other usage. + * + * @generated from protobuf field: int64 locked_balance = 5; + */ + lockedBalance: bigint; + /** + * The amount of reserve required. + * + * @generated from protobuf field: int64 reserved_balance_anchor_chan = 6; + */ + reservedBalanceAnchorChan: bigint; + /** + * A mapping of each wallet account's name to its balance. + * + * @generated from protobuf field: map account_balance = 4; + */ + accountBalance: { + [key: string]: WalletAccountBalance; + }; +} +/** + * @generated from protobuf message lnrpc.Amount + */ +export interface Amount { + /** + * Value denominated in satoshis. + * + * @generated from protobuf field: uint64 sat = 1; + */ + sat: bigint; + /** + * Value denominated in milli-satoshis. + * + * @generated from protobuf field: uint64 msat = 2; + */ + msat: bigint; +} +/** + * @generated from protobuf message lnrpc.ChannelBalanceRequest + */ +export interface ChannelBalanceRequest { +} +/** + * @generated from protobuf message lnrpc.ChannelBalanceResponse + */ +export interface ChannelBalanceResponse { + /** + * Deprecated. Sum of channels balances denominated in satoshis + * + * @deprecated + * @generated from protobuf field: int64 balance = 1 [deprecated = true]; + */ + balance: bigint; + /** + * Deprecated. Sum of channels pending balances denominated in satoshis + * + * @deprecated + * @generated from protobuf field: int64 pending_open_balance = 2 [deprecated = true]; + */ + pendingOpenBalance: bigint; + /** + * Sum of channels local balances. + * + * @generated from protobuf field: lnrpc.Amount local_balance = 3; + */ + localBalance?: Amount; + /** + * Sum of channels remote balances. + * + * @generated from protobuf field: lnrpc.Amount remote_balance = 4; + */ + remoteBalance?: Amount; + /** + * Sum of channels local unsettled balances. + * + * @generated from protobuf field: lnrpc.Amount unsettled_local_balance = 5; + */ + unsettledLocalBalance?: Amount; + /** + * Sum of channels remote unsettled balances. + * + * @generated from protobuf field: lnrpc.Amount unsettled_remote_balance = 6; + */ + unsettledRemoteBalance?: Amount; + /** + * Sum of channels pending local balances. + * + * @generated from protobuf field: lnrpc.Amount pending_open_local_balance = 7; + */ + pendingOpenLocalBalance?: Amount; + /** + * Sum of channels pending remote balances. + * + * @generated from protobuf field: lnrpc.Amount pending_open_remote_balance = 8; + */ + pendingOpenRemoteBalance?: Amount; +} +/** + * @generated from protobuf message lnrpc.QueryRoutesRequest + */ +export interface QueryRoutesRequest { + /** + * The 33-byte hex-encoded public key for the payment destination + * + * @generated from protobuf field: string pub_key = 1; + */ + pubKey: string; + /** + * + * The amount to send expressed in satoshis. + * + * The fields amt and amt_msat are mutually exclusive. + * + * @generated from protobuf field: int64 amt = 2; + */ + amt: bigint; + /** + * + * The amount to send expressed in millisatoshis. + * + * The fields amt and amt_msat are mutually exclusive. + * + * @generated from protobuf field: int64 amt_msat = 12; + */ + amtMsat: bigint; + /** + * + * 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. + * + * Note: must not be set if making a payment to a blinded path (delta is + * set by the aggregate parameters provided by blinded_payment_paths) + * + * @generated from protobuf field: int32 final_cltv_delta = 4; + */ + finalCltvDelta: number; + /** + * + * 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. If not specified, lnd will use a default value of 100% + * fees for small amounts (<=1k sat) or 5% fees for larger amounts. + * + * @generated from protobuf field: lnrpc.FeeLimit fee_limit = 5; + */ + feeLimit?: FeeLimit; + /** + * + * A list of nodes to ignore during path finding. When using REST, these fields + * must be encoded as base64. + * + * @generated from protobuf field: repeated bytes ignored_nodes = 6; + */ + ignoredNodes: Uint8Array[]; + /** + * + * Deprecated. A list of edges to ignore during path finding. + * + * @deprecated + * @generated from protobuf field: repeated lnrpc.EdgeLocator ignored_edges = 7 [deprecated = true]; + */ + ignoredEdges: EdgeLocator[]; + /** + * + * The source node where the request route should originated from. If empty, + * self is assumed. + * + * @generated from protobuf field: string source_pub_key = 8; + */ + sourcePubKey: string; + /** + * + * If set to true, edge probabilities from mission control will be used to get + * the optimal route. + * + * @generated from protobuf field: bool use_mission_control = 9; + */ + useMissionControl: boolean; + /** + * + * A list of directed node pairs that will be ignored during path finding. + * + * @generated from protobuf field: repeated lnrpc.NodePair ignored_pairs = 10; + */ + ignoredPairs: NodePair[]; + /** + * + * 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. + * + * @generated from protobuf field: uint32 cltv_limit = 11; + */ + cltvLimit: number; + /** + * + * 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. + * + * @generated from protobuf field: map dest_custom_records = 13; + */ + destCustomRecords: { + [key: string]: Uint8Array; + }; + /** + * + * The channel id of the channel that must be taken to the first hop. If zero, + * any channel may be used. + * + * @generated from protobuf field: uint64 outgoing_chan_id = 14 [jstype = JS_STRING]; + */ + outgoingChanId: string; + /** + * + * The pubkey of the last hop of the route. If empty, any hop may be used. + * + * @generated from protobuf field: bytes last_hop_pubkey = 15; + */ + lastHopPubkey: Uint8Array; + /** + * + * Optional route hints to reach the destination through private channels. + * + * @generated from protobuf field: repeated lnrpc.RouteHint route_hints = 16; + */ + routeHints: RouteHint[]; + /** + * + * An optional blinded path(s) to reach the destination. Note that the + * introduction node must be provided as the first hop in the route. + * + * @generated from protobuf field: repeated lnrpc.BlindedPaymentPath blinded_payment_paths = 19; + */ + blindedPaymentPaths: BlindedPaymentPath[]; + /** + * + * 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. + * + * Note: must not be set if making a payment to a blinded route (features + * are provided in blinded_payment_paths). + * + * @generated from protobuf field: repeated lnrpc.FeatureBit dest_features = 17; + */ + destFeatures: FeatureBit[]; + /** + * + * The time preference for this payment. Set to -1 to optimize for fees + * only, to 1 to optimize for reliability only or a value inbetween for a mix. + * + * @generated from protobuf field: double time_pref = 18; + */ + timePref: number; +} +/** + * @generated from protobuf message lnrpc.NodePair + */ +export interface NodePair { + /** + * + * The sending node of the pair. When using REST, this field must be encoded as + * base64. + * + * @generated from protobuf field: bytes from = 1; + */ + from: Uint8Array; + /** + * + * The receiving node of the pair. When using REST, this field must be encoded + * as base64. + * + * @generated from protobuf field: bytes to = 2; + */ + to: Uint8Array; +} +/** + * @generated from protobuf message lnrpc.EdgeLocator + */ +export interface EdgeLocator { + /** + * The short channel id of this edge. + * + * @generated from protobuf field: uint64 channel_id = 1 [jstype = JS_STRING]; + */ + channelId: string; + /** + * + * 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. + * + * @generated from protobuf field: bool direction_reverse = 2; + */ + directionReverse: boolean; +} +/** + * @generated from protobuf message lnrpc.QueryRoutesResponse + */ +export interface QueryRoutesResponse { + /** + * + * The route that results from the path finding operation. This is still a + * repeated field to retain backwards compatibility. + * + * @generated from protobuf field: repeated lnrpc.Route routes = 1; + */ + routes: Route[]; + /** + * + * The success probability of the returned route based on the current mission + * control state. [EXPERIMENTAL] + * + * @generated from protobuf field: double success_prob = 2; + */ + successProb: number; +} +/** + * @generated from protobuf message lnrpc.Hop + */ +export interface Hop { + /** + * + * 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. + * + * @generated from protobuf field: uint64 chan_id = 1 [jstype = JS_STRING]; + */ + chanId: string; + /** + * @deprecated + * @generated from protobuf field: int64 chan_capacity = 2 [deprecated = true]; + */ + chanCapacity: bigint; + /** + * @deprecated + * @generated from protobuf field: int64 amt_to_forward = 3 [deprecated = true]; + */ + amtToForward: bigint; + /** + * @deprecated + * @generated from protobuf field: int64 fee = 4 [deprecated = true]; + */ + fee: bigint; + /** + * @generated from protobuf field: uint32 expiry = 5; + */ + expiry: number; + /** + * @generated from protobuf field: int64 amt_to_forward_msat = 6; + */ + amtToForwardMsat: bigint; + /** + * @generated from protobuf field: int64 fee_msat = 7; + */ + feeMsat: bigint; + /** + * + * 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. + * + * @generated from protobuf field: string pub_key = 8; + */ + pubKey: string; + /** + * + * 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. + * + * @deprecated + * @generated from protobuf field: bool tlv_payload = 9 [deprecated = true]; + */ + tlvPayload: boolean; + /** + * + * 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. + * + * @generated from protobuf field: lnrpc.MPPRecord mpp_record = 10; + */ + mppRecord?: MPPRecord; + /** + * + * 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. + * + * @generated from protobuf field: lnrpc.AMPRecord amp_record = 12; + */ + ampRecord?: AMPRecord; + /** + * + * 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. + * + * @generated from protobuf field: map custom_records = 11; + */ + customRecords: { + [key: string]: Uint8Array; + }; + /** + * The payment metadata to send along with the payment to the payee. + * + * @generated from protobuf field: bytes metadata = 13; + */ + metadata: Uint8Array; + /** + * + * Blinding point is an optional blinding point included for introduction + * nodes in blinded paths. This field is mandatory for hops that represents + * the introduction point in a blinded path. + * + * @generated from protobuf field: bytes blinding_point = 14; + */ + blindingPoint: Uint8Array; + /** + * + * Encrypted data is a receiver-produced blob of data that provides hops + * in a blinded route with forwarding data. As this data is encrypted by + * the recipient, we will not be able to parse it - it is essentially an + * arbitrary blob of data from our node's perspective. This field is + * mandatory for all hops in a blinded path, including the introduction + * node. + * + * @generated from protobuf field: bytes encrypted_data = 15; + */ + encryptedData: Uint8Array; + /** + * + * The total amount that is sent to the recipient (possibly across multiple + * HTLCs), as specified by the sender when making a payment to a blinded path. + * This value is only set in the final hop payload of a blinded payment. This + * value is analogous to the MPPRecord that is used for regular (non-blinded) + * MPP payments. + * + * @generated from protobuf field: uint64 total_amt_msat = 16; + */ + totalAmtMsat: bigint; +} +/** + * @generated from protobuf message lnrpc.MPPRecord + */ +export interface MPPRecord { + /** + * + * 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. This is also called + * payment secret in specifications (e.g. BOLT 11). + * + * @generated from protobuf field: bytes payment_addr = 11; + */ + paymentAddr: Uint8Array; + /** + * + * 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. + * + * @generated from protobuf field: int64 total_amt_msat = 10; + */ + totalAmtMsat: bigint; +} +/** + * @generated from protobuf message lnrpc.AMPRecord + */ +export interface AMPRecord { + /** + * @generated from protobuf field: bytes root_share = 1; + */ + rootShare: Uint8Array; + /** + * @generated from protobuf field: bytes set_id = 2; + */ + setId: Uint8Array; + /** + * @generated from protobuf field: uint32 child_index = 3; + */ + childIndex: number; +} +/** + * + * 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. + * + * @generated from protobuf message lnrpc.Route + */ +export interface Route { + /** + * + * 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. + * + * @generated from protobuf field: uint32 total_time_lock = 1; + */ + totalTimeLock: number; + /** + * + * 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 + * @generated from protobuf field: int64 total_fees = 2 [deprecated = true]; + */ + totalFees: bigint; + /** + * + * 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 + * @generated from protobuf field: int64 total_amt = 3 [deprecated = true]; + */ + totalAmt: bigint; + /** + * + * Contains details concerning the specific forwarding details at each hop. + * + * @generated from protobuf field: repeated lnrpc.Hop hops = 4; + */ + hops: Hop[]; + /** + * + * The total fees in millisatoshis. + * + * @generated from protobuf field: int64 total_fees_msat = 5; + */ + totalFeesMsat: bigint; + /** + * + * The total amount in millisatoshis. + * + * @generated from protobuf field: int64 total_amt_msat = 6; + */ + totalAmtMsat: bigint; +} +/** + * @generated from protobuf message lnrpc.NodeInfoRequest + */ +export interface NodeInfoRequest { + /** + * The 33-byte hex-encoded compressed public of the target node + * + * @generated from protobuf field: string pub_key = 1; + */ + pubKey: string; + /** + * If true, will include all known channels associated with the node. + * + * @generated from protobuf field: bool include_channels = 2; + */ + includeChannels: boolean; +} +/** + * @generated from protobuf message lnrpc.NodeInfo + */ +export interface NodeInfo { + /** + * + * 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. + * + * @generated from protobuf field: lnrpc.LightningNode node = 1; + */ + node?: LightningNode; + /** + * The total number of channels for the node. + * + * @generated from protobuf field: uint32 num_channels = 2; + */ + numChannels: number; + /** + * The sum of all channels capacity for the node, denominated in satoshis. + * + * @generated from protobuf field: int64 total_capacity = 3; + */ + totalCapacity: bigint; + /** + * A list of all public channels for the node. + * + * @generated from protobuf field: repeated lnrpc.ChannelEdge channels = 4; + */ + channels: ChannelEdge[]; +} +/** + * + * 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. + * + * @generated from protobuf message lnrpc.LightningNode + */ +export interface LightningNode { + /** + * @generated from protobuf field: uint32 last_update = 1; + */ + lastUpdate: number; + /** + * @generated from protobuf field: string pub_key = 2; + */ + pubKey: string; + /** + * @generated from protobuf field: string alias = 3; + */ + alias: string; + /** + * @generated from protobuf field: repeated lnrpc.NodeAddress addresses = 4; + */ + addresses: NodeAddress[]; + /** + * @generated from protobuf field: string color = 5; + */ + color: string; + /** + * @generated from protobuf field: map features = 6; + */ + features: { + [key: number]: Feature; + }; + /** + * Custom node announcement tlv records. + * + * @generated from protobuf field: map custom_records = 7; + */ + customRecords: { + [key: string]: Uint8Array; + }; +} +/** + * @generated from protobuf message lnrpc.NodeAddress + */ +export interface NodeAddress { + /** + * @generated from protobuf field: string network = 1; + */ + network: string; + /** + * @generated from protobuf field: string addr = 2; + */ + addr: string; +} +/** + * @generated from protobuf message lnrpc.RoutingPolicy + */ +export interface RoutingPolicy { + /** + * @generated from protobuf field: uint32 time_lock_delta = 1; + */ + timeLockDelta: number; + /** + * @generated from protobuf field: int64 min_htlc = 2; + */ + minHtlc: bigint; + /** + * @generated from protobuf field: int64 fee_base_msat = 3; + */ + feeBaseMsat: bigint; + /** + * @generated from protobuf field: int64 fee_rate_milli_msat = 4; + */ + feeRateMilliMsat: bigint; + /** + * @generated from protobuf field: bool disabled = 5; + */ + disabled: boolean; + /** + * @generated from protobuf field: uint64 max_htlc_msat = 6; + */ + maxHtlcMsat: bigint; + /** + * @generated from protobuf field: uint32 last_update = 7; + */ + lastUpdate: number; + /** + * Custom channel update tlv records. + * + * @generated from protobuf field: map custom_records = 8; + */ + customRecords: { + [key: string]: Uint8Array; + }; + /** + * @generated from protobuf field: int32 inbound_fee_base_msat = 9; + */ + inboundFeeBaseMsat: number; + /** + * @generated from protobuf field: int32 inbound_fee_rate_milli_msat = 10; + */ + inboundFeeRateMilliMsat: number; +} +/** + * + * 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. + * + * @generated from protobuf message lnrpc.ChannelEdge + */ +export interface ChannelEdge { + /** + * + * 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. + * + * @generated from protobuf field: uint64 channel_id = 1 [jstype = JS_STRING]; + */ + channelId: string; + /** + * @generated from protobuf field: string chan_point = 2; + */ + chanPoint: string; + /** + * @deprecated + * @generated from protobuf field: uint32 last_update = 3 [deprecated = true]; + */ + lastUpdate: number; + /** + * @generated from protobuf field: string node1_pub = 4; + */ + node1Pub: string; + /** + * @generated from protobuf field: string node2_pub = 5; + */ + node2Pub: string; + /** + * @generated from protobuf field: int64 capacity = 6; + */ + capacity: bigint; + /** + * @generated from protobuf field: lnrpc.RoutingPolicy node1_policy = 7; + */ + node1Policy?: RoutingPolicy; + /** + * @generated from protobuf field: lnrpc.RoutingPolicy node2_policy = 8; + */ + node2Policy?: RoutingPolicy; + /** + * Custom channel announcement tlv records. + * + * @generated from protobuf field: map custom_records = 9; + */ + customRecords: { + [key: string]: Uint8Array; + }; +} +/** + * @generated from protobuf message lnrpc.ChannelGraphRequest + */ +export interface ChannelGraphRequest { + /** + * + * 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. + * + * @generated from protobuf field: bool include_unannounced = 1; + */ + includeUnannounced: boolean; +} +/** + * Returns a new instance of the directed channel graph. + * + * @generated from protobuf message lnrpc.ChannelGraph + */ +export interface ChannelGraph { + /** + * The list of `LightningNode`s in this channel graph + * + * @generated from protobuf field: repeated lnrpc.LightningNode nodes = 1; + */ + nodes: LightningNode[]; + /** + * The list of `ChannelEdge`s in this channel graph + * + * @generated from protobuf field: repeated lnrpc.ChannelEdge edges = 2; + */ + edges: ChannelEdge[]; +} +/** + * @generated from protobuf message lnrpc.NodeMetricsRequest + */ +export interface NodeMetricsRequest { + /** + * The requested node metrics. + * + * @generated from protobuf field: repeated lnrpc.NodeMetricType types = 1; + */ + types: NodeMetricType[]; +} +/** + * @generated from protobuf message lnrpc.NodeMetricsResponse + */ +export interface NodeMetricsResponse { + /** + * + * 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. + * + * @generated from protobuf field: map betweenness_centrality = 1; + */ + betweennessCentrality: { + [key: string]: FloatMetric; + }; +} +/** + * @generated from protobuf message lnrpc.FloatMetric + */ +export interface FloatMetric { + /** + * Arbitrary float value. + * + * @generated from protobuf field: double value = 1; + */ + value: number; + /** + * The value normalized to [0,1] or [-1,1]. + * + * @generated from protobuf field: double normalized_value = 2; + */ + normalizedValue: number; +} +/** + * @generated from protobuf message lnrpc.ChanInfoRequest + */ +export interface ChanInfoRequest { + /** + * + * 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. + * + * @generated from protobuf field: uint64 chan_id = 1 [jstype = JS_STRING]; + */ + chanId: string; + /** + * The channel point of the channel in format funding_txid:output_index. If + * chan_id is specified, this field is ignored. + * + * @generated from protobuf field: string chan_point = 2; + */ + chanPoint: string; +} +/** + * @generated from protobuf message lnrpc.NetworkInfoRequest + */ +export interface NetworkInfoRequest { +} +/** + * @generated from protobuf message lnrpc.NetworkInfo + */ +export interface NetworkInfo { + /** + * @generated from protobuf field: uint32 graph_diameter = 1; + */ + graphDiameter: number; + /** + * @generated from protobuf field: double avg_out_degree = 2; + */ + avgOutDegree: number; + /** + * @generated from protobuf field: uint32 max_out_degree = 3; + */ + maxOutDegree: number; + /** + * @generated from protobuf field: uint32 num_nodes = 4; + */ + numNodes: number; + /** + * @generated from protobuf field: uint32 num_channels = 5; + */ + numChannels: number; + /** + * @generated from protobuf field: int64 total_network_capacity = 6; + */ + totalNetworkCapacity: bigint; + /** + * @generated from protobuf field: double avg_channel_size = 7; + */ + avgChannelSize: number; + /** + * @generated from protobuf field: int64 min_channel_size = 8; + */ + minChannelSize: bigint; + /** + * @generated from protobuf field: int64 max_channel_size = 9; + */ + maxChannelSize: bigint; + /** + * @generated from protobuf field: int64 median_channel_size_sat = 10; + */ + medianChannelSizeSat: bigint; + /** + * The number of edges marked as zombies. + * + * @generated from protobuf field: uint64 num_zombie_chans = 11; + */ + numZombieChans: bigint; +} +/** + * @generated from protobuf message lnrpc.StopRequest + */ +export interface StopRequest { +} +/** + * @generated from protobuf message lnrpc.StopResponse + */ +export interface StopResponse { +} +/** + * @generated from protobuf message lnrpc.GraphTopologySubscription + */ +export interface GraphTopologySubscription { +} +/** + * @generated from protobuf message lnrpc.GraphTopologyUpdate + */ +export interface GraphTopologyUpdate { + /** + * @generated from protobuf field: repeated lnrpc.NodeUpdate node_updates = 1; + */ + nodeUpdates: NodeUpdate[]; + /** + * @generated from protobuf field: repeated lnrpc.ChannelEdgeUpdate channel_updates = 2; + */ + channelUpdates: ChannelEdgeUpdate[]; + /** + * @generated from protobuf field: repeated lnrpc.ClosedChannelUpdate closed_chans = 3; + */ + closedChans: ClosedChannelUpdate[]; +} +/** + * @generated from protobuf message lnrpc.NodeUpdate + */ +export interface NodeUpdate { + /** + * + * Deprecated, use node_addresses. + * + * @deprecated + * @generated from protobuf field: repeated string addresses = 1 [deprecated = true]; + */ + addresses: string[]; + /** + * @generated from protobuf field: string identity_key = 2; + */ + identityKey: string; + /** + * + * Deprecated, use features. + * + * @deprecated + * @generated from protobuf field: bytes global_features = 3 [deprecated = true]; + */ + globalFeatures: Uint8Array; + /** + * @generated from protobuf field: string alias = 4; + */ + alias: string; + /** + * @generated from protobuf field: string color = 5; + */ + color: string; + /** + * @generated from protobuf field: repeated lnrpc.NodeAddress node_addresses = 7; + */ + nodeAddresses: NodeAddress[]; + /** + * + * Features that the node has advertised in the init message, node + * announcements and invoices. + * + * @generated from protobuf field: map features = 6; + */ + features: { + [key: number]: Feature; + }; +} +/** + * @generated from protobuf message lnrpc.ChannelEdgeUpdate + */ +export interface ChannelEdgeUpdate { + /** + * + * 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. + * + * @generated from protobuf field: uint64 chan_id = 1 [jstype = JS_STRING]; + */ + chanId: string; + /** + * @generated from protobuf field: lnrpc.ChannelPoint chan_point = 2; + */ + chanPoint?: ChannelPoint; + /** + * @generated from protobuf field: int64 capacity = 3; + */ + capacity: bigint; + /** + * @generated from protobuf field: lnrpc.RoutingPolicy routing_policy = 4; + */ + routingPolicy?: RoutingPolicy; + /** + * @generated from protobuf field: string advertising_node = 5; + */ + advertisingNode: string; + /** + * @generated from protobuf field: string connecting_node = 6; + */ + connectingNode: string; +} +/** + * @generated from protobuf message lnrpc.ClosedChannelUpdate + */ +export interface ClosedChannelUpdate { + /** + * + * 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. + * + * @generated from protobuf field: uint64 chan_id = 1 [jstype = JS_STRING]; + */ + chanId: string; + /** + * @generated from protobuf field: int64 capacity = 2; + */ + capacity: bigint; + /** + * @generated from protobuf field: uint32 closed_height = 3; + */ + closedHeight: number; + /** + * @generated from protobuf field: lnrpc.ChannelPoint chan_point = 4; + */ + chanPoint?: ChannelPoint; +} +/** + * @generated from protobuf message lnrpc.HopHint + */ +export interface HopHint { + /** + * The public key of the node at the start of the channel. + * + * @generated from protobuf field: string node_id = 1; + */ + nodeId: string; + /** + * The unique identifier of the channel. + * + * @generated from protobuf field: uint64 chan_id = 2 [jstype = JS_STRING]; + */ + chanId: string; + /** + * The base fee of the channel denominated in millisatoshis. + * + * @generated from protobuf field: uint32 fee_base_msat = 3; + */ + feeBaseMsat: number; + /** + * + * The fee rate of the channel for sending one satoshi across it denominated in + * millionths of a satoshi. + * + * @generated from protobuf field: uint32 fee_proportional_millionths = 4; + */ + feeProportionalMillionths: number; + /** + * The time-lock delta of the channel. + * + * @generated from protobuf field: uint32 cltv_expiry_delta = 5; + */ + cltvExpiryDelta: number; +} +/** + * @generated from protobuf message lnrpc.SetID + */ +export interface SetID { + /** + * @generated from protobuf field: bytes set_id = 1; + */ + setId: Uint8Array; +} +/** + * @generated from protobuf message lnrpc.RouteHint + */ +export interface RouteHint { + /** + * + * A list of hop hints that when chained together can assist in reaching a + * specific destination. + * + * @generated from protobuf field: repeated lnrpc.HopHint hop_hints = 1; + */ + hopHints: HopHint[]; +} +/** + * @generated from protobuf message lnrpc.BlindedPaymentPath + */ +export interface BlindedPaymentPath { + /** + * The blinded path to send the payment to. + * + * @generated from protobuf field: lnrpc.BlindedPath blinded_path = 1; + */ + blindedPath?: BlindedPath; + /** + * The base fee for the blinded path provided, expressed in msat. + * + * @generated from protobuf field: uint64 base_fee_msat = 2; + */ + baseFeeMsat: bigint; + /** + * + * The proportional fee for the blinded path provided, expressed in parts + * per million. + * + * @generated from protobuf field: uint32 proportional_fee_rate = 3; + */ + proportionalFeeRate: number; + /** + * + * The total CLTV delta for the blinded path provided, including the + * final CLTV delta for the receiving node. + * + * @generated from protobuf field: uint32 total_cltv_delta = 4; + */ + totalCltvDelta: number; + /** + * + * The minimum hltc size that may be sent over the blinded path, expressed + * in msat. + * + * @generated from protobuf field: uint64 htlc_min_msat = 5; + */ + htlcMinMsat: bigint; + /** + * + * The maximum htlc size that may be sent over the blinded path, expressed + * in msat. + * + * @generated from protobuf field: uint64 htlc_max_msat = 6; + */ + htlcMaxMsat: bigint; + /** + * The feature bits for the route. + * + * @generated from protobuf field: repeated lnrpc.FeatureBit features = 7; + */ + features: FeatureBit[]; +} +/** + * @generated from protobuf message lnrpc.BlindedPath + */ +export interface BlindedPath { + /** + * The unblinded pubkey of the introduction node for the route. + * + * @generated from protobuf field: bytes introduction_node = 1; + */ + introductionNode: Uint8Array; + /** + * The ephemeral pubkey used by nodes in the blinded route. + * + * @generated from protobuf field: bytes blinding_point = 2; + */ + blindingPoint: Uint8Array; + /** + * + * A set of blinded node keys and data blobs for the blinded portion of the + * route. Note that the first hop is expected to be the introduction node, + * so the route is always expected to have at least one hop. + * + * @generated from protobuf field: repeated lnrpc.BlindedHop blinded_hops = 3; + */ + blindedHops: BlindedHop[]; +} +/** + * @generated from protobuf message lnrpc.BlindedHop + */ +export interface BlindedHop { + /** + * The blinded public key of the node. + * + * @generated from protobuf field: bytes blinded_node = 1; + */ + blindedNode: Uint8Array; + /** + * An encrypted blob of data provided to the blinded node. + * + * @generated from protobuf field: bytes encrypted_data = 2; + */ + encryptedData: Uint8Array; +} +/** + * @generated from protobuf message lnrpc.AMPInvoiceState + */ +export interface AMPInvoiceState { + /** + * The state the HTLCs associated with this setID are in. + * + * @generated from protobuf field: lnrpc.InvoiceHTLCState state = 1; + */ + state: InvoiceHTLCState; + /** + * The settle index of this HTLC set, if the invoice state is settled. + * + * @generated from protobuf field: uint64 settle_index = 2; + */ + settleIndex: bigint; + /** + * The time this HTLC set was settled expressed in unix epoch. + * + * @generated from protobuf field: int64 settle_time = 3; + */ + settleTime: bigint; + /** + * The total amount paid for the sub-invoice expressed in milli satoshis. + * + * @generated from protobuf field: int64 amt_paid_msat = 5; + */ + amtPaidMsat: bigint; +} +/** + * @generated from protobuf message lnrpc.Invoice + */ +export interface Invoice { + /** + * + * 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. + * + * @generated from protobuf field: string memo = 1; + */ + memo: string; + /** + * + * 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. + * + * @generated from protobuf field: bytes r_preimage = 3; + */ + rPreimage: Uint8Array; + /** + * + * The hash of the preimage. When using REST, this field must be encoded as + * base64. + * Note: Output only, don't specify for creating an invoice. + * + * @generated from protobuf field: bytes r_hash = 4; + */ + rHash: Uint8Array; + /** + * + * The value of this invoice in satoshis + * + * The fields value and value_msat are mutually exclusive. + * + * @generated from protobuf field: int64 value = 5; + */ + value: bigint; + /** + * + * The value of this invoice in millisatoshis + * + * The fields value and value_msat are mutually exclusive. + * + * @generated from protobuf field: int64 value_msat = 23; + */ + valueMsat: bigint; + /** + * + * Whether this invoice has been fulfilled. + * + * The field is deprecated. Use the state field instead (compare to SETTLED). + * + * @deprecated + * @generated from protobuf field: bool settled = 6 [deprecated = true]; + */ + settled: boolean; + /** + * + * When this invoice was created. + * Measured in seconds since the unix epoch. + * Note: Output only, don't specify for creating an invoice. + * + * @generated from protobuf field: int64 creation_date = 7; + */ + creationDate: bigint; + /** + * + * When this invoice was settled. + * Measured in seconds since the unix epoch. + * Note: Output only, don't specify for creating an invoice. + * + * @generated from protobuf field: int64 settle_date = 8; + */ + settleDate: bigint; + /** + * + * 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. + * Note: Output only, don't specify for creating an invoice. + * + * @generated from protobuf field: string payment_request = 9; + */ + paymentRequest: string; + /** + * + * 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. + * + * @generated from protobuf field: bytes description_hash = 10; + */ + descriptionHash: Uint8Array; + /** + * Payment request expiry time in seconds. Default is 86400 (24 hours). + * + * @generated from protobuf field: int64 expiry = 11; + */ + expiry: bigint; + /** + * Fallback on-chain address. + * + * @generated from protobuf field: string fallback_addr = 12; + */ + fallbackAddr: string; + /** + * Delta to use for the time-lock of the CLTV extended to the final hop. + * + * @generated from protobuf field: uint64 cltv_expiry = 13; + */ + cltvExpiry: bigint; + /** + * + * Route hints that can each be individually used to assist in reaching the + * invoice's destination. + * + * @generated from protobuf field: repeated lnrpc.RouteHint route_hints = 14; + */ + routeHints: RouteHint[]; + /** + * Whether this invoice should include routing hints for private channels. + * Note: When enabled, if value and value_msat are zero, a large number of + * hints with these channels can be included, which might not be desirable. + * + * @generated from protobuf field: bool private = 15; + */ + private: boolean; + /** + * + * 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. + * Note: Output only, don't specify for creating an invoice. + * + * @generated from protobuf field: uint64 add_index = 16; + */ + addIndex: bigint; + /** + * + * 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. + * Note: Output only, don't specify for creating an invoice. + * + * @generated from protobuf field: uint64 settle_index = 17; + */ + settleIndex: bigint; + /** + * Deprecated, use amt_paid_sat or amt_paid_msat. + * + * @deprecated + * @generated from protobuf field: int64 amt_paid = 18 [deprecated = true]; + */ + amtPaid: bigint; + /** + * + * The amount that was accepted for this invoice, in satoshis. This will ONLY + * be set if this invoice has been settled or accepted. 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. + * Note: Output only, don't specify for creating an invoice. + * + * @generated from protobuf field: int64 amt_paid_sat = 19; + */ + amtPaidSat: bigint; + /** + * + * The amount that was accepted for this invoice, in millisatoshis. This will + * ONLY be set if this invoice has been settled or accepted. 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. + * Note: Output only, don't specify for creating an invoice. + * + * @generated from protobuf field: int64 amt_paid_msat = 20; + */ + amtPaidMsat: bigint; + /** + * + * The state the invoice is in. + * Note: Output only, don't specify for creating an invoice. + * + * @generated from protobuf field: lnrpc.Invoice.InvoiceState state = 21; + */ + state: Invoice_InvoiceState; + /** + * + * List of HTLCs paying to this invoice [EXPERIMENTAL]. + * Note: Output only, don't specify for creating an invoice. + * + * @generated from protobuf field: repeated lnrpc.InvoiceHTLC htlcs = 22; + */ + htlcs: InvoiceHTLC[]; + /** + * + * List of features advertised on the invoice. + * Note: Output only, don't specify for creating an invoice. + * + * @generated from protobuf field: map features = 24; + */ + features: { + [key: number]: Feature; + }; + /** + * + * Indicates if this invoice was a spontaneous payment that arrived via keysend + * [EXPERIMENTAL]. + * Note: Output only, don't specify for creating an invoice. + * + * @generated from protobuf field: bool is_keysend = 25; + */ + isKeysend: boolean; + /** + * + * The payment address of this invoice. This is also called payment secret in + * specifications (e.g. BOLT 11). This value will be used in MPP payments, and + * also for newer invoices that always require the MPP payload for added + * end-to-end security. + * Note: Output only, don't specify for creating an invoice. + * + * @generated from protobuf field: bytes payment_addr = 26; + */ + paymentAddr: Uint8Array; + /** + * + * Signals whether or not this is an AMP invoice. + * + * @generated from protobuf field: bool is_amp = 27; + */ + isAmp: boolean; + /** + * + * [EXPERIMENTAL]: + * + * Maps a 32-byte hex-encoded set ID to the sub-invoice AMP state for the + * given set ID. This field is always populated for AMP invoices, and can be + * used along side LookupInvoice to obtain the HTLC information related to a + * given sub-invoice. + * Note: Output only, don't specify for creating an invoice. + * + * @generated from protobuf field: map amp_invoice_state = 28; + */ + ampInvoiceState: { + [key: string]: AMPInvoiceState; + }; + /** + * + * Signals that the invoice should include blinded paths to hide the true + * identity of the recipient. + * + * @generated from protobuf field: bool is_blinded = 29; + */ + isBlinded: boolean; + /** + * + * Config values to use when creating blinded paths for this invoice. These + * can be used to override the defaults config values provided in by the + * global config. This field is only used if is_blinded is true. + * + * @generated from protobuf field: lnrpc.BlindedPathConfig blinded_path_config = 30; + */ + blindedPathConfig?: BlindedPathConfig; +} +/** + * @generated from protobuf enum lnrpc.Invoice.InvoiceState + */ +export enum Invoice_InvoiceState { + /** + * @generated from protobuf enum value: OPEN = 0; + */ + OPEN = 0, + /** + * @generated from protobuf enum value: SETTLED = 1; + */ + SETTLED = 1, + /** + * @generated from protobuf enum value: CANCELED = 2; + */ + CANCELED = 2, + /** + * @generated from protobuf enum value: ACCEPTED = 3; + */ + ACCEPTED = 3 +} +/** + * @generated from protobuf message lnrpc.BlindedPathConfig + */ +export interface BlindedPathConfig { + /** + * + * The minimum number of real hops to include in a blinded path. This doesn't + * include our node, so if the minimum is 1, then the path will contain at + * minimum our node along with an introduction node hop. If it is zero then + * the shortest path will use our node as an introduction node. + * + * @generated from protobuf field: optional uint32 min_num_real_hops = 1; + */ + minNumRealHops?: number; + /** + * + * The number of hops to include in a blinded path. This doesn't include our + * node, so if it is 1, then the path will contain our node along with an + * introduction node or dummy node hop. If paths shorter than NumHops is + * found, then they will be padded using dummy hops. + * + * @generated from protobuf field: optional uint32 num_hops = 2; + */ + numHops?: number; + /** + * + * The maximum number of blinded paths to select and add to an invoice. + * + * @generated from protobuf field: optional uint32 max_num_paths = 3; + */ + maxNumPaths?: number; + /** + * + * A list of node IDs of nodes that should not be used in any of our generated + * blinded paths. + * + * @generated from protobuf field: repeated bytes node_omission_list = 4; + */ + nodeOmissionList: Uint8Array[]; +} +/** + * Details of an HTLC that paid to an invoice + * + * @generated from protobuf message lnrpc.InvoiceHTLC + */ +export interface InvoiceHTLC { + /** + * Short channel id over which the htlc was received. + * + * @generated from protobuf field: uint64 chan_id = 1 [jstype = JS_STRING]; + */ + chanId: string; + /** + * Index identifying the htlc on the channel. + * + * @generated from protobuf field: uint64 htlc_index = 2; + */ + htlcIndex: bigint; + /** + * The amount of the htlc in msat. + * + * @generated from protobuf field: uint64 amt_msat = 3; + */ + amtMsat: bigint; + /** + * Block height at which this htlc was accepted. + * + * @generated from protobuf field: int32 accept_height = 4; + */ + acceptHeight: number; + /** + * Time at which this htlc was accepted. + * + * @generated from protobuf field: int64 accept_time = 5; + */ + acceptTime: bigint; + /** + * Time at which this htlc was settled or canceled. + * + * @generated from protobuf field: int64 resolve_time = 6; + */ + resolveTime: bigint; + /** + * Block height at which this htlc expires. + * + * @generated from protobuf field: int32 expiry_height = 7; + */ + expiryHeight: number; + /** + * Current state the htlc is in. + * + * @generated from protobuf field: lnrpc.InvoiceHTLCState state = 8; + */ + state: InvoiceHTLCState; + /** + * Custom tlv records. + * + * @generated from protobuf field: map custom_records = 9; + */ + customRecords: { + [key: string]: Uint8Array; + }; + /** + * The total amount of the mpp payment in msat. + * + * @generated from protobuf field: uint64 mpp_total_amt_msat = 10; + */ + mppTotalAmtMsat: bigint; + /** + * Details relevant to AMP HTLCs, only populated if this is an AMP HTLC. + * + * @generated from protobuf field: lnrpc.AMP amp = 11; + */ + amp?: AMP; +} +/** + * Details specific to AMP HTLCs. + * + * @generated from protobuf message lnrpc.AMP + */ +export interface AMP { + /** + * An n-of-n secret share of the root seed from which child payment hashes + * and preimages are derived. + * + * @generated from protobuf field: bytes root_share = 1; + */ + rootShare: Uint8Array; + /** + * An identifier for the HTLC set that this HTLC belongs to. + * + * @generated from protobuf field: bytes set_id = 2; + */ + setId: Uint8Array; + /** + * A nonce used to randomize the child preimage and child hash from a given + * root_share. + * + * @generated from protobuf field: uint32 child_index = 3; + */ + childIndex: number; + /** + * The payment hash of the AMP HTLC. + * + * @generated from protobuf field: bytes hash = 4; + */ + hash: Uint8Array; + /** + * The preimage used to settle this AMP htlc. This field will only be + * populated if the invoice is in InvoiceState_ACCEPTED or + * InvoiceState_SETTLED. + * + * @generated from protobuf field: bytes preimage = 5; + */ + preimage: Uint8Array; +} +/** + * @generated from protobuf message lnrpc.AddInvoiceResponse + */ +export interface AddInvoiceResponse { + /** + * @generated from protobuf field: bytes r_hash = 1; + */ + rHash: Uint8Array; + /** + * + * 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. + * + * @generated from protobuf field: string payment_request = 2; + */ + paymentRequest: string; + /** + * + * 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. + * + * @generated from protobuf field: uint64 add_index = 16; + */ + addIndex: bigint; + /** + * + * The payment address of the generated invoice. This is also called + * payment secret in specifications (e.g. BOLT 11). This value should be used + * in all payments for this invoice as we require it for end to end security. + * + * @generated from protobuf field: bytes payment_addr = 17; + */ + paymentAddr: Uint8Array; +} +/** + * @generated from protobuf message lnrpc.PaymentHash + */ +export interface PaymentHash { + /** + * + * 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 + * @generated from protobuf field: string r_hash_str = 1 [deprecated = true]; + */ + rHashStr: string; + /** + * + * The payment hash of the invoice to be looked up. When using REST, this field + * must be encoded as base64. + * + * @generated from protobuf field: bytes r_hash = 2; + */ + rHash: Uint8Array; +} +/** + * @generated from protobuf message lnrpc.ListInvoiceRequest + */ +export interface ListInvoiceRequest { + /** + * + * If set, only invoices that are not settled and not canceled will be returned + * in the response. + * + * @generated from protobuf field: bool pending_only = 1; + */ + pendingOnly: boolean; + /** + * + * 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. + * + * @generated from protobuf field: uint64 index_offset = 4; + */ + indexOffset: bigint; + /** + * The max number of invoices to return in the response to this query. + * + * @generated from protobuf field: uint64 num_max_invoices = 5; + */ + numMaxInvoices: bigint; + /** + * + * If set, the invoices returned will result from seeking backwards from the + * specified index offset. This can be used to paginate backwards. + * + * @generated from protobuf field: bool reversed = 6; + */ + reversed: boolean; + /** + * If set, returns all invoices with a creation date greater than or equal + * to it. Measured in seconds since the unix epoch. + * + * @generated from protobuf field: uint64 creation_date_start = 7; + */ + creationDateStart: bigint; + /** + * If set, returns all invoices with a creation date less than or equal to + * it. Measured in seconds since the unix epoch. + * + * @generated from protobuf field: uint64 creation_date_end = 8; + */ + creationDateEnd: bigint; +} +/** + * @generated from protobuf message lnrpc.ListInvoiceResponse + */ +export interface ListInvoiceResponse { + /** + * + * A list of invoices from the time slice of the time series specified in the + * request. + * + * @generated from protobuf field: repeated lnrpc.Invoice invoices = 1; + */ + invoices: Invoice[]; + /** + * + * The index of the last item in the set of returned invoices. This can be used + * to seek further, pagination style. + * + * @generated from protobuf field: uint64 last_index_offset = 2; + */ + lastIndexOffset: bigint; + /** + * + * The index of the last item in the set of returned invoices. This can be used + * to seek backwards, pagination style. + * + * @generated from protobuf field: uint64 first_index_offset = 3; + */ + firstIndexOffset: bigint; +} +/** + * @generated from protobuf message lnrpc.InvoiceSubscription + */ +export interface InvoiceSubscription { + /** + * + * 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. + * + * @generated from protobuf field: uint64 add_index = 1; + */ + addIndex: bigint; + /** + * + * 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. + * + * @generated from protobuf field: uint64 settle_index = 2; + */ + settleIndex: bigint; +} +/** + * @generated from protobuf message lnrpc.Payment + */ +export interface Payment { + /** + * The payment hash + * + * @generated from protobuf field: string payment_hash = 1; + */ + paymentHash: string; + /** + * Deprecated, use value_sat or value_msat. + * + * @deprecated + * @generated from protobuf field: int64 value = 2 [deprecated = true]; + */ + value: bigint; + /** + * Deprecated, use creation_time_ns + * + * @deprecated + * @generated from protobuf field: int64 creation_date = 3 [deprecated = true]; + */ + creationDate: bigint; + /** + * Deprecated, use fee_sat or fee_msat. + * + * @deprecated + * @generated from protobuf field: int64 fee = 5 [deprecated = true]; + */ + fee: bigint; + /** + * The payment preimage + * + * @generated from protobuf field: string payment_preimage = 6; + */ + paymentPreimage: string; + /** + * The value of the payment in satoshis + * + * @generated from protobuf field: int64 value_sat = 7; + */ + valueSat: bigint; + /** + * The value of the payment in milli-satoshis + * + * @generated from protobuf field: int64 value_msat = 8; + */ + valueMsat: bigint; + /** + * The optional payment request being fulfilled. + * + * @generated from protobuf field: string payment_request = 9; + */ + paymentRequest: string; + /** + * The status of the payment. + * + * @generated from protobuf field: lnrpc.Payment.PaymentStatus status = 10; + */ + status: Payment_PaymentStatus; + /** + * The fee paid for this payment in satoshis + * + * @generated from protobuf field: int64 fee_sat = 11; + */ + feeSat: bigint; + /** + * The fee paid for this payment in milli-satoshis + * + * @generated from protobuf field: int64 fee_msat = 12; + */ + feeMsat: bigint; + /** + * The time in UNIX nanoseconds at which the payment was created. + * + * @generated from protobuf field: int64 creation_time_ns = 13; + */ + creationTimeNs: bigint; + /** + * The HTLCs made in attempt to settle the payment. + * + * @generated from protobuf field: repeated lnrpc.HTLCAttempt htlcs = 14; + */ + htlcs: HTLCAttempt[]; + /** + * + * 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. + * + * @generated from protobuf field: uint64 payment_index = 15; + */ + paymentIndex: bigint; + /** + * @generated from protobuf field: lnrpc.PaymentFailureReason failure_reason = 16; + */ + failureReason: PaymentFailureReason; +} +/** + * @generated from protobuf enum lnrpc.Payment.PaymentStatus + */ +export enum Payment_PaymentStatus { + /** + * Deprecated. This status will never be returned. + * + * @deprecated + * @generated from protobuf enum value: UNKNOWN = 0 [deprecated = true]; + */ + UNKNOWN = 0, + /** + * Payment has inflight HTLCs. + * + * @generated from protobuf enum value: IN_FLIGHT = 1; + */ + IN_FLIGHT = 1, + /** + * Payment is settled. + * + * @generated from protobuf enum value: SUCCEEDED = 2; + */ + SUCCEEDED = 2, + /** + * Payment is failed. + * + * @generated from protobuf enum value: FAILED = 3; + */ + FAILED = 3, + /** + * Payment is created and has not attempted any HTLCs. + * + * @generated from protobuf enum value: INITIATED = 4; + */ + INITIATED = 4 +} +/** + * @generated from protobuf message lnrpc.HTLCAttempt + */ +export interface HTLCAttempt { + /** + * The unique ID that is used for this attempt. + * + * @generated from protobuf field: uint64 attempt_id = 7; + */ + attemptId: bigint; + /** + * The status of the HTLC. + * + * @generated from protobuf field: lnrpc.HTLCAttempt.HTLCStatus status = 1; + */ + status: HTLCAttempt_HTLCStatus; + /** + * The route taken by this HTLC. + * + * @generated from protobuf field: lnrpc.Route route = 2; + */ + route?: Route; + /** + * The time in UNIX nanoseconds at which this HTLC was sent. + * + * @generated from protobuf field: int64 attempt_time_ns = 3; + */ + attemptTimeNs: bigint; + /** + * + * 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. + * + * @generated from protobuf field: int64 resolve_time_ns = 4; + */ + resolveTimeNs: bigint; + /** + * Detailed htlc failure info. + * + * @generated from protobuf field: lnrpc.Failure failure = 5; + */ + failure?: Failure; + /** + * The preimage that was used to settle the HTLC. + * + * @generated from protobuf field: bytes preimage = 6; + */ + preimage: Uint8Array; +} +/** + * @generated from protobuf enum lnrpc.HTLCAttempt.HTLCStatus + */ +export enum HTLCAttempt_HTLCStatus { + /** + * @generated from protobuf enum value: IN_FLIGHT = 0; + */ + IN_FLIGHT = 0, + /** + * @generated from protobuf enum value: SUCCEEDED = 1; + */ + SUCCEEDED = 1, + /** + * @generated from protobuf enum value: FAILED = 2; + */ + FAILED = 2 +} +/** + * @generated from protobuf message lnrpc.ListPaymentsRequest + */ +export interface ListPaymentsRequest { + /** + * + * 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. + * + * @generated from protobuf field: bool include_incomplete = 1; + */ + includeIncomplete: boolean; + /** + * + * 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. + * + * @generated from protobuf field: uint64 index_offset = 2; + */ + indexOffset: bigint; + /** + * The maximal number of payments returned in the response to this query. + * + * @generated from protobuf field: uint64 max_payments = 3; + */ + maxPayments: bigint; + /** + * + * 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). + * + * @generated from protobuf field: bool reversed = 4; + */ + reversed: boolean; + /** + * + * If set, all payments (complete and incomplete, independent of the + * max_payments parameter) will be counted. Note that setting this to true will + * increase the run time of the call significantly on systems that have a lot + * of payments, as all of them have to be iterated through to be counted. + * + * @generated from protobuf field: bool count_total_payments = 5; + */ + countTotalPayments: boolean; + /** + * If set, returns all payments with a creation date greater than or equal + * to it. Measured in seconds since the unix epoch. + * + * @generated from protobuf field: uint64 creation_date_start = 6; + */ + creationDateStart: bigint; + /** + * If set, returns all payments with a creation date less than or equal to + * it. Measured in seconds since the unix epoch. + * + * @generated from protobuf field: uint64 creation_date_end = 7; + */ + creationDateEnd: bigint; +} +/** + * @generated from protobuf message lnrpc.ListPaymentsResponse + */ +export interface ListPaymentsResponse { + /** + * The list of payments + * + * @generated from protobuf field: repeated lnrpc.Payment payments = 1; + */ + payments: Payment[]; + /** + * + * 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. + * + * @generated from protobuf field: uint64 first_index_offset = 2; + */ + firstIndexOffset: bigint; + /** + * + * 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. + * + * @generated from protobuf field: uint64 last_index_offset = 3; + */ + lastIndexOffset: bigint; + /** + * + * Will only be set if count_total_payments in the request was set. Represents + * the total number of payments (complete and incomplete, independent of the + * number of payments requested in the query) currently present in the payments + * database. + * + * @generated from protobuf field: uint64 total_num_payments = 4; + */ + totalNumPayments: bigint; +} +/** + * @generated from protobuf message lnrpc.DeletePaymentRequest + */ +export interface DeletePaymentRequest { + /** + * Payment hash to delete. + * + * @generated from protobuf field: bytes payment_hash = 1; + */ + paymentHash: Uint8Array; + /** + * + * Only delete failed HTLCs from the payment, not the payment itself. + * + * @generated from protobuf field: bool failed_htlcs_only = 2; + */ + failedHtlcsOnly: boolean; +} +/** + * @generated from protobuf message lnrpc.DeleteAllPaymentsRequest + */ +export interface DeleteAllPaymentsRequest { + /** + * Only delete failed payments. + * + * @generated from protobuf field: bool failed_payments_only = 1; + */ + failedPaymentsOnly: boolean; + /** + * + * Only delete failed HTLCs from payments, not the payment itself. + * + * @generated from protobuf field: bool failed_htlcs_only = 2; + */ + failedHtlcsOnly: boolean; + /** + * Delete all payments. NOTE: Using this option requires careful + * consideration as it is a destructive operation. + * + * @generated from protobuf field: bool all_payments = 3; + */ + allPayments: boolean; +} +/** + * @generated from protobuf message lnrpc.DeletePaymentResponse + */ +export interface DeletePaymentResponse { +} +/** + * @generated from protobuf message lnrpc.DeleteAllPaymentsResponse + */ +export interface DeleteAllPaymentsResponse { +} +/** + * @generated from protobuf message lnrpc.AbandonChannelRequest + */ +export interface AbandonChannelRequest { + /** + * @generated from protobuf field: lnrpc.ChannelPoint channel_point = 1; + */ + channelPoint?: ChannelPoint; + /** + * @generated from protobuf field: bool pending_funding_shim_only = 2; + */ + pendingFundingShimOnly: boolean; + /** + * + * 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. + * + * @generated from protobuf field: bool i_know_what_i_am_doing = 3; + */ + iKnowWhatIAmDoing: boolean; +} +/** + * @generated from protobuf message lnrpc.AbandonChannelResponse + */ +export interface AbandonChannelResponse { +} +/** + * @generated from protobuf message lnrpc.DebugLevelRequest + */ +export interface DebugLevelRequest { + /** + * @generated from protobuf field: bool show = 1; + */ + show: boolean; + /** + * @generated from protobuf field: string level_spec = 2; + */ + levelSpec: string; +} +/** + * @generated from protobuf message lnrpc.DebugLevelResponse + */ +export interface DebugLevelResponse { + /** + * @generated from protobuf field: string sub_systems = 1; + */ + subSystems: string; +} +/** + * @generated from protobuf message lnrpc.PayReqString + */ +export interface PayReqString { + /** + * The payment request string to be decoded + * + * @generated from protobuf field: string pay_req = 1; + */ + payReq: string; +} +/** + * @generated from protobuf message lnrpc.PayReq + */ +export interface PayReq { + /** + * @generated from protobuf field: string destination = 1; + */ + destination: string; + /** + * @generated from protobuf field: string payment_hash = 2; + */ + paymentHash: string; + /** + * @generated from protobuf field: int64 num_satoshis = 3; + */ + numSatoshis: bigint; + /** + * @generated from protobuf field: int64 timestamp = 4; + */ + timestamp: bigint; + /** + * @generated from protobuf field: int64 expiry = 5; + */ + expiry: bigint; + /** + * @generated from protobuf field: string description = 6; + */ + description: string; + /** + * @generated from protobuf field: string description_hash = 7; + */ + descriptionHash: string; + /** + * @generated from protobuf field: string fallback_addr = 8; + */ + fallbackAddr: string; + /** + * @generated from protobuf field: int64 cltv_expiry = 9; + */ + cltvExpiry: bigint; + /** + * @generated from protobuf field: repeated lnrpc.RouteHint route_hints = 10; + */ + routeHints: RouteHint[]; + /** + * @generated from protobuf field: bytes payment_addr = 11; + */ + paymentAddr: Uint8Array; + /** + * @generated from protobuf field: int64 num_msat = 12; + */ + numMsat: bigint; + /** + * @generated from protobuf field: map features = 13; + */ + features: { + [key: number]: Feature; + }; + /** + * @generated from protobuf field: repeated lnrpc.BlindedPaymentPath blinded_paths = 14; + */ + blindedPaths: BlindedPaymentPath[]; +} +/** + * @generated from protobuf message lnrpc.Feature + */ +export interface Feature { + /** + * @generated from protobuf field: string name = 2; + */ + name: string; + /** + * @generated from protobuf field: bool is_required = 3; + */ + isRequired: boolean; + /** + * @generated from protobuf field: bool is_known = 4; + */ + isKnown: boolean; +} +/** + * @generated from protobuf message lnrpc.FeeReportRequest + */ +export interface FeeReportRequest { +} +/** + * @generated from protobuf message lnrpc.ChannelFeeReport + */ +export interface ChannelFeeReport { + /** + * The short channel id that this fee report belongs to. + * + * @generated from protobuf field: uint64 chan_id = 5 [jstype = JS_STRING]; + */ + chanId: string; + /** + * The channel that this fee report belongs to. + * + * @generated from protobuf field: string channel_point = 1; + */ + channelPoint: string; + /** + * The base fee charged regardless of the number of milli-satoshis sent. + * + * @generated from protobuf field: int64 base_fee_msat = 2; + */ + baseFeeMsat: bigint; + /** + * The amount charged per milli-satoshis transferred expressed in + * millionths of a satoshi. + * + * @generated from protobuf field: int64 fee_per_mil = 3; + */ + feePerMil: bigint; + /** + * The effective fee rate in milli-satoshis. Computed by dividing the + * fee_per_mil value by 1 million. + * + * @generated from protobuf field: double fee_rate = 4; + */ + feeRate: number; + /** + * The base fee charged regardless of the number of milli-satoshis sent. + * + * @generated from protobuf field: int32 inbound_base_fee_msat = 6; + */ + inboundBaseFeeMsat: number; + /** + * The amount charged per milli-satoshis transferred expressed in + * millionths of a satoshi. + * + * @generated from protobuf field: int32 inbound_fee_per_mil = 7; + */ + inboundFeePerMil: number; +} +/** + * @generated from protobuf message lnrpc.FeeReportResponse + */ +export interface FeeReportResponse { + /** + * An array of channel fee reports which describes the current fee schedule + * for each channel. + * + * @generated from protobuf field: repeated lnrpc.ChannelFeeReport channel_fees = 1; + */ + channelFees: ChannelFeeReport[]; + /** + * The total amount of fee revenue (in satoshis) the switch has collected + * over the past 24 hrs. + * + * @generated from protobuf field: uint64 day_fee_sum = 2; + */ + dayFeeSum: bigint; + /** + * The total amount of fee revenue (in satoshis) the switch has collected + * over the past 1 week. + * + * @generated from protobuf field: uint64 week_fee_sum = 3; + */ + weekFeeSum: bigint; + /** + * The total amount of fee revenue (in satoshis) the switch has collected + * over the past 1 month. + * + * @generated from protobuf field: uint64 month_fee_sum = 4; + */ + monthFeeSum: bigint; +} +/** + * @generated from protobuf message lnrpc.InboundFee + */ +export interface InboundFee { + /** + * The inbound base fee charged regardless of the number of milli-satoshis + * received in the channel. By default, only negative values are accepted. + * + * @generated from protobuf field: int32 base_fee_msat = 1; + */ + baseFeeMsat: number; + /** + * The effective inbound fee rate in micro-satoshis (parts per million). + * By default, only negative values are accepted. + * + * @generated from protobuf field: int32 fee_rate_ppm = 2; + */ + feeRatePpm: number; +} +/** + * @generated from protobuf message lnrpc.PolicyUpdateRequest + */ +export interface PolicyUpdateRequest { + /** + * @generated from protobuf oneof: scope + */ + scope: { + oneofKind: "global"; + /** + * If set, then this update applies to all currently active channels. + * + * @generated from protobuf field: bool global = 1; + */ + global: boolean; + } | { + oneofKind: "chanPoint"; + /** + * If set, this update will target a specific channel. + * + * @generated from protobuf field: lnrpc.ChannelPoint chan_point = 2; + */ + chanPoint: ChannelPoint; + } | { + oneofKind: undefined; + }; + /** + * The base fee charged regardless of the number of milli-satoshis sent. + * + * @generated from protobuf field: int64 base_fee_msat = 3; + */ + baseFeeMsat: bigint; + /** + * The effective fee rate in milli-satoshis. The precision of this value + * goes up to 6 decimal places, so 1e-6. + * + * @generated from protobuf field: double fee_rate = 4; + */ + feeRate: number; + /** + * The effective fee rate in micro-satoshis (parts per million). + * + * @generated from protobuf field: uint32 fee_rate_ppm = 9; + */ + feeRatePpm: number; + /** + * The required timelock delta for HTLCs forwarded over the channel. + * + * @generated from protobuf field: uint32 time_lock_delta = 5; + */ + timeLockDelta: number; + /** + * If set, the maximum HTLC size in milli-satoshis. If unset, the maximum + * HTLC will be unchanged. + * + * @generated from protobuf field: uint64 max_htlc_msat = 6; + */ + maxHtlcMsat: bigint; + /** + * The minimum HTLC size in milli-satoshis. Only applied if + * min_htlc_msat_specified is true. + * + * @generated from protobuf field: uint64 min_htlc_msat = 7; + */ + minHtlcMsat: bigint; + /** + * If true, min_htlc_msat is applied. + * + * @generated from protobuf field: bool min_htlc_msat_specified = 8; + */ + minHtlcMsatSpecified: boolean; + /** + * Optional inbound fee. If unset, the previously set value will be + * retained [EXPERIMENTAL]. + * + * @generated from protobuf field: lnrpc.InboundFee inbound_fee = 10; + */ + inboundFee?: InboundFee; +} +/** + * @generated from protobuf message lnrpc.FailedUpdate + */ +export interface FailedUpdate { + /** + * The outpoint in format txid:n + * + * @generated from protobuf field: lnrpc.OutPoint outpoint = 1; + */ + outpoint?: OutPoint; + /** + * Reason for the policy update failure. + * + * @generated from protobuf field: lnrpc.UpdateFailure reason = 2; + */ + reason: UpdateFailure; + /** + * A string representation of the policy update error. + * + * @generated from protobuf field: string update_error = 3; + */ + updateError: string; +} +/** + * @generated from protobuf message lnrpc.PolicyUpdateResponse + */ +export interface PolicyUpdateResponse { + /** + * List of failed policy updates. + * + * @generated from protobuf field: repeated lnrpc.FailedUpdate failed_updates = 1; + */ + failedUpdates: FailedUpdate[]; +} +/** + * @generated from protobuf message lnrpc.ForwardingHistoryRequest + */ +export interface ForwardingHistoryRequest { + /** + * 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. + * + * @generated from protobuf field: uint64 start_time = 1; + */ + startTime: bigint; + /** + * 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. + * + * @generated from protobuf field: uint64 end_time = 2; + */ + endTime: bigint; + /** + * 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. + * + * @generated from protobuf field: uint32 index_offset = 3; + */ + indexOffset: number; + /** + * The max number of events to return in the response to this query. + * + * @generated from protobuf field: uint32 num_max_events = 4; + */ + numMaxEvents: number; + /** + * Informs the server if the peer alias should be looked up for each + * forwarding event. + * + * @generated from protobuf field: bool peer_alias_lookup = 5; + */ + peerAliasLookup: boolean; +} +/** + * @generated from protobuf message lnrpc.ForwardingEvent + */ +export interface ForwardingEvent { + /** + * Timestamp is the time (unix epoch offset) that this circuit was + * completed. Deprecated by timestamp_ns. + * + * @deprecated + * @generated from protobuf field: uint64 timestamp = 1 [deprecated = true]; + */ + timestamp: bigint; + /** + * The incoming channel ID that carried the HTLC that created the circuit. + * + * @generated from protobuf field: uint64 chan_id_in = 2 [jstype = JS_STRING]; + */ + chanIdIn: string; + /** + * The outgoing channel ID that carried the preimage that completed the + * circuit. + * + * @generated from protobuf field: uint64 chan_id_out = 4 [jstype = JS_STRING]; + */ + chanIdOut: string; + /** + * The total amount (in satoshis) of the incoming HTLC that created half + * the circuit. + * + * @generated from protobuf field: uint64 amt_in = 5; + */ + amtIn: bigint; + /** + * The total amount (in satoshis) of the outgoing HTLC that created the + * second half of the circuit. + * + * @generated from protobuf field: uint64 amt_out = 6; + */ + amtOut: bigint; + /** + * The total fee (in satoshis) that this payment circuit carried. + * + * @generated from protobuf field: uint64 fee = 7; + */ + fee: bigint; + /** + * The total fee (in milli-satoshis) that this payment circuit carried. + * + * @generated from protobuf field: uint64 fee_msat = 8; + */ + feeMsat: bigint; + /** + * The total amount (in milli-satoshis) of the incoming HTLC that created + * half the circuit. + * + * @generated from protobuf field: uint64 amt_in_msat = 9; + */ + amtInMsat: bigint; + /** + * The total amount (in milli-satoshis) of the outgoing HTLC that created + * the second half of the circuit. + * + * @generated from protobuf field: uint64 amt_out_msat = 10; + */ + amtOutMsat: bigint; + /** + * The number of nanoseconds elapsed since January 1, 1970 UTC when this + * circuit was completed. + * + * @generated from protobuf field: uint64 timestamp_ns = 11; + */ + timestampNs: bigint; + /** + * The peer alias of the incoming channel. + * + * @generated from protobuf field: string peer_alias_in = 12; + */ + peerAliasIn: string; + /** + * The peer alias of the outgoing channel. + * + * @generated from protobuf field: string peer_alias_out = 13; + */ + peerAliasOut: string; +} +/** + * @generated from protobuf message lnrpc.ForwardingHistoryResponse + */ +export interface ForwardingHistoryResponse { + /** + * A list of forwarding events from the time slice of the time series + * specified in the request. + * + * @generated from protobuf field: repeated lnrpc.ForwardingEvent forwarding_events = 1; + */ + forwardingEvents: ForwardingEvent[]; + /** + * The index of the last time in the set of returned forwarding events. Can + * be used to seek further, pagination style. + * + * @generated from protobuf field: uint32 last_offset_index = 2; + */ + lastOffsetIndex: number; +} +/** + * @generated from protobuf message lnrpc.ExportChannelBackupRequest + */ +export interface ExportChannelBackupRequest { + /** + * The target channel point to obtain a back up for. + * + * @generated from protobuf field: lnrpc.ChannelPoint chan_point = 1; + */ + chanPoint?: ChannelPoint; +} +/** + * @generated from protobuf message lnrpc.ChannelBackup + */ +export interface ChannelBackup { + /** + * + * Identifies the channel that this backup belongs to. + * + * @generated from protobuf field: lnrpc.ChannelPoint chan_point = 1; + */ + chanPoint?: ChannelPoint; + /** + * + * 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. + * + * @generated from protobuf field: bytes chan_backup = 2; + */ + chanBackup: Uint8Array; +} +/** + * @generated from protobuf message lnrpc.MultiChanBackup + */ +export interface MultiChanBackup { + /** + * + * Is the set of all channels that are included in this multi-channel backup. + * + * @generated from protobuf field: repeated lnrpc.ChannelPoint chan_points = 1; + */ + chanPoints: ChannelPoint[]; + /** + * + * 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. + * + * @generated from protobuf field: bytes multi_chan_backup = 2; + */ + multiChanBackup: Uint8Array; +} +/** + * @generated from protobuf message lnrpc.ChanBackupExportRequest + */ +export interface ChanBackupExportRequest { +} +/** + * @generated from protobuf message lnrpc.ChanBackupSnapshot + */ +export interface ChanBackupSnapshot { + /** + * + * The set of new channels that have been added since the last channel backup + * snapshot was requested. + * + * @generated from protobuf field: lnrpc.ChannelBackups single_chan_backups = 1; + */ + singleChanBackups?: ChannelBackups; + /** + * + * A multi-channel backup that covers all open channels currently known to + * lnd. + * + * @generated from protobuf field: lnrpc.MultiChanBackup multi_chan_backup = 2; + */ + multiChanBackup?: MultiChanBackup; +} +/** + * @generated from protobuf message lnrpc.ChannelBackups + */ +export interface ChannelBackups { + /** + * + * A set of single-chan static channel backups. + * + * @generated from protobuf field: repeated lnrpc.ChannelBackup chan_backups = 1; + */ + chanBackups: ChannelBackup[]; +} +/** + * @generated from protobuf message lnrpc.RestoreChanBackupRequest + */ +export interface RestoreChanBackupRequest { + /** + * @generated from protobuf oneof: backup + */ + backup: { + oneofKind: "chanBackups"; + /** + * + * The channels to restore as a list of channel/backup pairs. + * + * @generated from protobuf field: lnrpc.ChannelBackups chan_backups = 1; + */ + chanBackups: ChannelBackups; + } | { + oneofKind: "multiChanBackup"; + /** + * + * The channels to restore in the packed multi backup format. When using + * REST, this field must be encoded as base64. + * + * @generated from protobuf field: bytes multi_chan_backup = 2; + */ + multiChanBackup: Uint8Array; + } | { + oneofKind: undefined; + }; +} +/** + * @generated from protobuf message lnrpc.RestoreBackupResponse + */ +export interface RestoreBackupResponse { +} +/** + * @generated from protobuf message lnrpc.ChannelBackupSubscription + */ +export interface ChannelBackupSubscription { +} +/** + * @generated from protobuf message lnrpc.VerifyChanBackupResponse + */ +export interface VerifyChanBackupResponse { +} +/** + * @generated from protobuf message lnrpc.MacaroonPermission + */ +export interface MacaroonPermission { + /** + * The entity a permission grants access to. + * + * @generated from protobuf field: string entity = 1; + */ + entity: string; + /** + * The action that is granted. + * + * @generated from protobuf field: string action = 2; + */ + action: string; +} +/** + * @generated from protobuf message lnrpc.BakeMacaroonRequest + */ +export interface BakeMacaroonRequest { + /** + * The list of permissions the new macaroon should grant. + * + * @generated from protobuf field: repeated lnrpc.MacaroonPermission permissions = 1; + */ + permissions: MacaroonPermission[]; + /** + * The root key ID used to create the macaroon, must be a positive integer. + * + * @generated from protobuf field: uint64 root_key_id = 2; + */ + rootKeyId: bigint; + /** + * + * Informs the RPC on whether to allow external permissions that LND is not + * aware of. + * + * @generated from protobuf field: bool allow_external_permissions = 3; + */ + allowExternalPermissions: boolean; +} +/** + * @generated from protobuf message lnrpc.BakeMacaroonResponse + */ +export interface BakeMacaroonResponse { + /** + * The hex encoded macaroon, serialized in binary format. + * + * @generated from protobuf field: string macaroon = 1; + */ + macaroon: string; +} +/** + * @generated from protobuf message lnrpc.ListMacaroonIDsRequest + */ +export interface ListMacaroonIDsRequest { +} +/** + * @generated from protobuf message lnrpc.ListMacaroonIDsResponse + */ +export interface ListMacaroonIDsResponse { + /** + * The list of root key IDs that are in use. + * + * @generated from protobuf field: repeated uint64 root_key_ids = 1; + */ + rootKeyIds: bigint[]; +} +/** + * @generated from protobuf message lnrpc.DeleteMacaroonIDRequest + */ +export interface DeleteMacaroonIDRequest { + /** + * The root key ID to be removed. + * + * @generated from protobuf field: uint64 root_key_id = 1; + */ + rootKeyId: bigint; +} +/** + * @generated from protobuf message lnrpc.DeleteMacaroonIDResponse + */ +export interface DeleteMacaroonIDResponse { + /** + * A boolean indicates that the deletion is successful. + * + * @generated from protobuf field: bool deleted = 1; + */ + deleted: boolean; +} +/** + * @generated from protobuf message lnrpc.MacaroonPermissionList + */ +export interface MacaroonPermissionList { + /** + * A list of macaroon permissions. + * + * @generated from protobuf field: repeated lnrpc.MacaroonPermission permissions = 1; + */ + permissions: MacaroonPermission[]; +} +/** + * @generated from protobuf message lnrpc.ListPermissionsRequest + */ +export interface ListPermissionsRequest { +} +/** + * @generated from protobuf message lnrpc.ListPermissionsResponse + */ +export interface ListPermissionsResponse { + /** + * + * A map between all RPC method URIs and their required macaroon permissions to + * access them. + * + * @generated from protobuf field: map method_permissions = 1; + */ + methodPermissions: { + [key: string]: MacaroonPermissionList; + }; +} +/** + * @generated from protobuf message lnrpc.Failure + */ +export interface Failure { + /** + * Failure code as defined in the Lightning spec + * + * @generated from protobuf field: lnrpc.Failure.FailureCode code = 1; + */ + code: Failure_FailureCode; + /** + * An optional channel update message. + * + * @generated from protobuf field: lnrpc.ChannelUpdate channel_update = 3; + */ + channelUpdate?: ChannelUpdate; + /** + * A failure type-dependent htlc value. + * + * @generated from protobuf field: uint64 htlc_msat = 4; + */ + htlcMsat: bigint; + /** + * The sha256 sum of the onion payload. + * + * @generated from protobuf field: bytes onion_sha_256 = 5; + */ + onionSha256: Uint8Array; + /** + * A failure type-dependent cltv expiry value. + * + * @generated from protobuf field: uint32 cltv_expiry = 6; + */ + cltvExpiry: number; + /** + * A failure type-dependent flags value. + * + * @generated from protobuf field: uint32 flags = 7; + */ + flags: number; + /** + * + * The position in the path of the intermediate or final node that generated + * the failure message. Position zero is the sender node. + * + * @generated from protobuf field: uint32 failure_source_index = 8; + */ + failureSourceIndex: number; + /** + * A failure type-dependent block height. + * + * @generated from protobuf field: uint32 height = 9; + */ + height: number; +} +/** + * @generated from protobuf enum lnrpc.Failure.FailureCode + */ +export enum Failure_FailureCode { + /** + * + * 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. + * + * @generated from protobuf enum value: RESERVED = 0; + */ + RESERVED = 0, + /** + * @generated from protobuf enum value: INCORRECT_OR_UNKNOWN_PAYMENT_DETAILS = 1; + */ + INCORRECT_OR_UNKNOWN_PAYMENT_DETAILS = 1, + /** + * @generated from protobuf enum value: INCORRECT_PAYMENT_AMOUNT = 2; + */ + INCORRECT_PAYMENT_AMOUNT = 2, + /** + * @generated from protobuf enum value: FINAL_INCORRECT_CLTV_EXPIRY = 3; + */ + FINAL_INCORRECT_CLTV_EXPIRY = 3, + /** + * @generated from protobuf enum value: FINAL_INCORRECT_HTLC_AMOUNT = 4; + */ + FINAL_INCORRECT_HTLC_AMOUNT = 4, + /** + * @generated from protobuf enum value: FINAL_EXPIRY_TOO_SOON = 5; + */ + FINAL_EXPIRY_TOO_SOON = 5, + /** + * @generated from protobuf enum value: INVALID_REALM = 6; + */ + INVALID_REALM = 6, + /** + * @generated from protobuf enum value: EXPIRY_TOO_SOON = 7; + */ + EXPIRY_TOO_SOON = 7, + /** + * @generated from protobuf enum value: INVALID_ONION_VERSION = 8; + */ + INVALID_ONION_VERSION = 8, + /** + * @generated from protobuf enum value: INVALID_ONION_HMAC = 9; + */ + INVALID_ONION_HMAC = 9, + /** + * @generated from protobuf enum value: INVALID_ONION_KEY = 10; + */ + INVALID_ONION_KEY = 10, + /** + * @generated from protobuf enum value: AMOUNT_BELOW_MINIMUM = 11; + */ + AMOUNT_BELOW_MINIMUM = 11, + /** + * @generated from protobuf enum value: FEE_INSUFFICIENT = 12; + */ + FEE_INSUFFICIENT = 12, + /** + * @generated from protobuf enum value: INCORRECT_CLTV_EXPIRY = 13; + */ + INCORRECT_CLTV_EXPIRY = 13, + /** + * @generated from protobuf enum value: CHANNEL_DISABLED = 14; + */ + CHANNEL_DISABLED = 14, + /** + * @generated from protobuf enum value: TEMPORARY_CHANNEL_FAILURE = 15; + */ + TEMPORARY_CHANNEL_FAILURE = 15, + /** + * @generated from protobuf enum value: REQUIRED_NODE_FEATURE_MISSING = 16; + */ + REQUIRED_NODE_FEATURE_MISSING = 16, + /** + * @generated from protobuf enum value: REQUIRED_CHANNEL_FEATURE_MISSING = 17; + */ + REQUIRED_CHANNEL_FEATURE_MISSING = 17, + /** + * @generated from protobuf enum value: UNKNOWN_NEXT_PEER = 18; + */ + UNKNOWN_NEXT_PEER = 18, + /** + * @generated from protobuf enum value: TEMPORARY_NODE_FAILURE = 19; + */ + TEMPORARY_NODE_FAILURE = 19, + /** + * @generated from protobuf enum value: PERMANENT_NODE_FAILURE = 20; + */ + PERMANENT_NODE_FAILURE = 20, + /** + * @generated from protobuf enum value: PERMANENT_CHANNEL_FAILURE = 21; + */ + PERMANENT_CHANNEL_FAILURE = 21, + /** + * @generated from protobuf enum value: EXPIRY_TOO_FAR = 22; + */ + EXPIRY_TOO_FAR = 22, + /** + * @generated from protobuf enum value: MPP_TIMEOUT = 23; + */ + MPP_TIMEOUT = 23, + /** + * @generated from protobuf enum value: INVALID_ONION_PAYLOAD = 24; + */ + INVALID_ONION_PAYLOAD = 24, + /** + * @generated from protobuf enum value: INVALID_ONION_BLINDING = 25; + */ + INVALID_ONION_BLINDING = 25, + /** + * + * An internal error occurred. + * + * @generated from protobuf enum value: INTERNAL_FAILURE = 997; + */ + INTERNAL_FAILURE = 997, + /** + * + * The error source is known, but the failure itself couldn't be decoded. + * + * @generated from protobuf enum value: UNKNOWN_FAILURE = 998; + */ + UNKNOWN_FAILURE = 998, + /** + * + * An unreadable failure result is returned if the received failure message + * cannot be decrypted. In that case the error source is unknown. + * + * @generated from protobuf enum value: UNREADABLE_FAILURE = 999; + */ + UNREADABLE_FAILURE = 999 +} +/** + * @generated from protobuf message lnrpc.ChannelUpdate + */ +export interface ChannelUpdate { + /** + * + * The signature that validates the announced data and proves the ownership + * of node id. + * + * @generated from protobuf field: bytes signature = 1; + */ + signature: Uint8Array; + /** + * + * 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. + * + * @generated from protobuf field: bytes chain_hash = 2; + */ + chainHash: Uint8Array; + /** + * + * The unique description of the funding transaction. + * + * @generated from protobuf field: uint64 chan_id = 3 [jstype = JS_STRING]; + */ + chanId: string; + /** + * + * 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. + * + * @generated from protobuf field: uint32 timestamp = 4; + */ + timestamp: number; + /** + * + * 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. + * + * @generated from protobuf field: uint32 message_flags = 10; + */ + messageFlags: number; + /** + * + * 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. + * + * @generated from protobuf field: uint32 channel_flags = 5; + */ + channelFlags: number; + /** + * + * 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. + * + * @generated from protobuf field: uint32 time_lock_delta = 6; + */ + timeLockDelta: number; + /** + * + * The minimum HTLC value which will be accepted. + * + * @generated from protobuf field: uint64 htlc_minimum_msat = 7; + */ + htlcMinimumMsat: bigint; + /** + * + * 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. + * + * @generated from protobuf field: uint32 base_fee = 8; + */ + baseFee: number; + /** + * + * The fee rate that will be charged per millionth of a satoshi. + * + * @generated from protobuf field: uint32 fee_rate = 9; + */ + feeRate: number; + /** + * + * The maximum HTLC value which will be accepted. + * + * @generated from protobuf field: uint64 htlc_maximum_msat = 11; + */ + htlcMaximumMsat: bigint; + /** + * + * 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. + * + * @generated from protobuf field: bytes extra_opaque_data = 12; + */ + extraOpaqueData: Uint8Array; +} +/** + * @generated from protobuf message lnrpc.MacaroonId + */ +export interface MacaroonId { + /** + * @generated from protobuf field: bytes nonce = 1; + */ + nonce: Uint8Array; + /** + * @generated from protobuf field: bytes storageId = 2; + */ + storageId: Uint8Array; + /** + * @generated from protobuf field: repeated lnrpc.Op ops = 3; + */ + ops: Op[]; +} +/** + * @generated from protobuf message lnrpc.Op + */ +export interface Op { + /** + * @generated from protobuf field: string entity = 1; + */ + entity: string; + /** + * @generated from protobuf field: repeated string actions = 2; + */ + actions: string[]; +} +/** + * @generated from protobuf message lnrpc.CheckMacPermRequest + */ +export interface CheckMacPermRequest { + /** + * @generated from protobuf field: bytes macaroon = 1; + */ + macaroon: Uint8Array; + /** + * @generated from protobuf field: repeated lnrpc.MacaroonPermission permissions = 2; + */ + permissions: MacaroonPermission[]; + /** + * @generated from protobuf field: string fullMethod = 3; + */ + fullMethod: string; +} +/** + * @generated from protobuf message lnrpc.CheckMacPermResponse + */ +export interface CheckMacPermResponse { + /** + * @generated from protobuf field: bool valid = 1; + */ + valid: boolean; +} +/** + * @generated from protobuf message lnrpc.RPCMiddlewareRequest + */ +export interface RPCMiddlewareRequest { + /** + * + * The unique ID of the intercepted original gRPC request. Useful for mapping + * request to response when implementing full duplex message interception. For + * streaming requests, this will be the same ID for all incoming and outgoing + * middleware intercept messages of the _same_ stream. + * + * @generated from protobuf field: uint64 request_id = 1; + */ + requestId: bigint; + /** + * + * The raw bytes of the complete macaroon as sent by the gRPC client in the + * original request. This might be empty for a request that doesn't require + * macaroons such as the wallet unlocker RPCs. + * + * @generated from protobuf field: bytes raw_macaroon = 2; + */ + rawMacaroon: Uint8Array; + /** + * + * The parsed condition of the macaroon's custom caveat for convenient access. + * This field only contains the value of the custom caveat that the handling + * middleware has registered itself for. The condition _must_ be validated for + * messages of intercept_type stream_auth and request! + * + * @generated from protobuf field: string custom_caveat_condition = 3; + */ + customCaveatCondition: string; + /** + * @generated from protobuf oneof: intercept_type + */ + interceptType: { + oneofKind: "streamAuth"; + /** + * + * Intercept stream authentication: each new streaming RPC call that is + * initiated against lnd and contains the middleware's custom macaroon + * caveat can be approved or denied based upon the macaroon in the stream + * header. This message will only be sent for streaming RPCs, unary RPCs + * must handle the macaroon authentication in the request interception to + * avoid an additional message round trip between lnd and the middleware. + * + * @generated from protobuf field: lnrpc.StreamAuth stream_auth = 4; + */ + streamAuth: StreamAuth; + } | { + oneofKind: "request"; + /** + * + * Intercept incoming gRPC client request message: all incoming messages, + * both on streaming and unary RPCs, are forwarded to the middleware for + * inspection. For unary RPC messages the middleware is also expected to + * validate the custom macaroon caveat of the request. + * + * @generated from protobuf field: lnrpc.RPCMessage request = 5; + */ + request: RPCMessage; + } | { + oneofKind: "response"; + /** + * + * Intercept outgoing gRPC response message: all outgoing messages, both on + * streaming and unary RPCs, are forwarded to the middleware for inspection + * and amendment. The response in this message is the original response as + * it was generated by the main RPC server. It can either be accepted + * (=forwarded to the client), replaced/overwritten with a new message of + * the same type, or replaced by an error message. + * + * @generated from protobuf field: lnrpc.RPCMessage response = 6; + */ + response: RPCMessage; + } | { + oneofKind: "regComplete"; + /** + * + * This is used to indicate to the client that the server has successfully + * registered the interceptor. This is only used in the very first message + * that the server sends to the client after the client sends the server + * the middleware registration message. + * + * @generated from protobuf field: bool reg_complete = 8; + */ + regComplete: boolean; + } | { + oneofKind: undefined; + }; + /** + * + * The unique message ID of this middleware intercept message. There can be + * multiple middleware intercept messages per single gRPC request (one for the + * incoming request and one for the outgoing response) or gRPC stream (one for + * each incoming message and one for each outgoing response). This message ID + * must be referenced when responding (accepting/rejecting/modifying) to an + * intercept message. + * + * @generated from protobuf field: uint64 msg_id = 7; + */ + msgId: bigint; +} +/** + * @generated from protobuf message lnrpc.StreamAuth + */ +export interface StreamAuth { + /** + * + * The full URI (in the format /./MethodName, for + * example /lnrpc.Lightning/GetInfo) of the streaming RPC method that was just + * established. + * + * @generated from protobuf field: string method_full_uri = 1; + */ + methodFullUri: string; +} +/** + * @generated from protobuf message lnrpc.RPCMessage + */ +export interface RPCMessage { + /** + * + * The full URI (in the format /./MethodName, for + * example /lnrpc.Lightning/GetInfo) of the RPC method the message was sent + * to/from. + * + * @generated from protobuf field: string method_full_uri = 1; + */ + methodFullUri: string; + /** + * + * Indicates whether the message was sent over a streaming RPC method or not. + * + * @generated from protobuf field: bool stream_rpc = 2; + */ + streamRpc: boolean; + /** + * + * The full canonical gRPC name of the message type (in the format + * .TypeName, for example lnrpc.GetInfoRequest). In case of an + * error being returned from lnd, this simply contains the string "error". + * + * @generated from protobuf field: string type_name = 3; + */ + typeName: string; + /** + * + * The full content of the gRPC message, serialized in the binary protobuf + * format. + * + * @generated from protobuf field: bytes serialized = 4; + */ + serialized: Uint8Array; + /** + * + * Indicates that the response from lnd was an error, not a gRPC response. If + * this is set to true then the type_name contains the string "error" and + * serialized contains the error string. + * + * @generated from protobuf field: bool is_error = 5; + */ + isError: boolean; +} +/** + * @generated from protobuf message lnrpc.RPCMiddlewareResponse + */ +export interface RPCMiddlewareResponse { + /** + * + * The request message ID this response refers to. Must always be set when + * giving feedback to an intercept but is ignored for the initial registration + * message. + * + * @generated from protobuf field: uint64 ref_msg_id = 1; + */ + refMsgId: bigint; + /** + * @generated from protobuf oneof: middleware_message + */ + middlewareMessage: { + oneofKind: "register"; + /** + * + * The registration message identifies the middleware that's being + * registered in lnd. The registration message must be sent immediately + * after initiating the RegisterRpcMiddleware stream, otherwise lnd will + * time out the attempt and terminate the request. NOTE: The middleware + * will only receive interception messages for requests that contain a + * macaroon with the custom caveat that the middleware declares it is + * responsible for handling in the registration message! As a security + * measure, _no_ middleware can intercept requests made with _unencumbered_ + * macaroons! + * + * @generated from protobuf field: lnrpc.MiddlewareRegistration register = 2; + */ + register: MiddlewareRegistration; + } | { + oneofKind: "feedback"; + /** + * + * The middleware received an interception request and gives feedback to + * it. The request_id indicates what message the feedback refers to. + * + * @generated from protobuf field: lnrpc.InterceptFeedback feedback = 3; + */ + feedback: InterceptFeedback; + } | { + oneofKind: undefined; + }; +} +/** + * @generated from protobuf message lnrpc.MiddlewareRegistration + */ +export interface MiddlewareRegistration { + /** + * + * The name of the middleware to register. The name should be as informative + * as possible and is logged on registration. + * + * @generated from protobuf field: string middleware_name = 1; + */ + middlewareName: string; + /** + * + * The name of the custom macaroon caveat that this middleware is responsible + * for. Only requests/responses that contain a macaroon with the registered + * custom caveat are forwarded for interception to the middleware. The + * exception being the read-only mode: All requests/responses are forwarded to + * a middleware that requests read-only access but such a middleware won't be + * allowed to _alter_ responses. As a security measure, _no_ middleware can + * change responses to requests made with _unencumbered_ macaroons! + * NOTE: Cannot be used at the same time as read_only_mode. + * + * @generated from protobuf field: string custom_macaroon_caveat_name = 2; + */ + customMacaroonCaveatName: string; + /** + * + * Instead of defining a custom macaroon caveat name a middleware can register + * itself for read-only access only. In that mode all requests/responses are + * forwarded to the middleware but the middleware isn't allowed to alter any of + * the responses. + * NOTE: Cannot be used at the same time as custom_macaroon_caveat_name. + * + * @generated from protobuf field: bool read_only_mode = 3; + */ + readOnlyMode: boolean; +} +/** + * @generated from protobuf message lnrpc.InterceptFeedback + */ +export interface InterceptFeedback { + /** + * + * The error to return to the user. If this is non-empty, the incoming gRPC + * stream/request is aborted and the error is returned to the gRPC client. If + * this value is empty, it means the middleware accepts the stream/request/ + * response and the processing of it can continue. + * + * @generated from protobuf field: string error = 1; + */ + error: string; + /** + * + * A boolean indicating that the gRPC message should be replaced/overwritten. + * This boolean is needed because in protobuf an empty message is serialized as + * a 0-length or nil byte slice and we wouldn't be able to distinguish between + * an empty replacement message and the "don't replace anything" case. + * + * @generated from protobuf field: bool replace_response = 2; + */ + replaceResponse: boolean; + /** + * + * If the replace_response field is set to true, this field must contain the + * binary serialized gRPC message in the protobuf format. + * + * @generated from protobuf field: bytes replacement_serialized = 3; + */ + replacementSerialized: Uint8Array; +} +/** + * @generated from protobuf enum lnrpc.OutputScriptType + */ +export enum OutputScriptType { + /** + * @generated from protobuf enum value: SCRIPT_TYPE_PUBKEY_HASH = 0; + */ + SCRIPT_TYPE_PUBKEY_HASH = 0, + /** + * @generated from protobuf enum value: SCRIPT_TYPE_SCRIPT_HASH = 1; + */ + SCRIPT_TYPE_SCRIPT_HASH = 1, + /** + * @generated from protobuf enum value: SCRIPT_TYPE_WITNESS_V0_PUBKEY_HASH = 2; + */ + SCRIPT_TYPE_WITNESS_V0_PUBKEY_HASH = 2, + /** + * @generated from protobuf enum value: SCRIPT_TYPE_WITNESS_V0_SCRIPT_HASH = 3; + */ + SCRIPT_TYPE_WITNESS_V0_SCRIPT_HASH = 3, + /** + * @generated from protobuf enum value: SCRIPT_TYPE_PUBKEY = 4; + */ + SCRIPT_TYPE_PUBKEY = 4, + /** + * @generated from protobuf enum value: SCRIPT_TYPE_MULTISIG = 5; + */ + SCRIPT_TYPE_MULTISIG = 5, + /** + * @generated from protobuf enum value: SCRIPT_TYPE_NULLDATA = 6; + */ + SCRIPT_TYPE_NULLDATA = 6, + /** + * @generated from protobuf enum value: SCRIPT_TYPE_NON_STANDARD = 7; + */ + SCRIPT_TYPE_NON_STANDARD = 7, + /** + * @generated from protobuf enum value: SCRIPT_TYPE_WITNESS_UNKNOWN = 8; + */ + SCRIPT_TYPE_WITNESS_UNKNOWN = 8, + /** + * @generated from protobuf enum value: SCRIPT_TYPE_WITNESS_V1_TAPROOT = 9; + */ + SCRIPT_TYPE_WITNESS_V1_TAPROOT = 9 +} +/** + * @generated from protobuf enum lnrpc.CoinSelectionStrategy + */ +export enum CoinSelectionStrategy { + /** + * Use the coin selection strategy defined in the global configuration + * (lnd.conf). + * + * @generated from protobuf enum value: STRATEGY_USE_GLOBAL_CONFIG = 0; + */ + STRATEGY_USE_GLOBAL_CONFIG = 0, + /** + * Select the largest available coins first during coin selection. + * + * @generated from protobuf enum value: STRATEGY_LARGEST = 1; + */ + STRATEGY_LARGEST = 1, + /** + * Randomly select the available coins during coin selection. + * + * @generated from protobuf enum value: STRATEGY_RANDOM = 2; + */ + STRATEGY_RANDOM = 2 +} +/** + * + * `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) + * - `p2tr`: Pay to taproot pubkey (`TAPROOT_PUBKEY` = 4) + * + * @generated from protobuf enum lnrpc.AddressType + */ +export enum AddressType { + /** + * @generated from protobuf enum value: WITNESS_PUBKEY_HASH = 0; + */ + WITNESS_PUBKEY_HASH = 0, + /** + * @generated from protobuf enum value: NESTED_PUBKEY_HASH = 1; + */ + NESTED_PUBKEY_HASH = 1, + /** + * @generated from protobuf enum value: UNUSED_WITNESS_PUBKEY_HASH = 2; + */ + UNUSED_WITNESS_PUBKEY_HASH = 2, + /** + * @generated from protobuf enum value: UNUSED_NESTED_PUBKEY_HASH = 3; + */ + UNUSED_NESTED_PUBKEY_HASH = 3, + /** + * @generated from protobuf enum value: TAPROOT_PUBKEY = 4; + */ + TAPROOT_PUBKEY = 4, + /** + * @generated from protobuf enum value: UNUSED_TAPROOT_PUBKEY = 5; + */ + UNUSED_TAPROOT_PUBKEY = 5 +} +/** + * @generated from protobuf enum lnrpc.CommitmentType + */ +export enum CommitmentType { + /** + * + * Returned when the commitment type isn't known or unavailable. + * + * @generated from protobuf enum value: UNKNOWN_COMMITMENT_TYPE = 0; + */ + UNKNOWN_COMMITMENT_TYPE = 0, + /** + * + * A channel using the legacy commitment format having tweaked to_remote + * keys. + * + * @generated from protobuf enum value: LEGACY = 1; + */ + LEGACY = 1, + /** + * + * 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. + * + * @generated from protobuf enum value: STATIC_REMOTE_KEY = 2; + */ + STATIC_REMOTE_KEY = 2, + /** + * + * 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. + * + * @generated from protobuf enum value: ANCHORS = 3; + */ + ANCHORS = 3, + /** + * + * A channel that uses a commitment type that builds upon the anchors + * commitment format, but in addition requires a CLTV clause to spend outputs + * paying to the channel initiator. This is intended for use on leased channels + * to guarantee that the channel initiator has no incentives to close a leased + * channel before its maturity date. + * + * @generated from protobuf enum value: SCRIPT_ENFORCED_LEASE = 4; + */ + SCRIPT_ENFORCED_LEASE = 4, + /** + * TODO(roasbeef): need script enforce mirror type for the above as well? + * + * @generated from protobuf enum value: SIMPLE_TAPROOT = 5; + */ + SIMPLE_TAPROOT = 5 +} +/** + * @generated from protobuf enum lnrpc.Initiator + */ +export enum Initiator { + /** + * @generated from protobuf enum value: INITIATOR_UNKNOWN = 0; + */ + UNKNOWN = 0, + /** + * @generated from protobuf enum value: INITIATOR_LOCAL = 1; + */ + LOCAL = 1, + /** + * @generated from protobuf enum value: INITIATOR_REMOTE = 2; + */ + REMOTE = 2, + /** + * @generated from protobuf enum value: INITIATOR_BOTH = 3; + */ + BOTH = 3 +} +/** + * @generated from protobuf enum lnrpc.ResolutionType + */ +export enum ResolutionType { + /** + * @generated from protobuf enum value: TYPE_UNKNOWN = 0; + */ + TYPE_UNKNOWN = 0, + /** + * We resolved an anchor output. + * + * @generated from protobuf enum value: ANCHOR = 1; + */ + ANCHOR = 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. + * + * @generated from protobuf enum value: INCOMING_HTLC = 2; + */ + INCOMING_HTLC = 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. + * + * @generated from protobuf enum value: OUTGOING_HTLC = 3; + */ + OUTGOING_HTLC = 3, + /** + * We force closed and need to sweep our time locked commitment output. + * + * @generated from protobuf enum value: COMMIT = 4; + */ + COMMIT = 4 +} +/** + * @generated from protobuf enum lnrpc.ResolutionOutcome + */ +export enum ResolutionOutcome { + /** + * Outcome unknown. + * + * @generated from protobuf enum value: OUTCOME_UNKNOWN = 0; + */ + OUTCOME_UNKNOWN = 0, + /** + * An output was claimed on chain. + * + * @generated from protobuf enum value: CLAIMED = 1; + */ + CLAIMED = 1, + /** + * An output was left unclaimed on chain. + * + * @generated from protobuf enum value: UNCLAIMED = 2; + */ + UNCLAIMED = 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. + * + * @generated from protobuf enum value: ABANDONED = 3; + */ + ABANDONED = 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. + * + * @generated from protobuf enum value: FIRST_STAGE = 4; + */ + FIRST_STAGE = 4, + /** + * A htlc was timed out on chain. + * + * @generated from protobuf enum value: TIMEOUT = 5; + */ + TIMEOUT = 5 +} +/** + * @generated from protobuf enum lnrpc.NodeMetricType + */ +export enum NodeMetricType { + /** + * @generated from protobuf enum value: UNKNOWN = 0; + */ + UNKNOWN = 0, + /** + * @generated from protobuf enum value: BETWEENNESS_CENTRALITY = 1; + */ + BETWEENNESS_CENTRALITY = 1 +} +/** + * @generated from protobuf enum lnrpc.InvoiceHTLCState + */ +export enum InvoiceHTLCState { + /** + * @generated from protobuf enum value: ACCEPTED = 0; + */ + ACCEPTED = 0, + /** + * @generated from protobuf enum value: SETTLED = 1; + */ + SETTLED = 1, + /** + * @generated from protobuf enum value: CANCELED = 2; + */ + CANCELED = 2 +} +/** + * @generated from protobuf enum lnrpc.PaymentFailureReason + */ +export enum PaymentFailureReason { + /** + * + * Payment isn't failed (yet). + * + * @generated from protobuf enum value: FAILURE_REASON_NONE = 0; + */ + FAILURE_REASON_NONE = 0, + /** + * + * There are more routes to try, but the payment timeout was exceeded. + * + * @generated from protobuf enum value: FAILURE_REASON_TIMEOUT = 1; + */ + FAILURE_REASON_TIMEOUT = 1, + /** + * + * All possible routes were tried and failed permanently. Or were no + * routes to the destination at all. + * + * @generated from protobuf enum value: FAILURE_REASON_NO_ROUTE = 2; + */ + FAILURE_REASON_NO_ROUTE = 2, + /** + * + * A non-recoverable error has occured. + * + * @generated from protobuf enum value: FAILURE_REASON_ERROR = 3; + */ + FAILURE_REASON_ERROR = 3, + /** + * + * Payment details incorrect (unknown hash, invalid amt or + * invalid final cltv delta) + * + * @generated from protobuf enum value: FAILURE_REASON_INCORRECT_PAYMENT_DETAILS = 4; + */ + FAILURE_REASON_INCORRECT_PAYMENT_DETAILS = 4, + /** + * + * Insufficient local balance. + * + * @generated from protobuf enum value: FAILURE_REASON_INSUFFICIENT_BALANCE = 5; + */ + FAILURE_REASON_INSUFFICIENT_BALANCE = 5, + /** + * + * The payment was canceled. + * + * @generated from protobuf enum value: FAILURE_REASON_CANCELED = 6; + */ + FAILURE_REASON_CANCELED = 6 +} +/** + * @generated from protobuf enum lnrpc.FeatureBit + */ +export enum FeatureBit { + /** + * @generated from protobuf enum value: DATALOSS_PROTECT_REQ = 0; + */ + DATALOSS_PROTECT_REQ = 0, + /** + * @generated from protobuf enum value: DATALOSS_PROTECT_OPT = 1; + */ + DATALOSS_PROTECT_OPT = 1, + /** + * @generated from protobuf enum value: INITIAL_ROUING_SYNC = 3; + */ + INITIAL_ROUING_SYNC = 3, + /** + * @generated from protobuf enum value: UPFRONT_SHUTDOWN_SCRIPT_REQ = 4; + */ + UPFRONT_SHUTDOWN_SCRIPT_REQ = 4, + /** + * @generated from protobuf enum value: UPFRONT_SHUTDOWN_SCRIPT_OPT = 5; + */ + UPFRONT_SHUTDOWN_SCRIPT_OPT = 5, + /** + * @generated from protobuf enum value: GOSSIP_QUERIES_REQ = 6; + */ + GOSSIP_QUERIES_REQ = 6, + /** + * @generated from protobuf enum value: GOSSIP_QUERIES_OPT = 7; + */ + GOSSIP_QUERIES_OPT = 7, + /** + * @generated from protobuf enum value: TLV_ONION_REQ = 8; + */ + TLV_ONION_REQ = 8, + /** + * @generated from protobuf enum value: TLV_ONION_OPT = 9; + */ + TLV_ONION_OPT = 9, + /** + * @generated from protobuf enum value: EXT_GOSSIP_QUERIES_REQ = 10; + */ + EXT_GOSSIP_QUERIES_REQ = 10, + /** + * @generated from protobuf enum value: EXT_GOSSIP_QUERIES_OPT = 11; + */ + EXT_GOSSIP_QUERIES_OPT = 11, + /** + * @generated from protobuf enum value: STATIC_REMOTE_KEY_REQ = 12; + */ + STATIC_REMOTE_KEY_REQ = 12, + /** + * @generated from protobuf enum value: STATIC_REMOTE_KEY_OPT = 13; + */ + STATIC_REMOTE_KEY_OPT = 13, + /** + * @generated from protobuf enum value: PAYMENT_ADDR_REQ = 14; + */ + PAYMENT_ADDR_REQ = 14, + /** + * @generated from protobuf enum value: PAYMENT_ADDR_OPT = 15; + */ + PAYMENT_ADDR_OPT = 15, + /** + * @generated from protobuf enum value: MPP_REQ = 16; + */ + MPP_REQ = 16, + /** + * @generated from protobuf enum value: MPP_OPT = 17; + */ + MPP_OPT = 17, + /** + * @generated from protobuf enum value: WUMBO_CHANNELS_REQ = 18; + */ + WUMBO_CHANNELS_REQ = 18, + /** + * @generated from protobuf enum value: WUMBO_CHANNELS_OPT = 19; + */ + WUMBO_CHANNELS_OPT = 19, + /** + * @generated from protobuf enum value: ANCHORS_REQ = 20; + */ + ANCHORS_REQ = 20, + /** + * @generated from protobuf enum value: ANCHORS_OPT = 21; + */ + ANCHORS_OPT = 21, + /** + * @generated from protobuf enum value: ANCHORS_ZERO_FEE_HTLC_REQ = 22; + */ + ANCHORS_ZERO_FEE_HTLC_REQ = 22, + /** + * @generated from protobuf enum value: ANCHORS_ZERO_FEE_HTLC_OPT = 23; + */ + ANCHORS_ZERO_FEE_HTLC_OPT = 23, + /** + * @generated from protobuf enum value: ROUTE_BLINDING_REQUIRED = 24; + */ + ROUTE_BLINDING_REQUIRED = 24, + /** + * @generated from protobuf enum value: ROUTE_BLINDING_OPTIONAL = 25; + */ + ROUTE_BLINDING_OPTIONAL = 25, + /** + * @generated from protobuf enum value: AMP_REQ = 30; + */ + AMP_REQ = 30, + /** + * @generated from protobuf enum value: AMP_OPT = 31; + */ + AMP_OPT = 31 +} +/** + * @generated from protobuf enum lnrpc.UpdateFailure + */ +export enum UpdateFailure { + /** + * @generated from protobuf enum value: UPDATE_FAILURE_UNKNOWN = 0; + */ + UNKNOWN = 0, + /** + * @generated from protobuf enum value: UPDATE_FAILURE_PENDING = 1; + */ + PENDING = 1, + /** + * @generated from protobuf enum value: UPDATE_FAILURE_NOT_FOUND = 2; + */ + NOT_FOUND = 2, + /** + * @generated from protobuf enum value: UPDATE_FAILURE_INTERNAL_ERR = 3; + */ + INTERNAL_ERR = 3, + /** + * @generated from protobuf enum value: UPDATE_FAILURE_INVALID_PARAMETER = 4; + */ + INVALID_PARAMETER = 4 +} +// @generated message type with reflection information, may provide speed optimized methods +class LookupHtlcResolutionRequest$Type extends MessageType { + constructor() { + super("lnrpc.LookupHtlcResolutionRequest", [ + { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "htlc_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): LookupHtlcResolutionRequest { + const message = { chanId: 0n, htlcIndex: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LookupHtlcResolutionRequest): LookupHtlcResolutionRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 chan_id */ 1: + message.chanId = reader.uint64().toBigInt(); + break; + case /* uint64 htlc_index */ 2: + message.htlcIndex = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: LookupHtlcResolutionRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 chan_id = 1; */ + if (message.chanId !== 0n) + writer.tag(1, WireType.Varint).uint64(message.chanId); + /* uint64 htlc_index = 2; */ + if (message.htlcIndex !== 0n) + writer.tag(2, WireType.Varint).uint64(message.htlcIndex); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.LookupHtlcResolutionRequest + */ +export const LookupHtlcResolutionRequest = new LookupHtlcResolutionRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class LookupHtlcResolutionResponse$Type extends MessageType { + constructor() { + super("lnrpc.LookupHtlcResolutionResponse", [ + { no: 1, name: "settled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 2, name: "offchain", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): LookupHtlcResolutionResponse { + const message = { settled: false, offchain: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LookupHtlcResolutionResponse): LookupHtlcResolutionResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool settled */ 1: + message.settled = reader.bool(); + break; + case /* bool offchain */ 2: + message.offchain = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: LookupHtlcResolutionResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool settled = 1; */ + if (message.settled !== false) + writer.tag(1, WireType.Varint).bool(message.settled); + /* bool offchain = 2; */ + if (message.offchain !== false) + writer.tag(2, WireType.Varint).bool(message.offchain); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.LookupHtlcResolutionResponse + */ +export const LookupHtlcResolutionResponse = new LookupHtlcResolutionResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SubscribeCustomMessagesRequest$Type extends MessageType { + constructor() { + super("lnrpc.SubscribeCustomMessagesRequest", []); + } + create(value?: PartialMessage): SubscribeCustomMessagesRequest { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SubscribeCustomMessagesRequest): SubscribeCustomMessagesRequest { + return target ?? this.create(); + } + internalBinaryWrite(message: SubscribeCustomMessagesRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.SubscribeCustomMessagesRequest + */ +export const SubscribeCustomMessagesRequest = new SubscribeCustomMessagesRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class CustomMessage$Type extends MessageType { + constructor() { + super("lnrpc.CustomMessage", [ + { no: 1, name: "peer", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "type", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 3, name: "data", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): CustomMessage { + const message = { peer: new Uint8Array(0), type: 0, data: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CustomMessage): CustomMessage { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes peer */ 1: + message.peer = reader.bytes(); + break; + case /* uint32 type */ 2: + message.type = reader.uint32(); + break; + case /* bytes data */ 3: + message.data = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: CustomMessage, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes peer = 1; */ + if (message.peer.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.peer); + /* uint32 type = 2; */ + if (message.type !== 0) + writer.tag(2, WireType.Varint).uint32(message.type); + /* bytes data = 3; */ + if (message.data.length) + writer.tag(3, WireType.LengthDelimited).bytes(message.data); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.CustomMessage + */ +export const CustomMessage = new CustomMessage$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SendCustomMessageRequest$Type extends MessageType { + constructor() { + super("lnrpc.SendCustomMessageRequest", [ + { no: 1, name: "peer", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "type", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 3, name: "data", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): SendCustomMessageRequest { + const message = { peer: new Uint8Array(0), type: 0, data: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendCustomMessageRequest): SendCustomMessageRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes peer */ 1: + message.peer = reader.bytes(); + break; + case /* uint32 type */ 2: + message.type = reader.uint32(); + break; + case /* bytes data */ 3: + message.data = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: SendCustomMessageRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes peer = 1; */ + if (message.peer.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.peer); + /* uint32 type = 2; */ + if (message.type !== 0) + writer.tag(2, WireType.Varint).uint32(message.type); + /* bytes data = 3; */ + if (message.data.length) + writer.tag(3, WireType.LengthDelimited).bytes(message.data); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.SendCustomMessageRequest + */ +export const SendCustomMessageRequest = new SendCustomMessageRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SendCustomMessageResponse$Type extends MessageType { + constructor() { + super("lnrpc.SendCustomMessageResponse", []); + } + create(value?: PartialMessage): SendCustomMessageResponse { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendCustomMessageResponse): SendCustomMessageResponse { + return target ?? this.create(); + } + internalBinaryWrite(message: SendCustomMessageResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.SendCustomMessageResponse + */ +export const SendCustomMessageResponse = new SendCustomMessageResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class Utxo$Type extends MessageType { + constructor() { + super("lnrpc.Utxo", [ + { no: 1, name: "address_type", kind: "enum", T: () => ["lnrpc.AddressType", AddressType] }, + { no: 2, name: "address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 3, name: "amount_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "pk_script", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 5, name: "outpoint", kind: "message", T: () => OutPoint }, + { no: 6, name: "confirmations", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): Utxo { + const message = { addressType: 0, address: "", amountSat: 0n, pkScript: "", confirmations: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Utxo): Utxo { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.AddressType address_type */ 1: + message.addressType = reader.int32(); + break; + case /* string address */ 2: + message.address = reader.string(); + break; + case /* int64 amount_sat */ 3: + message.amountSat = reader.int64().toBigInt(); + break; + case /* string pk_script */ 4: + message.pkScript = reader.string(); + break; + case /* lnrpc.OutPoint outpoint */ 5: + message.outpoint = OutPoint.internalBinaryRead(reader, reader.uint32(), options, message.outpoint); + break; + case /* int64 confirmations */ 6: + message.confirmations = reader.int64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: Utxo, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.AddressType address_type = 1; */ + if (message.addressType !== 0) + writer.tag(1, WireType.Varint).int32(message.addressType); + /* string address = 2; */ + if (message.address !== "") + writer.tag(2, WireType.LengthDelimited).string(message.address); + /* int64 amount_sat = 3; */ + if (message.amountSat !== 0n) + writer.tag(3, WireType.Varint).int64(message.amountSat); + /* string pk_script = 4; */ + if (message.pkScript !== "") + writer.tag(4, WireType.LengthDelimited).string(message.pkScript); + /* lnrpc.OutPoint outpoint = 5; */ + if (message.outpoint) + OutPoint.internalBinaryWrite(message.outpoint, writer.tag(5, WireType.LengthDelimited).fork(), options).join(); + /* int64 confirmations = 6; */ + if (message.confirmations !== 0n) + writer.tag(6, WireType.Varint).int64(message.confirmations); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.Utxo + */ +export const Utxo = new Utxo$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class OutputDetail$Type extends MessageType { + constructor() { + super("lnrpc.OutputDetail", [ + { no: 1, name: "output_type", kind: "enum", T: () => ["lnrpc.OutputScriptType", OutputScriptType] }, + { no: 2, name: "address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 3, name: "pk_script", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 4, name: "output_index", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "amount", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "is_our_address", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): OutputDetail { + const message = { outputType: 0, address: "", pkScript: "", outputIndex: 0n, amount: 0n, isOurAddress: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: OutputDetail): OutputDetail { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.OutputScriptType output_type */ 1: + message.outputType = reader.int32(); + break; + case /* string address */ 2: + message.address = reader.string(); + break; + case /* string pk_script */ 3: + message.pkScript = reader.string(); + break; + case /* int64 output_index */ 4: + message.outputIndex = reader.int64().toBigInt(); + break; + case /* int64 amount */ 5: + message.amount = reader.int64().toBigInt(); + break; + case /* bool is_our_address */ 6: + message.isOurAddress = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: OutputDetail, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.OutputScriptType output_type = 1; */ + if (message.outputType !== 0) + writer.tag(1, WireType.Varint).int32(message.outputType); + /* string address = 2; */ + if (message.address !== "") + writer.tag(2, WireType.LengthDelimited).string(message.address); + /* string pk_script = 3; */ + if (message.pkScript !== "") + writer.tag(3, WireType.LengthDelimited).string(message.pkScript); + /* int64 output_index = 4; */ + if (message.outputIndex !== 0n) + writer.tag(4, WireType.Varint).int64(message.outputIndex); + /* int64 amount = 5; */ + if (message.amount !== 0n) + writer.tag(5, WireType.Varint).int64(message.amount); + /* bool is_our_address = 6; */ + if (message.isOurAddress !== false) + writer.tag(6, WireType.Varint).bool(message.isOurAddress); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.OutputDetail + */ +export const OutputDetail = new OutputDetail$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class Transaction$Type extends MessageType { + constructor() { + super("lnrpc.Transaction", [ + { no: 1, name: "tx_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "amount", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "num_confirmations", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 4, name: "block_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 5, name: "block_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 6, name: "time_stamp", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "total_fees", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 8, name: "dest_addresses", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ }, + { no: 11, name: "output_details", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => OutputDetail }, + { no: 9, name: "raw_tx_hex", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 10, name: "label", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 12, name: "previous_outpoints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => PreviousOutPoint } + ]); + } + create(value?: PartialMessage): Transaction { + const message = { txHash: "", amount: 0n, numConfirmations: 0, blockHash: "", blockHeight: 0, timeStamp: 0n, totalFees: 0n, destAddresses: [], outputDetails: [], rawTxHex: "", label: "", previousOutpoints: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Transaction): Transaction { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string tx_hash */ 1: + message.txHash = reader.string(); + break; + case /* int64 amount */ 2: + message.amount = reader.int64().toBigInt(); + break; + case /* int32 num_confirmations */ 3: + message.numConfirmations = reader.int32(); + break; + case /* string block_hash */ 4: + message.blockHash = reader.string(); + break; + case /* int32 block_height */ 5: + message.blockHeight = reader.int32(); + break; + case /* int64 time_stamp */ 6: + message.timeStamp = reader.int64().toBigInt(); + break; + case /* int64 total_fees */ 7: + message.totalFees = reader.int64().toBigInt(); + break; + case /* repeated string dest_addresses = 8 [deprecated = true];*/ 8: + message.destAddresses.push(reader.string()); + break; + case /* repeated lnrpc.OutputDetail output_details */ 11: + message.outputDetails.push(OutputDetail.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* string raw_tx_hex */ 9: + message.rawTxHex = reader.string(); + break; + case /* string label */ 10: + message.label = reader.string(); + break; + case /* repeated lnrpc.PreviousOutPoint previous_outpoints */ 12: + message.previousOutpoints.push(PreviousOutPoint.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: Transaction, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string tx_hash = 1; */ + if (message.txHash !== "") + writer.tag(1, WireType.LengthDelimited).string(message.txHash); + /* int64 amount = 2; */ + if (message.amount !== 0n) + writer.tag(2, WireType.Varint).int64(message.amount); + /* int32 num_confirmations = 3; */ + if (message.numConfirmations !== 0) + writer.tag(3, WireType.Varint).int32(message.numConfirmations); + /* string block_hash = 4; */ + if (message.blockHash !== "") + writer.tag(4, WireType.LengthDelimited).string(message.blockHash); + /* int32 block_height = 5; */ + if (message.blockHeight !== 0) + writer.tag(5, WireType.Varint).int32(message.blockHeight); + /* int64 time_stamp = 6; */ + if (message.timeStamp !== 0n) + writer.tag(6, WireType.Varint).int64(message.timeStamp); + /* int64 total_fees = 7; */ + if (message.totalFees !== 0n) + writer.tag(7, WireType.Varint).int64(message.totalFees); + /* repeated string dest_addresses = 8 [deprecated = true]; */ + for (let i = 0; i < message.destAddresses.length; i++) + writer.tag(8, WireType.LengthDelimited).string(message.destAddresses[i]); + /* repeated lnrpc.OutputDetail output_details = 11; */ + for (let i = 0; i < message.outputDetails.length; i++) + OutputDetail.internalBinaryWrite(message.outputDetails[i], writer.tag(11, WireType.LengthDelimited).fork(), options).join(); + /* string raw_tx_hex = 9; */ + if (message.rawTxHex !== "") + writer.tag(9, WireType.LengthDelimited).string(message.rawTxHex); + /* string label = 10; */ + if (message.label !== "") + writer.tag(10, WireType.LengthDelimited).string(message.label); + /* repeated lnrpc.PreviousOutPoint previous_outpoints = 12; */ + for (let i = 0; i < message.previousOutpoints.length; i++) + PreviousOutPoint.internalBinaryWrite(message.previousOutpoints[i], writer.tag(12, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.Transaction + */ +export const Transaction = new Transaction$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class GetTransactionsRequest$Type extends MessageType { + constructor() { + super("lnrpc.GetTransactionsRequest", [ + { no: 1, name: "start_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 2, name: "end_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 3, name: "account", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): GetTransactionsRequest { + const message = { startHeight: 0, endHeight: 0, account: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetTransactionsRequest): GetTransactionsRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* int32 start_height */ 1: + message.startHeight = reader.int32(); + break; + case /* int32 end_height */ 2: + message.endHeight = reader.int32(); + break; + case /* string account */ 3: + message.account = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: GetTransactionsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* int32 start_height = 1; */ + if (message.startHeight !== 0) + writer.tag(1, WireType.Varint).int32(message.startHeight); + /* int32 end_height = 2; */ + if (message.endHeight !== 0) + writer.tag(2, WireType.Varint).int32(message.endHeight); + /* string account = 3; */ + if (message.account !== "") + writer.tag(3, WireType.LengthDelimited).string(message.account); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.GetTransactionsRequest + */ +export const GetTransactionsRequest = new GetTransactionsRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class TransactionDetails$Type extends MessageType { + constructor() { + super("lnrpc.TransactionDetails", [ + { no: 1, name: "transactions", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Transaction } + ]); + } + create(value?: PartialMessage): TransactionDetails { + const message = { transactions: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TransactionDetails): TransactionDetails { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.Transaction transactions */ 1: + message.transactions.push(Transaction.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: TransactionDetails, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.Transaction transactions = 1; */ + for (let i = 0; i < message.transactions.length; i++) + Transaction.internalBinaryWrite(message.transactions[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.TransactionDetails + */ +export const TransactionDetails = new TransactionDetails$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class FeeLimit$Type extends MessageType { + constructor() { + super("lnrpc.FeeLimit", [ + { no: 1, name: "fixed", kind: "scalar", oneof: "limit", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "fixed_msat", kind: "scalar", oneof: "limit", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "percent", kind: "scalar", oneof: "limit", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): FeeLimit { + const message = { limit: { oneofKind: undefined } }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FeeLimit): FeeLimit { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* int64 fixed */ 1: + message.limit = { + oneofKind: "fixed", + fixed: reader.int64().toBigInt() + }; + break; + case /* int64 fixed_msat */ 3: + message.limit = { + oneofKind: "fixedMsat", + fixedMsat: reader.int64().toBigInt() + }; + break; + case /* int64 percent */ 2: + message.limit = { + oneofKind: "percent", + percent: reader.int64().toBigInt() + }; + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: FeeLimit, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* int64 fixed = 1; */ + if (message.limit.oneofKind === "fixed") + writer.tag(1, WireType.Varint).int64(message.limit.fixed); + /* int64 fixed_msat = 3; */ + if (message.limit.oneofKind === "fixedMsat") + writer.tag(3, WireType.Varint).int64(message.limit.fixedMsat); + /* int64 percent = 2; */ + if (message.limit.oneofKind === "percent") + writer.tag(2, WireType.Varint).int64(message.limit.percent); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.FeeLimit + */ +export const FeeLimit = new FeeLimit$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SendRequest$Type extends MessageType { + constructor() { + super("lnrpc.SendRequest", [ + { no: 1, name: "dest", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "dest_string", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 3, name: "amt", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 12, name: "amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 5, name: "payment_hash_string", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 6, name: "payment_request", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 7, name: "final_cltv_delta", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 8, name: "fee_limit", kind: "message", T: () => FeeLimit }, + { no: 9, name: "outgoing_chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 13, name: "last_hop_pubkey", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 10, name: "cltv_limit", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 11, name: "dest_custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } }, + { no: 14, name: "allow_self_payment", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 15, name: "dest_features", kind: "enum", repeat: 1 /*RepeatType.PACKED*/, T: () => ["lnrpc.FeatureBit", FeatureBit] }, + { no: 16, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): SendRequest { + const message = { dest: new Uint8Array(0), destString: "", amt: 0n, amtMsat: 0n, paymentHash: new Uint8Array(0), paymentHashString: "", paymentRequest: "", finalCltvDelta: 0, outgoingChanId: "0", lastHopPubkey: new Uint8Array(0), cltvLimit: 0, destCustomRecords: {}, allowSelfPayment: false, destFeatures: [], paymentAddr: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendRequest): SendRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes dest */ 1: + message.dest = reader.bytes(); + break; + case /* string dest_string = 2 [deprecated = true];*/ 2: + message.destString = reader.string(); + break; + case /* int64 amt */ 3: + message.amt = reader.int64().toBigInt(); + break; + case /* int64 amt_msat */ 12: + message.amtMsat = reader.int64().toBigInt(); + break; + case /* bytes payment_hash */ 4: + message.paymentHash = reader.bytes(); + break; + case /* string payment_hash_string = 5 [deprecated = true];*/ 5: + message.paymentHashString = reader.string(); + break; + case /* string payment_request */ 6: + message.paymentRequest = reader.string(); + break; + case /* int32 final_cltv_delta */ 7: + message.finalCltvDelta = reader.int32(); + break; + case /* lnrpc.FeeLimit fee_limit */ 8: + message.feeLimit = FeeLimit.internalBinaryRead(reader, reader.uint32(), options, message.feeLimit); + break; + case /* uint64 outgoing_chan_id = 9 [jstype = JS_STRING];*/ 9: + message.outgoingChanId = reader.uint64().toString(); + break; + case /* bytes last_hop_pubkey */ 13: + message.lastHopPubkey = reader.bytes(); + break; + case /* uint32 cltv_limit */ 10: + message.cltvLimit = reader.uint32(); + break; + case /* map dest_custom_records */ 11: + this.binaryReadMap11(message.destCustomRecords, reader, options); + break; + case /* bool allow_self_payment */ 14: + message.allowSelfPayment = reader.bool(); + break; + case /* repeated lnrpc.FeatureBit dest_features */ 15: + if (wireType === WireType.LengthDelimited) + for (let e = reader.int32() + reader.pos; reader.pos < e;) + message.destFeatures.push(reader.int32()); + else + message.destFeatures.push(reader.int32()); + break; + case /* bytes payment_addr */ 16: + message.paymentAddr = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap11(map: SendRequest["destCustomRecords"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof SendRequest["destCustomRecords"] | undefined, val: SendRequest["destCustomRecords"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.uint64().toString(); + break; + case 2: + val = reader.bytes(); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.SendRequest.dest_custom_records"); + } + } + map[key ?? "0"] = val ?? new Uint8Array(0); + } + internalBinaryWrite(message: SendRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes dest = 1; */ + if (message.dest.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.dest); + /* string dest_string = 2 [deprecated = true]; */ + if (message.destString !== "") + writer.tag(2, WireType.LengthDelimited).string(message.destString); + /* int64 amt = 3; */ + if (message.amt !== 0n) + writer.tag(3, WireType.Varint).int64(message.amt); + /* int64 amt_msat = 12; */ + if (message.amtMsat !== 0n) + writer.tag(12, WireType.Varint).int64(message.amtMsat); + /* bytes payment_hash = 4; */ + if (message.paymentHash.length) + writer.tag(4, WireType.LengthDelimited).bytes(message.paymentHash); + /* string payment_hash_string = 5 [deprecated = true]; */ + if (message.paymentHashString !== "") + writer.tag(5, WireType.LengthDelimited).string(message.paymentHashString); + /* string payment_request = 6; */ + if (message.paymentRequest !== "") + writer.tag(6, WireType.LengthDelimited).string(message.paymentRequest); + /* int32 final_cltv_delta = 7; */ + if (message.finalCltvDelta !== 0) + writer.tag(7, WireType.Varint).int32(message.finalCltvDelta); + /* lnrpc.FeeLimit fee_limit = 8; */ + if (message.feeLimit) + FeeLimit.internalBinaryWrite(message.feeLimit, writer.tag(8, WireType.LengthDelimited).fork(), options).join(); + /* uint64 outgoing_chan_id = 9 [jstype = JS_STRING]; */ + if (message.outgoingChanId !== "0") + writer.tag(9, WireType.Varint).uint64(message.outgoingChanId); + /* bytes last_hop_pubkey = 13; */ + if (message.lastHopPubkey.length) + writer.tag(13, WireType.LengthDelimited).bytes(message.lastHopPubkey); + /* uint32 cltv_limit = 10; */ + if (message.cltvLimit !== 0) + writer.tag(10, WireType.Varint).uint32(message.cltvLimit); + /* map dest_custom_records = 11; */ + for (let k of Object.keys(message.destCustomRecords)) + writer.tag(11, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint64(k).tag(2, WireType.LengthDelimited).bytes(message.destCustomRecords[k]).join(); + /* bool allow_self_payment = 14; */ + if (message.allowSelfPayment !== false) + writer.tag(14, WireType.Varint).bool(message.allowSelfPayment); + /* repeated lnrpc.FeatureBit dest_features = 15; */ + if (message.destFeatures.length) { + writer.tag(15, WireType.LengthDelimited).fork(); + for (let i = 0; i < message.destFeatures.length; i++) + writer.int32(message.destFeatures[i]); + writer.join(); + } + /* bytes payment_addr = 16; */ + if (message.paymentAddr.length) + writer.tag(16, WireType.LengthDelimited).bytes(message.paymentAddr); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.SendRequest + */ +export const SendRequest = new SendRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SendResponse$Type extends MessageType { + constructor() { + super("lnrpc.SendResponse", [ + { no: 1, name: "payment_error", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "payment_preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "payment_route", kind: "message", T: () => Route }, + { no: 4, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): SendResponse { + const message = { paymentError: "", paymentPreimage: new Uint8Array(0), paymentHash: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendResponse): SendResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string payment_error */ 1: + message.paymentError = reader.string(); + break; + case /* bytes payment_preimage */ 2: + message.paymentPreimage = reader.bytes(); + break; + case /* lnrpc.Route payment_route */ 3: + message.paymentRoute = Route.internalBinaryRead(reader, reader.uint32(), options, message.paymentRoute); + break; + case /* bytes payment_hash */ 4: + message.paymentHash = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: SendResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string payment_error = 1; */ + if (message.paymentError !== "") + writer.tag(1, WireType.LengthDelimited).string(message.paymentError); + /* bytes payment_preimage = 2; */ + if (message.paymentPreimage.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.paymentPreimage); + /* lnrpc.Route payment_route = 3; */ + if (message.paymentRoute) + Route.internalBinaryWrite(message.paymentRoute, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); + /* bytes payment_hash = 4; */ + if (message.paymentHash.length) + writer.tag(4, WireType.LengthDelimited).bytes(message.paymentHash); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.SendResponse + */ +export const SendResponse = new SendResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SendToRouteRequest$Type extends MessageType { + constructor() { + super("lnrpc.SendToRouteRequest", [ + { no: 1, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "payment_hash_string", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 4, name: "route", kind: "message", T: () => Route } + ]); + } + create(value?: PartialMessage): SendToRouteRequest { + const message = { paymentHash: new Uint8Array(0), paymentHashString: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendToRouteRequest): SendToRouteRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes payment_hash */ 1: + message.paymentHash = reader.bytes(); + break; + case /* string payment_hash_string = 2 [deprecated = true];*/ 2: + message.paymentHashString = reader.string(); + break; + case /* lnrpc.Route route */ 4: + message.route = Route.internalBinaryRead(reader, reader.uint32(), options, message.route); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: SendToRouteRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes payment_hash = 1; */ + if (message.paymentHash.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.paymentHash); + /* string payment_hash_string = 2 [deprecated = true]; */ + if (message.paymentHashString !== "") + writer.tag(2, WireType.LengthDelimited).string(message.paymentHashString); + /* lnrpc.Route route = 4; */ + if (message.route) + Route.internalBinaryWrite(message.route, writer.tag(4, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.SendToRouteRequest + */ +export const SendToRouteRequest = new SendToRouteRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelAcceptRequest$Type extends MessageType { + constructor() { + super("lnrpc.ChannelAcceptRequest", [ + { no: 1, name: "node_pubkey", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "chain_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 4, name: "funding_amt", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "push_amt", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "dust_limit", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "max_value_in_flight", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 8, name: "channel_reserve", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 9, name: "min_htlc", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 10, name: "fee_per_kw", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 11, name: "csv_delay", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 12, name: "max_accepted_htlcs", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 13, name: "channel_flags", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 14, name: "commitment_type", kind: "enum", T: () => ["lnrpc.CommitmentType", CommitmentType] }, + { no: 15, name: "wants_zero_conf", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 16, name: "wants_scid_alias", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): ChannelAcceptRequest { + const message = { nodePubkey: new Uint8Array(0), chainHash: new Uint8Array(0), pendingChanId: new Uint8Array(0), fundingAmt: 0n, pushAmt: 0n, dustLimit: 0n, maxValueInFlight: 0n, channelReserve: 0n, minHtlc: 0n, feePerKw: 0n, csvDelay: 0, maxAcceptedHtlcs: 0, channelFlags: 0, commitmentType: 0, wantsZeroConf: false, wantsScidAlias: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelAcceptRequest): ChannelAcceptRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes node_pubkey */ 1: + message.nodePubkey = reader.bytes(); + break; + case /* bytes chain_hash */ 2: + message.chainHash = reader.bytes(); + break; + case /* bytes pending_chan_id */ 3: + message.pendingChanId = reader.bytes(); + break; + case /* uint64 funding_amt */ 4: + message.fundingAmt = reader.uint64().toBigInt(); + break; + case /* uint64 push_amt */ 5: + message.pushAmt = reader.uint64().toBigInt(); + break; + case /* uint64 dust_limit */ 6: + message.dustLimit = reader.uint64().toBigInt(); + break; + case /* uint64 max_value_in_flight */ 7: + message.maxValueInFlight = reader.uint64().toBigInt(); + break; + case /* uint64 channel_reserve */ 8: + message.channelReserve = reader.uint64().toBigInt(); + break; + case /* uint64 min_htlc */ 9: + message.minHtlc = reader.uint64().toBigInt(); + break; + case /* uint64 fee_per_kw */ 10: + message.feePerKw = reader.uint64().toBigInt(); + break; + case /* uint32 csv_delay */ 11: + message.csvDelay = reader.uint32(); + break; + case /* uint32 max_accepted_htlcs */ 12: + message.maxAcceptedHtlcs = reader.uint32(); + break; + case /* uint32 channel_flags */ 13: + message.channelFlags = reader.uint32(); + break; + case /* lnrpc.CommitmentType commitment_type */ 14: + message.commitmentType = reader.int32(); + break; + case /* bool wants_zero_conf */ 15: + message.wantsZeroConf = reader.bool(); + break; + case /* bool wants_scid_alias */ 16: + message.wantsScidAlias = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChannelAcceptRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes node_pubkey = 1; */ + if (message.nodePubkey.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.nodePubkey); + /* bytes chain_hash = 2; */ + if (message.chainHash.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.chainHash); + /* bytes pending_chan_id = 3; */ + if (message.pendingChanId.length) + writer.tag(3, WireType.LengthDelimited).bytes(message.pendingChanId); + /* uint64 funding_amt = 4; */ + if (message.fundingAmt !== 0n) + writer.tag(4, WireType.Varint).uint64(message.fundingAmt); + /* uint64 push_amt = 5; */ + if (message.pushAmt !== 0n) + writer.tag(5, WireType.Varint).uint64(message.pushAmt); + /* uint64 dust_limit = 6; */ + if (message.dustLimit !== 0n) + writer.tag(6, WireType.Varint).uint64(message.dustLimit); + /* uint64 max_value_in_flight = 7; */ + if (message.maxValueInFlight !== 0n) + writer.tag(7, WireType.Varint).uint64(message.maxValueInFlight); + /* uint64 channel_reserve = 8; */ + if (message.channelReserve !== 0n) + writer.tag(8, WireType.Varint).uint64(message.channelReserve); + /* uint64 min_htlc = 9; */ + if (message.minHtlc !== 0n) + writer.tag(9, WireType.Varint).uint64(message.minHtlc); + /* uint64 fee_per_kw = 10; */ + if (message.feePerKw !== 0n) + writer.tag(10, WireType.Varint).uint64(message.feePerKw); + /* uint32 csv_delay = 11; */ + if (message.csvDelay !== 0) + writer.tag(11, WireType.Varint).uint32(message.csvDelay); + /* uint32 max_accepted_htlcs = 12; */ + if (message.maxAcceptedHtlcs !== 0) + writer.tag(12, WireType.Varint).uint32(message.maxAcceptedHtlcs); + /* uint32 channel_flags = 13; */ + if (message.channelFlags !== 0) + writer.tag(13, WireType.Varint).uint32(message.channelFlags); + /* lnrpc.CommitmentType commitment_type = 14; */ + if (message.commitmentType !== 0) + writer.tag(14, WireType.Varint).int32(message.commitmentType); + /* bool wants_zero_conf = 15; */ + if (message.wantsZeroConf !== false) + writer.tag(15, WireType.Varint).bool(message.wantsZeroConf); + /* bool wants_scid_alias = 16; */ + if (message.wantsScidAlias !== false) + writer.tag(16, WireType.Varint).bool(message.wantsScidAlias); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelAcceptRequest + */ +export const ChannelAcceptRequest = new ChannelAcceptRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelAcceptResponse$Type extends MessageType { + constructor() { + super("lnrpc.ChannelAcceptResponse", [ + { no: 1, name: "accept", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 2, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "error", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 4, name: "upfront_shutdown", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 5, name: "csv_delay", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 6, name: "reserve_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "in_flight_max_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 8, name: "max_htlc_count", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 9, name: "min_htlc_in", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 10, name: "min_accept_depth", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 11, name: "zero_conf", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): ChannelAcceptResponse { + const message = { accept: false, pendingChanId: new Uint8Array(0), error: "", upfrontShutdown: "", csvDelay: 0, reserveSat: 0n, inFlightMaxMsat: 0n, maxHtlcCount: 0, minHtlcIn: 0n, minAcceptDepth: 0, zeroConf: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelAcceptResponse): ChannelAcceptResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool accept */ 1: + message.accept = reader.bool(); + break; + case /* bytes pending_chan_id */ 2: + message.pendingChanId = reader.bytes(); + break; + case /* string error */ 3: + message.error = reader.string(); + break; + case /* string upfront_shutdown */ 4: + message.upfrontShutdown = reader.string(); + break; + case /* uint32 csv_delay */ 5: + message.csvDelay = reader.uint32(); + break; + case /* uint64 reserve_sat */ 6: + message.reserveSat = reader.uint64().toBigInt(); + break; + case /* uint64 in_flight_max_msat */ 7: + message.inFlightMaxMsat = reader.uint64().toBigInt(); + break; + case /* uint32 max_htlc_count */ 8: + message.maxHtlcCount = reader.uint32(); + break; + case /* uint64 min_htlc_in */ 9: + message.minHtlcIn = reader.uint64().toBigInt(); + break; + case /* uint32 min_accept_depth */ 10: + message.minAcceptDepth = reader.uint32(); + break; + case /* bool zero_conf */ 11: + message.zeroConf = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChannelAcceptResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool accept = 1; */ + if (message.accept !== false) + writer.tag(1, WireType.Varint).bool(message.accept); + /* bytes pending_chan_id = 2; */ + if (message.pendingChanId.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.pendingChanId); + /* string error = 3; */ + if (message.error !== "") + writer.tag(3, WireType.LengthDelimited).string(message.error); + /* string upfront_shutdown = 4; */ + if (message.upfrontShutdown !== "") + writer.tag(4, WireType.LengthDelimited).string(message.upfrontShutdown); + /* uint32 csv_delay = 5; */ + if (message.csvDelay !== 0) + writer.tag(5, WireType.Varint).uint32(message.csvDelay); + /* uint64 reserve_sat = 6; */ + if (message.reserveSat !== 0n) + writer.tag(6, WireType.Varint).uint64(message.reserveSat); + /* uint64 in_flight_max_msat = 7; */ + if (message.inFlightMaxMsat !== 0n) + writer.tag(7, WireType.Varint).uint64(message.inFlightMaxMsat); + /* uint32 max_htlc_count = 8; */ + if (message.maxHtlcCount !== 0) + writer.tag(8, WireType.Varint).uint32(message.maxHtlcCount); + /* uint64 min_htlc_in = 9; */ + if (message.minHtlcIn !== 0n) + writer.tag(9, WireType.Varint).uint64(message.minHtlcIn); + /* uint32 min_accept_depth = 10; */ + if (message.minAcceptDepth !== 0) + writer.tag(10, WireType.Varint).uint32(message.minAcceptDepth); + /* bool zero_conf = 11; */ + if (message.zeroConf !== false) + writer.tag(11, WireType.Varint).bool(message.zeroConf); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelAcceptResponse + */ +export const ChannelAcceptResponse = new ChannelAcceptResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelPoint$Type extends MessageType { + constructor() { + super("lnrpc.ChannelPoint", [ + { no: 1, name: "funding_txid_bytes", kind: "scalar", oneof: "fundingTxid", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "funding_txid_str", kind: "scalar", oneof: "fundingTxid", T: 9 /*ScalarType.STRING*/ }, + { no: 3, name: "output_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } + ]); + } + create(value?: PartialMessage): ChannelPoint { + const message = { fundingTxid: { oneofKind: undefined }, outputIndex: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelPoint): ChannelPoint { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes funding_txid_bytes */ 1: + message.fundingTxid = { + oneofKind: "fundingTxidBytes", + fundingTxidBytes: reader.bytes() + }; + break; + case /* string funding_txid_str */ 2: + message.fundingTxid = { + oneofKind: "fundingTxidStr", + fundingTxidStr: reader.string() + }; + break; + case /* uint32 output_index */ 3: + message.outputIndex = reader.uint32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChannelPoint, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes funding_txid_bytes = 1; */ + if (message.fundingTxid.oneofKind === "fundingTxidBytes") + writer.tag(1, WireType.LengthDelimited).bytes(message.fundingTxid.fundingTxidBytes); + /* string funding_txid_str = 2; */ + if (message.fundingTxid.oneofKind === "fundingTxidStr") + writer.tag(2, WireType.LengthDelimited).string(message.fundingTxid.fundingTxidStr); + /* uint32 output_index = 3; */ + if (message.outputIndex !== 0) + writer.tag(3, WireType.Varint).uint32(message.outputIndex); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelPoint + */ +export const ChannelPoint = new ChannelPoint$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class OutPoint$Type extends MessageType { + constructor() { + super("lnrpc.OutPoint", [ + { no: 1, name: "txid_bytes", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "txid_str", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 3, name: "output_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } + ]); + } + create(value?: PartialMessage): OutPoint { + const message = { txidBytes: new Uint8Array(0), txidStr: "", outputIndex: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: OutPoint): OutPoint { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes txid_bytes */ 1: + message.txidBytes = reader.bytes(); + break; + case /* string txid_str */ 2: + message.txidStr = reader.string(); + break; + case /* uint32 output_index */ 3: + message.outputIndex = reader.uint32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: OutPoint, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes txid_bytes = 1; */ + if (message.txidBytes.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.txidBytes); + /* string txid_str = 2; */ + if (message.txidStr !== "") + writer.tag(2, WireType.LengthDelimited).string(message.txidStr); + /* uint32 output_index = 3; */ + if (message.outputIndex !== 0) + writer.tag(3, WireType.Varint).uint32(message.outputIndex); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.OutPoint + */ +export const OutPoint = new OutPoint$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PreviousOutPoint$Type extends MessageType { + constructor() { + super("lnrpc.PreviousOutPoint", [ + { no: 1, name: "outpoint", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "is_our_output", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): PreviousOutPoint { + const message = { outpoint: "", isOurOutput: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PreviousOutPoint): PreviousOutPoint { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string outpoint */ 1: + message.outpoint = reader.string(); + break; + case /* bool is_our_output */ 2: + message.isOurOutput = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PreviousOutPoint, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string outpoint = 1; */ + if (message.outpoint !== "") + writer.tag(1, WireType.LengthDelimited).string(message.outpoint); + /* bool is_our_output = 2; */ + if (message.isOurOutput !== false) + writer.tag(2, WireType.Varint).bool(message.isOurOutput); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PreviousOutPoint + */ +export const PreviousOutPoint = new PreviousOutPoint$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class LightningAddress$Type extends MessageType { + constructor() { + super("lnrpc.LightningAddress", [ + { no: 1, name: "pubkey", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "host", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): LightningAddress { + const message = { pubkey: "", host: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LightningAddress): LightningAddress { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string pubkey */ 1: + message.pubkey = reader.string(); + break; + case /* string host */ 2: + message.host = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: LightningAddress, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string pubkey = 1; */ + if (message.pubkey !== "") + writer.tag(1, WireType.LengthDelimited).string(message.pubkey); + /* string host = 2; */ + if (message.host !== "") + writer.tag(2, WireType.LengthDelimited).string(message.host); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.LightningAddress + */ +export const LightningAddress = new LightningAddress$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class EstimateFeeRequest$Type extends MessageType { + constructor() { + super("lnrpc.EstimateFeeRequest", [ + { no: 1, name: "AddrToAmount", kind: "map", jsonName: "AddrToAmount", K: 9 /*ScalarType.STRING*/, V: { kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } }, + { no: 2, name: "target_conf", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 3, name: "min_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 4, name: "spend_unconfirmed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 5, name: "coin_selection_strategy", kind: "enum", T: () => ["lnrpc.CoinSelectionStrategy", CoinSelectionStrategy] } + ]); + } + create(value?: PartialMessage): EstimateFeeRequest { + const message = { addrToAmount: {}, targetConf: 0, minConfs: 0, spendUnconfirmed: false, coinSelectionStrategy: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: EstimateFeeRequest): EstimateFeeRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* map AddrToAmount = 1 [json_name = "AddrToAmount"];*/ 1: + this.binaryReadMap1(message.addrToAmount, reader, options); + break; + case /* int32 target_conf */ 2: + message.targetConf = reader.int32(); + break; + case /* int32 min_confs */ 3: + message.minConfs = reader.int32(); + break; + case /* bool spend_unconfirmed */ 4: + message.spendUnconfirmed = reader.bool(); + break; + case /* lnrpc.CoinSelectionStrategy coin_selection_strategy */ 5: + message.coinSelectionStrategy = reader.int32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap1(map: EstimateFeeRequest["addrToAmount"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof EstimateFeeRequest["addrToAmount"] | undefined, val: EstimateFeeRequest["addrToAmount"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.string(); + break; + case 2: + val = reader.int64().toBigInt(); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.EstimateFeeRequest.AddrToAmount"); + } + } + map[key ?? ""] = val ?? 0n; + } + internalBinaryWrite(message: EstimateFeeRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* map AddrToAmount = 1 [json_name = "AddrToAmount"]; */ + for (let k of Object.keys(message.addrToAmount)) + writer.tag(1, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k).tag(2, WireType.Varint).int64(message.addrToAmount[k]).join(); + /* int32 target_conf = 2; */ + if (message.targetConf !== 0) + writer.tag(2, WireType.Varint).int32(message.targetConf); + /* int32 min_confs = 3; */ + if (message.minConfs !== 0) + writer.tag(3, WireType.Varint).int32(message.minConfs); + /* bool spend_unconfirmed = 4; */ + if (message.spendUnconfirmed !== false) + writer.tag(4, WireType.Varint).bool(message.spendUnconfirmed); + /* lnrpc.CoinSelectionStrategy coin_selection_strategy = 5; */ + if (message.coinSelectionStrategy !== 0) + writer.tag(5, WireType.Varint).int32(message.coinSelectionStrategy); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.EstimateFeeRequest + */ +export const EstimateFeeRequest = new EstimateFeeRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class EstimateFeeResponse$Type extends MessageType { + constructor() { + super("lnrpc.EstimateFeeResponse", [ + { no: 1, name: "fee_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "feerate_sat_per_byte", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "sat_per_vbyte", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): EstimateFeeResponse { + const message = { feeSat: 0n, feerateSatPerByte: 0n, satPerVbyte: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: EstimateFeeResponse): EstimateFeeResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* int64 fee_sat */ 1: + message.feeSat = reader.int64().toBigInt(); + break; + case /* int64 feerate_sat_per_byte = 2 [deprecated = true];*/ 2: + message.feerateSatPerByte = reader.int64().toBigInt(); + break; + case /* uint64 sat_per_vbyte */ 3: + message.satPerVbyte = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: EstimateFeeResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* int64 fee_sat = 1; */ + if (message.feeSat !== 0n) + writer.tag(1, WireType.Varint).int64(message.feeSat); + /* int64 feerate_sat_per_byte = 2 [deprecated = true]; */ + if (message.feerateSatPerByte !== 0n) + writer.tag(2, WireType.Varint).int64(message.feerateSatPerByte); + /* uint64 sat_per_vbyte = 3; */ + if (message.satPerVbyte !== 0n) + writer.tag(3, WireType.Varint).uint64(message.satPerVbyte); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.EstimateFeeResponse + */ +export const EstimateFeeResponse = new EstimateFeeResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SendManyRequest$Type extends MessageType { + constructor() { + super("lnrpc.SendManyRequest", [ + { no: 1, name: "AddrToAmount", kind: "map", jsonName: "AddrToAmount", K: 9 /*ScalarType.STRING*/, V: { kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } }, + { no: 3, name: "target_conf", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 4, name: "sat_per_vbyte", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "sat_per_byte", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "label", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 7, name: "min_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 8, name: "spend_unconfirmed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 9, name: "coin_selection_strategy", kind: "enum", T: () => ["lnrpc.CoinSelectionStrategy", CoinSelectionStrategy] } + ]); + } + create(value?: PartialMessage): SendManyRequest { + const message = { addrToAmount: {}, targetConf: 0, satPerVbyte: 0n, satPerByte: 0n, label: "", minConfs: 0, spendUnconfirmed: false, coinSelectionStrategy: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendManyRequest): SendManyRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* map AddrToAmount = 1 [json_name = "AddrToAmount"];*/ 1: + this.binaryReadMap1(message.addrToAmount, reader, options); + break; + case /* int32 target_conf */ 3: + message.targetConf = reader.int32(); + break; + case /* uint64 sat_per_vbyte */ 4: + message.satPerVbyte = reader.uint64().toBigInt(); + break; + case /* int64 sat_per_byte = 5 [deprecated = true];*/ 5: + message.satPerByte = reader.int64().toBigInt(); + break; + case /* string label */ 6: + message.label = reader.string(); + break; + case /* int32 min_confs */ 7: + message.minConfs = reader.int32(); + break; + case /* bool spend_unconfirmed */ 8: + message.spendUnconfirmed = reader.bool(); + break; + case /* lnrpc.CoinSelectionStrategy coin_selection_strategy */ 9: + message.coinSelectionStrategy = reader.int32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap1(map: SendManyRequest["addrToAmount"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof SendManyRequest["addrToAmount"] | undefined, val: SendManyRequest["addrToAmount"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.string(); + break; + case 2: + val = reader.int64().toBigInt(); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.SendManyRequest.AddrToAmount"); + } + } + map[key ?? ""] = val ?? 0n; + } + internalBinaryWrite(message: SendManyRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* map AddrToAmount = 1 [json_name = "AddrToAmount"]; */ + for (let k of Object.keys(message.addrToAmount)) + writer.tag(1, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k).tag(2, WireType.Varint).int64(message.addrToAmount[k]).join(); + /* int32 target_conf = 3; */ + if (message.targetConf !== 0) + writer.tag(3, WireType.Varint).int32(message.targetConf); + /* uint64 sat_per_vbyte = 4; */ + if (message.satPerVbyte !== 0n) + writer.tag(4, WireType.Varint).uint64(message.satPerVbyte); + /* int64 sat_per_byte = 5 [deprecated = true]; */ + if (message.satPerByte !== 0n) + writer.tag(5, WireType.Varint).int64(message.satPerByte); + /* string label = 6; */ + if (message.label !== "") + writer.tag(6, WireType.LengthDelimited).string(message.label); + /* int32 min_confs = 7; */ + if (message.minConfs !== 0) + writer.tag(7, WireType.Varint).int32(message.minConfs); + /* bool spend_unconfirmed = 8; */ + if (message.spendUnconfirmed !== false) + writer.tag(8, WireType.Varint).bool(message.spendUnconfirmed); + /* lnrpc.CoinSelectionStrategy coin_selection_strategy = 9; */ + if (message.coinSelectionStrategy !== 0) + writer.tag(9, WireType.Varint).int32(message.coinSelectionStrategy); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.SendManyRequest + */ +export const SendManyRequest = new SendManyRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SendManyResponse$Type extends MessageType { + constructor() { + super("lnrpc.SendManyResponse", [ + { no: 1, name: "txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): SendManyResponse { + const message = { txid: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendManyResponse): SendManyResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string txid */ 1: + message.txid = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: SendManyResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string txid = 1; */ + if (message.txid !== "") + writer.tag(1, WireType.LengthDelimited).string(message.txid); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.SendManyResponse + */ +export const SendManyResponse = new SendManyResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SendCoinsRequest$Type extends MessageType { + constructor() { + super("lnrpc.SendCoinsRequest", [ + { no: 1, name: "addr", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "amount", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "target_conf", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 4, name: "sat_per_vbyte", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "sat_per_byte", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "send_all", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 7, name: "label", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 8, name: "min_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 9, name: "spend_unconfirmed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 10, name: "coin_selection_strategy", kind: "enum", T: () => ["lnrpc.CoinSelectionStrategy", CoinSelectionStrategy] }, + { no: 11, name: "outpoints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => OutPoint } + ]); + } + create(value?: PartialMessage): SendCoinsRequest { + const message = { addr: "", amount: 0n, targetConf: 0, satPerVbyte: 0n, satPerByte: 0n, sendAll: false, label: "", minConfs: 0, spendUnconfirmed: false, coinSelectionStrategy: 0, outpoints: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendCoinsRequest): SendCoinsRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string addr */ 1: + message.addr = reader.string(); + break; + case /* int64 amount */ 2: + message.amount = reader.int64().toBigInt(); + break; + case /* int32 target_conf */ 3: + message.targetConf = reader.int32(); + break; + case /* uint64 sat_per_vbyte */ 4: + message.satPerVbyte = reader.uint64().toBigInt(); + break; + case /* int64 sat_per_byte = 5 [deprecated = true];*/ 5: + message.satPerByte = reader.int64().toBigInt(); + break; + case /* bool send_all */ 6: + message.sendAll = reader.bool(); + break; + case /* string label */ 7: + message.label = reader.string(); + break; + case /* int32 min_confs */ 8: + message.minConfs = reader.int32(); + break; + case /* bool spend_unconfirmed */ 9: + message.spendUnconfirmed = reader.bool(); + break; + case /* lnrpc.CoinSelectionStrategy coin_selection_strategy */ 10: + message.coinSelectionStrategy = reader.int32(); + break; + case /* repeated lnrpc.OutPoint outpoints */ 11: + message.outpoints.push(OutPoint.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: SendCoinsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string addr = 1; */ + if (message.addr !== "") + writer.tag(1, WireType.LengthDelimited).string(message.addr); + /* int64 amount = 2; */ + if (message.amount !== 0n) + writer.tag(2, WireType.Varint).int64(message.amount); + /* int32 target_conf = 3; */ + if (message.targetConf !== 0) + writer.tag(3, WireType.Varint).int32(message.targetConf); + /* uint64 sat_per_vbyte = 4; */ + if (message.satPerVbyte !== 0n) + writer.tag(4, WireType.Varint).uint64(message.satPerVbyte); + /* int64 sat_per_byte = 5 [deprecated = true]; */ + if (message.satPerByte !== 0n) + writer.tag(5, WireType.Varint).int64(message.satPerByte); + /* bool send_all = 6; */ + if (message.sendAll !== false) + writer.tag(6, WireType.Varint).bool(message.sendAll); + /* string label = 7; */ + if (message.label !== "") + writer.tag(7, WireType.LengthDelimited).string(message.label); + /* int32 min_confs = 8; */ + if (message.minConfs !== 0) + writer.tag(8, WireType.Varint).int32(message.minConfs); + /* bool spend_unconfirmed = 9; */ + if (message.spendUnconfirmed !== false) + writer.tag(9, WireType.Varint).bool(message.spendUnconfirmed); + /* lnrpc.CoinSelectionStrategy coin_selection_strategy = 10; */ + if (message.coinSelectionStrategy !== 0) + writer.tag(10, WireType.Varint).int32(message.coinSelectionStrategy); + /* repeated lnrpc.OutPoint outpoints = 11; */ + for (let i = 0; i < message.outpoints.length; i++) + OutPoint.internalBinaryWrite(message.outpoints[i], writer.tag(11, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.SendCoinsRequest + */ +export const SendCoinsRequest = new SendCoinsRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SendCoinsResponse$Type extends MessageType { + constructor() { + super("lnrpc.SendCoinsResponse", [ + { no: 1, name: "txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): SendCoinsResponse { + const message = { txid: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendCoinsResponse): SendCoinsResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string txid */ 1: + message.txid = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: SendCoinsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string txid = 1; */ + if (message.txid !== "") + writer.tag(1, WireType.LengthDelimited).string(message.txid); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.SendCoinsResponse + */ +export const SendCoinsResponse = new SendCoinsResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ListUnspentRequest$Type extends MessageType { + constructor() { + super("lnrpc.ListUnspentRequest", [ + { no: 1, name: "min_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 2, name: "max_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 3, name: "account", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): ListUnspentRequest { + const message = { minConfs: 0, maxConfs: 0, account: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListUnspentRequest): ListUnspentRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* int32 min_confs */ 1: + message.minConfs = reader.int32(); + break; + case /* int32 max_confs */ 2: + message.maxConfs = reader.int32(); + break; + case /* string account */ 3: + message.account = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ListUnspentRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* int32 min_confs = 1; */ + if (message.minConfs !== 0) + writer.tag(1, WireType.Varint).int32(message.minConfs); + /* int32 max_confs = 2; */ + if (message.maxConfs !== 0) + writer.tag(2, WireType.Varint).int32(message.maxConfs); + /* string account = 3; */ + if (message.account !== "") + writer.tag(3, WireType.LengthDelimited).string(message.account); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ListUnspentRequest + */ +export const ListUnspentRequest = new ListUnspentRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ListUnspentResponse$Type extends MessageType { + constructor() { + super("lnrpc.ListUnspentResponse", [ + { no: 1, name: "utxos", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Utxo } + ]); + } + create(value?: PartialMessage): ListUnspentResponse { + const message = { utxos: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListUnspentResponse): ListUnspentResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.Utxo utxos */ 1: + message.utxos.push(Utxo.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ListUnspentResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.Utxo utxos = 1; */ + for (let i = 0; i < message.utxos.length; i++) + Utxo.internalBinaryWrite(message.utxos[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ListUnspentResponse + */ +export const ListUnspentResponse = new ListUnspentResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class NewAddressRequest$Type extends MessageType { + constructor() { + super("lnrpc.NewAddressRequest", [ + { no: 1, name: "type", kind: "enum", T: () => ["lnrpc.AddressType", AddressType] }, + { no: 2, name: "account", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): NewAddressRequest { + const message = { type: 0, account: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NewAddressRequest): NewAddressRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.AddressType type */ 1: + message.type = reader.int32(); + break; + case /* string account */ 2: + message.account = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: NewAddressRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.AddressType type = 1; */ + if (message.type !== 0) + writer.tag(1, WireType.Varint).int32(message.type); + /* string account = 2; */ + if (message.account !== "") + writer.tag(2, WireType.LengthDelimited).string(message.account); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.NewAddressRequest + */ +export const NewAddressRequest = new NewAddressRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class NewAddressResponse$Type extends MessageType { + constructor() { + super("lnrpc.NewAddressResponse", [ + { no: 1, name: "address", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): NewAddressResponse { + const message = { address: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NewAddressResponse): NewAddressResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string address */ 1: + message.address = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: NewAddressResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string address = 1; */ + if (message.address !== "") + writer.tag(1, WireType.LengthDelimited).string(message.address); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.NewAddressResponse + */ +export const NewAddressResponse = new NewAddressResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SignMessageRequest$Type extends MessageType { + constructor() { + super("lnrpc.SignMessageRequest", [ + { no: 1, name: "msg", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "single_hash", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): SignMessageRequest { + const message = { msg: new Uint8Array(0), singleHash: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SignMessageRequest): SignMessageRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes msg */ 1: + message.msg = reader.bytes(); + break; + case /* bool single_hash */ 2: + message.singleHash = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: SignMessageRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes msg = 1; */ + if (message.msg.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.msg); + /* bool single_hash = 2; */ + if (message.singleHash !== false) + writer.tag(2, WireType.Varint).bool(message.singleHash); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.SignMessageRequest + */ +export const SignMessageRequest = new SignMessageRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SignMessageResponse$Type extends MessageType { + constructor() { + super("lnrpc.SignMessageResponse", [ + { no: 1, name: "signature", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): SignMessageResponse { + const message = { signature: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SignMessageResponse): SignMessageResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string signature */ 1: + message.signature = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: SignMessageResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string signature = 1; */ + if (message.signature !== "") + writer.tag(1, WireType.LengthDelimited).string(message.signature); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.SignMessageResponse + */ +export const SignMessageResponse = new SignMessageResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class VerifyMessageRequest$Type extends MessageType { + constructor() { + super("lnrpc.VerifyMessageRequest", [ + { no: 1, name: "msg", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "signature", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): VerifyMessageRequest { + const message = { msg: new Uint8Array(0), signature: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: VerifyMessageRequest): VerifyMessageRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes msg */ 1: + message.msg = reader.bytes(); + break; + case /* string signature */ 2: + message.signature = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: VerifyMessageRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes msg = 1; */ + if (message.msg.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.msg); + /* string signature = 2; */ + if (message.signature !== "") + writer.tag(2, WireType.LengthDelimited).string(message.signature); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.VerifyMessageRequest + */ +export const VerifyMessageRequest = new VerifyMessageRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class VerifyMessageResponse$Type extends MessageType { + constructor() { + super("lnrpc.VerifyMessageResponse", [ + { no: 1, name: "valid", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 2, name: "pubkey", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): VerifyMessageResponse { + const message = { valid: false, pubkey: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: VerifyMessageResponse): VerifyMessageResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool valid */ 1: + message.valid = reader.bool(); + break; + case /* string pubkey */ 2: + message.pubkey = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: VerifyMessageResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool valid = 1; */ + if (message.valid !== false) + writer.tag(1, WireType.Varint).bool(message.valid); + /* string pubkey = 2; */ + if (message.pubkey !== "") + writer.tag(2, WireType.LengthDelimited).string(message.pubkey); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.VerifyMessageResponse + */ +export const VerifyMessageResponse = new VerifyMessageResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ConnectPeerRequest$Type extends MessageType { + constructor() { + super("lnrpc.ConnectPeerRequest", [ + { no: 1, name: "addr", kind: "message", T: () => LightningAddress }, + { no: 2, name: "perm", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 3, name: "timeout", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): ConnectPeerRequest { + const message = { perm: false, timeout: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ConnectPeerRequest): ConnectPeerRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.LightningAddress addr */ 1: + message.addr = LightningAddress.internalBinaryRead(reader, reader.uint32(), options, message.addr); + break; + case /* bool perm */ 2: + message.perm = reader.bool(); + break; + case /* uint64 timeout */ 3: + message.timeout = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ConnectPeerRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.LightningAddress addr = 1; */ + if (message.addr) + LightningAddress.internalBinaryWrite(message.addr, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* bool perm = 2; */ + if (message.perm !== false) + writer.tag(2, WireType.Varint).bool(message.perm); + /* uint64 timeout = 3; */ + if (message.timeout !== 0n) + writer.tag(3, WireType.Varint).uint64(message.timeout); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ConnectPeerRequest + */ +export const ConnectPeerRequest = new ConnectPeerRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ConnectPeerResponse$Type extends MessageType { + constructor() { + super("lnrpc.ConnectPeerResponse", []); + } + create(value?: PartialMessage): ConnectPeerResponse { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ConnectPeerResponse): ConnectPeerResponse { + return target ?? this.create(); + } + internalBinaryWrite(message: ConnectPeerResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ConnectPeerResponse + */ +export const ConnectPeerResponse = new ConnectPeerResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class DisconnectPeerRequest$Type extends MessageType { + constructor() { + super("lnrpc.DisconnectPeerRequest", [ + { no: 1, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): DisconnectPeerRequest { + const message = { pubKey: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DisconnectPeerRequest): DisconnectPeerRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string pub_key */ 1: + message.pubKey = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: DisconnectPeerRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string pub_key = 1; */ + if (message.pubKey !== "") + writer.tag(1, WireType.LengthDelimited).string(message.pubKey); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.DisconnectPeerRequest + */ +export const DisconnectPeerRequest = new DisconnectPeerRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class DisconnectPeerResponse$Type extends MessageType { + constructor() { + super("lnrpc.DisconnectPeerResponse", []); + } + create(value?: PartialMessage): DisconnectPeerResponse { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DisconnectPeerResponse): DisconnectPeerResponse { + return target ?? this.create(); + } + internalBinaryWrite(message: DisconnectPeerResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.DisconnectPeerResponse + */ +export const DisconnectPeerResponse = new DisconnectPeerResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class HTLC$Type extends MessageType { + constructor() { + super("lnrpc.HTLC", [ + { no: 1, name: "incoming", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 2, name: "amount", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "hash_lock", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 4, name: "expiration_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 5, name: "htlc_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "forwarding_channel", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "forwarding_htlc_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): HTLC { + const message = { incoming: false, amount: 0n, hashLock: new Uint8Array(0), expirationHeight: 0, htlcIndex: 0n, forwardingChannel: 0n, forwardingHtlcIndex: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: HTLC): HTLC { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool incoming */ 1: + message.incoming = reader.bool(); + break; + case /* int64 amount */ 2: + message.amount = reader.int64().toBigInt(); + break; + case /* bytes hash_lock */ 3: + message.hashLock = reader.bytes(); + break; + case /* uint32 expiration_height */ 4: + message.expirationHeight = reader.uint32(); + break; + case /* uint64 htlc_index */ 5: + message.htlcIndex = reader.uint64().toBigInt(); + break; + case /* uint64 forwarding_channel */ 6: + message.forwardingChannel = reader.uint64().toBigInt(); + break; + case /* uint64 forwarding_htlc_index */ 7: + message.forwardingHtlcIndex = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: HTLC, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool incoming = 1; */ + if (message.incoming !== false) + writer.tag(1, WireType.Varint).bool(message.incoming); + /* int64 amount = 2; */ + if (message.amount !== 0n) + writer.tag(2, WireType.Varint).int64(message.amount); + /* bytes hash_lock = 3; */ + if (message.hashLock.length) + writer.tag(3, WireType.LengthDelimited).bytes(message.hashLock); + /* uint32 expiration_height = 4; */ + if (message.expirationHeight !== 0) + writer.tag(4, WireType.Varint).uint32(message.expirationHeight); + /* uint64 htlc_index = 5; */ + if (message.htlcIndex !== 0n) + writer.tag(5, WireType.Varint).uint64(message.htlcIndex); + /* uint64 forwarding_channel = 6; */ + if (message.forwardingChannel !== 0n) + writer.tag(6, WireType.Varint).uint64(message.forwardingChannel); + /* uint64 forwarding_htlc_index = 7; */ + if (message.forwardingHtlcIndex !== 0n) + writer.tag(7, WireType.Varint).uint64(message.forwardingHtlcIndex); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.HTLC + */ +export const HTLC = new HTLC$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelConstraints$Type extends MessageType { + constructor() { + super("lnrpc.ChannelConstraints", [ + { no: 1, name: "csv_delay", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 2, name: "chan_reserve_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "dust_limit_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "max_pending_amt_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "min_htlc_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "max_accepted_htlcs", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } + ]); + } + create(value?: PartialMessage): ChannelConstraints { + const message = { csvDelay: 0, chanReserveSat: 0n, dustLimitSat: 0n, maxPendingAmtMsat: 0n, minHtlcMsat: 0n, maxAcceptedHtlcs: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelConstraints): ChannelConstraints { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint32 csv_delay */ 1: + message.csvDelay = reader.uint32(); + break; + case /* uint64 chan_reserve_sat */ 2: + message.chanReserveSat = reader.uint64().toBigInt(); + break; + case /* uint64 dust_limit_sat */ 3: + message.dustLimitSat = reader.uint64().toBigInt(); + break; + case /* uint64 max_pending_amt_msat */ 4: + message.maxPendingAmtMsat = reader.uint64().toBigInt(); + break; + case /* uint64 min_htlc_msat */ 5: + message.minHtlcMsat = reader.uint64().toBigInt(); + break; + case /* uint32 max_accepted_htlcs */ 6: + message.maxAcceptedHtlcs = reader.uint32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChannelConstraints, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint32 csv_delay = 1; */ + if (message.csvDelay !== 0) + writer.tag(1, WireType.Varint).uint32(message.csvDelay); + /* uint64 chan_reserve_sat = 2; */ + if (message.chanReserveSat !== 0n) + writer.tag(2, WireType.Varint).uint64(message.chanReserveSat); + /* uint64 dust_limit_sat = 3; */ + if (message.dustLimitSat !== 0n) + writer.tag(3, WireType.Varint).uint64(message.dustLimitSat); + /* uint64 max_pending_amt_msat = 4; */ + if (message.maxPendingAmtMsat !== 0n) + writer.tag(4, WireType.Varint).uint64(message.maxPendingAmtMsat); + /* uint64 min_htlc_msat = 5; */ + if (message.minHtlcMsat !== 0n) + writer.tag(5, WireType.Varint).uint64(message.minHtlcMsat); + /* uint32 max_accepted_htlcs = 6; */ + if (message.maxAcceptedHtlcs !== 0) + writer.tag(6, WireType.Varint).uint32(message.maxAcceptedHtlcs); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelConstraints + */ +export const ChannelConstraints = new ChannelConstraints$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class Channel$Type extends MessageType { + constructor() { + super("lnrpc.Channel", [ + { no: 1, name: "active", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 2, name: "remote_pubkey", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 3, name: "channel_point", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 4, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 5, name: "capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "local_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "remote_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 8, name: "commit_fee", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 9, name: "commit_weight", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 10, name: "fee_per_kw", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 11, name: "unsettled_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 12, name: "total_satoshis_sent", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 13, name: "total_satoshis_received", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 14, name: "num_updates", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 15, name: "pending_htlcs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => HTLC }, + { no: 16, name: "csv_delay", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 17, name: "private", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 18, name: "initiator", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 19, name: "chan_status_flags", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 20, name: "local_chan_reserve_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 21, name: "remote_chan_reserve_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 22, name: "static_remote_key", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 26, name: "commitment_type", kind: "enum", T: () => ["lnrpc.CommitmentType", CommitmentType] }, + { no: 23, name: "lifetime", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 24, name: "uptime", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 25, name: "close_address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 27, name: "push_amount_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 28, name: "thaw_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 29, name: "local_constraints", kind: "message", T: () => ChannelConstraints }, + { no: 30, name: "remote_constraints", kind: "message", T: () => ChannelConstraints }, + { no: 31, name: "alias_scids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 32, name: "zero_conf", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 33, name: "zero_conf_confirmed_scid", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 34, name: "peer_alias", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 35, name: "peer_scid_alias", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 36, name: "memo", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): Channel { + const message = { active: false, remotePubkey: "", channelPoint: "", chanId: "0", capacity: 0n, localBalance: 0n, remoteBalance: 0n, commitFee: 0n, commitWeight: 0n, feePerKw: 0n, unsettledBalance: 0n, totalSatoshisSent: 0n, totalSatoshisReceived: 0n, numUpdates: 0n, pendingHtlcs: [], csvDelay: 0, private: false, initiator: false, chanStatusFlags: "", localChanReserveSat: 0n, remoteChanReserveSat: 0n, staticRemoteKey: false, commitmentType: 0, lifetime: 0n, uptime: 0n, closeAddress: "", pushAmountSat: 0n, thawHeight: 0, aliasScids: [], zeroConf: false, zeroConfConfirmedScid: 0n, peerAlias: "", peerScidAlias: "0", memo: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Channel): Channel { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool active */ 1: + message.active = reader.bool(); + break; + case /* string remote_pubkey */ 2: + message.remotePubkey = reader.string(); + break; + case /* string channel_point */ 3: + message.channelPoint = reader.string(); + break; + case /* uint64 chan_id = 4 [jstype = JS_STRING];*/ 4: + message.chanId = reader.uint64().toString(); + break; + case /* int64 capacity */ 5: + message.capacity = reader.int64().toBigInt(); + break; + case /* int64 local_balance */ 6: + message.localBalance = reader.int64().toBigInt(); + break; + case /* int64 remote_balance */ 7: + message.remoteBalance = reader.int64().toBigInt(); + break; + case /* int64 commit_fee */ 8: + message.commitFee = reader.int64().toBigInt(); + break; + case /* int64 commit_weight */ 9: + message.commitWeight = reader.int64().toBigInt(); + break; + case /* int64 fee_per_kw */ 10: + message.feePerKw = reader.int64().toBigInt(); + break; + case /* int64 unsettled_balance */ 11: + message.unsettledBalance = reader.int64().toBigInt(); + break; + case /* int64 total_satoshis_sent */ 12: + message.totalSatoshisSent = reader.int64().toBigInt(); + break; + case /* int64 total_satoshis_received */ 13: + message.totalSatoshisReceived = reader.int64().toBigInt(); + break; + case /* uint64 num_updates */ 14: + message.numUpdates = reader.uint64().toBigInt(); + break; + case /* repeated lnrpc.HTLC pending_htlcs */ 15: + message.pendingHtlcs.push(HTLC.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* uint32 csv_delay = 16 [deprecated = true];*/ 16: + message.csvDelay = reader.uint32(); + break; + case /* bool private */ 17: + message.private = reader.bool(); + break; + case /* bool initiator */ 18: + message.initiator = reader.bool(); + break; + case /* string chan_status_flags */ 19: + message.chanStatusFlags = reader.string(); + break; + case /* int64 local_chan_reserve_sat = 20 [deprecated = true];*/ 20: + message.localChanReserveSat = reader.int64().toBigInt(); + break; + case /* int64 remote_chan_reserve_sat = 21 [deprecated = true];*/ 21: + message.remoteChanReserveSat = reader.int64().toBigInt(); + break; + case /* bool static_remote_key = 22 [deprecated = true];*/ 22: + message.staticRemoteKey = reader.bool(); + break; + case /* lnrpc.CommitmentType commitment_type */ 26: + message.commitmentType = reader.int32(); + break; + case /* int64 lifetime */ 23: + message.lifetime = reader.int64().toBigInt(); + break; + case /* int64 uptime */ 24: + message.uptime = reader.int64().toBigInt(); + break; + case /* string close_address */ 25: + message.closeAddress = reader.string(); + break; + case /* uint64 push_amount_sat */ 27: + message.pushAmountSat = reader.uint64().toBigInt(); + break; + case /* uint32 thaw_height */ 28: + message.thawHeight = reader.uint32(); + break; + case /* lnrpc.ChannelConstraints local_constraints */ 29: + message.localConstraints = ChannelConstraints.internalBinaryRead(reader, reader.uint32(), options, message.localConstraints); + break; + case /* lnrpc.ChannelConstraints remote_constraints */ 30: + message.remoteConstraints = ChannelConstraints.internalBinaryRead(reader, reader.uint32(), options, message.remoteConstraints); + break; + case /* repeated uint64 alias_scids */ 31: + if (wireType === WireType.LengthDelimited) + for (let e = reader.int32() + reader.pos; reader.pos < e;) + message.aliasScids.push(reader.uint64().toBigInt()); + else + message.aliasScids.push(reader.uint64().toBigInt()); + break; + case /* bool zero_conf */ 32: + message.zeroConf = reader.bool(); + break; + case /* uint64 zero_conf_confirmed_scid */ 33: + message.zeroConfConfirmedScid = reader.uint64().toBigInt(); + break; + case /* string peer_alias */ 34: + message.peerAlias = reader.string(); + break; + case /* uint64 peer_scid_alias = 35 [jstype = JS_STRING];*/ 35: + message.peerScidAlias = reader.uint64().toString(); + break; + case /* string memo */ 36: + message.memo = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: Channel, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool active = 1; */ + if (message.active !== false) + writer.tag(1, WireType.Varint).bool(message.active); + /* string remote_pubkey = 2; */ + if (message.remotePubkey !== "") + writer.tag(2, WireType.LengthDelimited).string(message.remotePubkey); + /* string channel_point = 3; */ + if (message.channelPoint !== "") + writer.tag(3, WireType.LengthDelimited).string(message.channelPoint); + /* uint64 chan_id = 4 [jstype = JS_STRING]; */ + if (message.chanId !== "0") + writer.tag(4, WireType.Varint).uint64(message.chanId); + /* int64 capacity = 5; */ + if (message.capacity !== 0n) + writer.tag(5, WireType.Varint).int64(message.capacity); + /* int64 local_balance = 6; */ + if (message.localBalance !== 0n) + writer.tag(6, WireType.Varint).int64(message.localBalance); + /* int64 remote_balance = 7; */ + if (message.remoteBalance !== 0n) + writer.tag(7, WireType.Varint).int64(message.remoteBalance); + /* int64 commit_fee = 8; */ + if (message.commitFee !== 0n) + writer.tag(8, WireType.Varint).int64(message.commitFee); + /* int64 commit_weight = 9; */ + if (message.commitWeight !== 0n) + writer.tag(9, WireType.Varint).int64(message.commitWeight); + /* int64 fee_per_kw = 10; */ + if (message.feePerKw !== 0n) + writer.tag(10, WireType.Varint).int64(message.feePerKw); + /* int64 unsettled_balance = 11; */ + if (message.unsettledBalance !== 0n) + writer.tag(11, WireType.Varint).int64(message.unsettledBalance); + /* int64 total_satoshis_sent = 12; */ + if (message.totalSatoshisSent !== 0n) + writer.tag(12, WireType.Varint).int64(message.totalSatoshisSent); + /* int64 total_satoshis_received = 13; */ + if (message.totalSatoshisReceived !== 0n) + writer.tag(13, WireType.Varint).int64(message.totalSatoshisReceived); + /* uint64 num_updates = 14; */ + if (message.numUpdates !== 0n) + writer.tag(14, WireType.Varint).uint64(message.numUpdates); + /* repeated lnrpc.HTLC pending_htlcs = 15; */ + for (let i = 0; i < message.pendingHtlcs.length; i++) + HTLC.internalBinaryWrite(message.pendingHtlcs[i], writer.tag(15, WireType.LengthDelimited).fork(), options).join(); + /* uint32 csv_delay = 16 [deprecated = true]; */ + if (message.csvDelay !== 0) + writer.tag(16, WireType.Varint).uint32(message.csvDelay); + /* bool private = 17; */ + if (message.private !== false) + writer.tag(17, WireType.Varint).bool(message.private); + /* bool initiator = 18; */ + if (message.initiator !== false) + writer.tag(18, WireType.Varint).bool(message.initiator); + /* string chan_status_flags = 19; */ + if (message.chanStatusFlags !== "") + writer.tag(19, WireType.LengthDelimited).string(message.chanStatusFlags); + /* int64 local_chan_reserve_sat = 20 [deprecated = true]; */ + if (message.localChanReserveSat !== 0n) + writer.tag(20, WireType.Varint).int64(message.localChanReserveSat); + /* int64 remote_chan_reserve_sat = 21 [deprecated = true]; */ + if (message.remoteChanReserveSat !== 0n) + writer.tag(21, WireType.Varint).int64(message.remoteChanReserveSat); + /* bool static_remote_key = 22 [deprecated = true]; */ + if (message.staticRemoteKey !== false) + writer.tag(22, WireType.Varint).bool(message.staticRemoteKey); + /* lnrpc.CommitmentType commitment_type = 26; */ + if (message.commitmentType !== 0) + writer.tag(26, WireType.Varint).int32(message.commitmentType); + /* int64 lifetime = 23; */ + if (message.lifetime !== 0n) + writer.tag(23, WireType.Varint).int64(message.lifetime); + /* int64 uptime = 24; */ + if (message.uptime !== 0n) + writer.tag(24, WireType.Varint).int64(message.uptime); + /* string close_address = 25; */ + if (message.closeAddress !== "") + writer.tag(25, WireType.LengthDelimited).string(message.closeAddress); + /* uint64 push_amount_sat = 27; */ + if (message.pushAmountSat !== 0n) + writer.tag(27, WireType.Varint).uint64(message.pushAmountSat); + /* uint32 thaw_height = 28; */ + if (message.thawHeight !== 0) + writer.tag(28, WireType.Varint).uint32(message.thawHeight); + /* lnrpc.ChannelConstraints local_constraints = 29; */ + if (message.localConstraints) + ChannelConstraints.internalBinaryWrite(message.localConstraints, writer.tag(29, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.ChannelConstraints remote_constraints = 30; */ + if (message.remoteConstraints) + ChannelConstraints.internalBinaryWrite(message.remoteConstraints, writer.tag(30, WireType.LengthDelimited).fork(), options).join(); + /* repeated uint64 alias_scids = 31; */ + if (message.aliasScids.length) { + writer.tag(31, WireType.LengthDelimited).fork(); + for (let i = 0; i < message.aliasScids.length; i++) + writer.uint64(message.aliasScids[i]); + writer.join(); + } + /* bool zero_conf = 32; */ + if (message.zeroConf !== false) + writer.tag(32, WireType.Varint).bool(message.zeroConf); + /* uint64 zero_conf_confirmed_scid = 33; */ + if (message.zeroConfConfirmedScid !== 0n) + writer.tag(33, WireType.Varint).uint64(message.zeroConfConfirmedScid); + /* string peer_alias = 34; */ + if (message.peerAlias !== "") + writer.tag(34, WireType.LengthDelimited).string(message.peerAlias); + /* uint64 peer_scid_alias = 35 [jstype = JS_STRING]; */ + if (message.peerScidAlias !== "0") + writer.tag(35, WireType.Varint).uint64(message.peerScidAlias); + /* string memo = 36; */ + if (message.memo !== "") + writer.tag(36, WireType.LengthDelimited).string(message.memo); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.Channel + */ +export const Channel = new Channel$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ListChannelsRequest$Type extends MessageType { + constructor() { + super("lnrpc.ListChannelsRequest", [ + { no: 1, name: "active_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 2, name: "inactive_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 3, name: "public_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 4, name: "private_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 5, name: "peer", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 6, name: "peer_alias_lookup", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): ListChannelsRequest { + const message = { activeOnly: false, inactiveOnly: false, publicOnly: false, privateOnly: false, peer: new Uint8Array(0), peerAliasLookup: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListChannelsRequest): ListChannelsRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool active_only */ 1: + message.activeOnly = reader.bool(); + break; + case /* bool inactive_only */ 2: + message.inactiveOnly = reader.bool(); + break; + case /* bool public_only */ 3: + message.publicOnly = reader.bool(); + break; + case /* bool private_only */ 4: + message.privateOnly = reader.bool(); + break; + case /* bytes peer */ 5: + message.peer = reader.bytes(); + break; + case /* bool peer_alias_lookup */ 6: + message.peerAliasLookup = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ListChannelsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool active_only = 1; */ + if (message.activeOnly !== false) + writer.tag(1, WireType.Varint).bool(message.activeOnly); + /* bool inactive_only = 2; */ + if (message.inactiveOnly !== false) + writer.tag(2, WireType.Varint).bool(message.inactiveOnly); + /* bool public_only = 3; */ + if (message.publicOnly !== false) + writer.tag(3, WireType.Varint).bool(message.publicOnly); + /* bool private_only = 4; */ + if (message.privateOnly !== false) + writer.tag(4, WireType.Varint).bool(message.privateOnly); + /* bytes peer = 5; */ + if (message.peer.length) + writer.tag(5, WireType.LengthDelimited).bytes(message.peer); + /* bool peer_alias_lookup = 6; */ + if (message.peerAliasLookup !== false) + writer.tag(6, WireType.Varint).bool(message.peerAliasLookup); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ListChannelsRequest + */ +export const ListChannelsRequest = new ListChannelsRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ListChannelsResponse$Type extends MessageType { + constructor() { + super("lnrpc.ListChannelsResponse", [ + { no: 11, name: "channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Channel } + ]); + } + create(value?: PartialMessage): ListChannelsResponse { + const message = { channels: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListChannelsResponse): ListChannelsResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.Channel channels */ 11: + message.channels.push(Channel.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ListChannelsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.Channel channels = 11; */ + for (let i = 0; i < message.channels.length; i++) + Channel.internalBinaryWrite(message.channels[i], writer.tag(11, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ListChannelsResponse + */ +export const ListChannelsResponse = new ListChannelsResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class AliasMap$Type extends MessageType { + constructor() { + super("lnrpc.AliasMap", [ + { no: 1, name: "base_scid", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "aliases", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): AliasMap { + const message = { baseScid: 0n, aliases: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AliasMap): AliasMap { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 base_scid */ 1: + message.baseScid = reader.uint64().toBigInt(); + break; + case /* repeated uint64 aliases */ 2: + if (wireType === WireType.LengthDelimited) + for (let e = reader.int32() + reader.pos; reader.pos < e;) + message.aliases.push(reader.uint64().toBigInt()); + else + message.aliases.push(reader.uint64().toBigInt()); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: AliasMap, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 base_scid = 1; */ + if (message.baseScid !== 0n) + writer.tag(1, WireType.Varint).uint64(message.baseScid); + /* repeated uint64 aliases = 2; */ + if (message.aliases.length) { + writer.tag(2, WireType.LengthDelimited).fork(); + for (let i = 0; i < message.aliases.length; i++) + writer.uint64(message.aliases[i]); + writer.join(); + } + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.AliasMap + */ +export const AliasMap = new AliasMap$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ListAliasesRequest$Type extends MessageType { + constructor() { + super("lnrpc.ListAliasesRequest", []); + } + create(value?: PartialMessage): ListAliasesRequest { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListAliasesRequest): ListAliasesRequest { + return target ?? this.create(); + } + internalBinaryWrite(message: ListAliasesRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ListAliasesRequest + */ +export const ListAliasesRequest = new ListAliasesRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ListAliasesResponse$Type extends MessageType { + constructor() { + super("lnrpc.ListAliasesResponse", [ + { no: 1, name: "alias_maps", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => AliasMap } + ]); + } + create(value?: PartialMessage): ListAliasesResponse { + const message = { aliasMaps: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListAliasesResponse): ListAliasesResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.AliasMap alias_maps */ 1: + message.aliasMaps.push(AliasMap.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ListAliasesResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.AliasMap alias_maps = 1; */ + for (let i = 0; i < message.aliasMaps.length; i++) + AliasMap.internalBinaryWrite(message.aliasMaps[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ListAliasesResponse + */ +export const ListAliasesResponse = new ListAliasesResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelCloseSummary$Type extends MessageType { + constructor() { + super("lnrpc.ChannelCloseSummary", [ + { no: 1, name: "channel_point", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 3, name: "chain_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 4, name: "closing_tx_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 5, name: "remote_pubkey", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 6, name: "capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "close_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 8, name: "settled_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 9, name: "time_locked_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 10, name: "close_type", kind: "enum", T: () => ["lnrpc.ChannelCloseSummary.ClosureType", ChannelCloseSummary_ClosureType] }, + { no: 11, name: "open_initiator", kind: "enum", T: () => ["lnrpc.Initiator", Initiator, "INITIATOR_"] }, + { no: 12, name: "close_initiator", kind: "enum", T: () => ["lnrpc.Initiator", Initiator, "INITIATOR_"] }, + { no: 13, name: "resolutions", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Resolution }, + { no: 14, name: "alias_scids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 15, name: "zero_conf_confirmed_scid", kind: "scalar", T: 4 /*ScalarType.UINT64*/ } + ]); + } + create(value?: PartialMessage): ChannelCloseSummary { + const message = { channelPoint: "", chanId: "0", chainHash: "", closingTxHash: "", remotePubkey: "", capacity: 0n, closeHeight: 0, settledBalance: 0n, timeLockedBalance: 0n, closeType: 0, openInitiator: 0, closeInitiator: 0, resolutions: [], aliasScids: [], zeroConfConfirmedScid: "0" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelCloseSummary): ChannelCloseSummary { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string channel_point */ 1: + message.channelPoint = reader.string(); + break; + case /* uint64 chan_id = 2 [jstype = JS_STRING];*/ 2: + message.chanId = reader.uint64().toString(); + break; + case /* string chain_hash */ 3: + message.chainHash = reader.string(); + break; + case /* string closing_tx_hash */ 4: + message.closingTxHash = reader.string(); + break; + case /* string remote_pubkey */ 5: + message.remotePubkey = reader.string(); + break; + case /* int64 capacity */ 6: + message.capacity = reader.int64().toBigInt(); + break; + case /* uint32 close_height */ 7: + message.closeHeight = reader.uint32(); + break; + case /* int64 settled_balance */ 8: + message.settledBalance = reader.int64().toBigInt(); + break; + case /* int64 time_locked_balance */ 9: + message.timeLockedBalance = reader.int64().toBigInt(); + break; + case /* lnrpc.ChannelCloseSummary.ClosureType close_type */ 10: + message.closeType = reader.int32(); + break; + case /* lnrpc.Initiator open_initiator */ 11: + message.openInitiator = reader.int32(); + break; + case /* lnrpc.Initiator close_initiator */ 12: + message.closeInitiator = reader.int32(); + break; + case /* repeated lnrpc.Resolution resolutions */ 13: + message.resolutions.push(Resolution.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* repeated uint64 alias_scids */ 14: + if (wireType === WireType.LengthDelimited) + for (let e = reader.int32() + reader.pos; reader.pos < e;) + message.aliasScids.push(reader.uint64().toBigInt()); + else + message.aliasScids.push(reader.uint64().toBigInt()); + break; + case /* uint64 zero_conf_confirmed_scid = 15 [jstype = JS_STRING];*/ 15: + message.zeroConfConfirmedScid = reader.uint64().toString(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChannelCloseSummary, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string channel_point = 1; */ + if (message.channelPoint !== "") + writer.tag(1, WireType.LengthDelimited).string(message.channelPoint); + /* uint64 chan_id = 2 [jstype = JS_STRING]; */ + if (message.chanId !== "0") + writer.tag(2, WireType.Varint).uint64(message.chanId); + /* string chain_hash = 3; */ + if (message.chainHash !== "") + writer.tag(3, WireType.LengthDelimited).string(message.chainHash); + /* string closing_tx_hash = 4; */ + if (message.closingTxHash !== "") + writer.tag(4, WireType.LengthDelimited).string(message.closingTxHash); + /* string remote_pubkey = 5; */ + if (message.remotePubkey !== "") + writer.tag(5, WireType.LengthDelimited).string(message.remotePubkey); + /* int64 capacity = 6; */ + if (message.capacity !== 0n) + writer.tag(6, WireType.Varint).int64(message.capacity); + /* uint32 close_height = 7; */ + if (message.closeHeight !== 0) + writer.tag(7, WireType.Varint).uint32(message.closeHeight); + /* int64 settled_balance = 8; */ + if (message.settledBalance !== 0n) + writer.tag(8, WireType.Varint).int64(message.settledBalance); + /* int64 time_locked_balance = 9; */ + if (message.timeLockedBalance !== 0n) + writer.tag(9, WireType.Varint).int64(message.timeLockedBalance); + /* lnrpc.ChannelCloseSummary.ClosureType close_type = 10; */ + if (message.closeType !== 0) + writer.tag(10, WireType.Varint).int32(message.closeType); + /* lnrpc.Initiator open_initiator = 11; */ + if (message.openInitiator !== 0) + writer.tag(11, WireType.Varint).int32(message.openInitiator); + /* lnrpc.Initiator close_initiator = 12; */ + if (message.closeInitiator !== 0) + writer.tag(12, WireType.Varint).int32(message.closeInitiator); + /* repeated lnrpc.Resolution resolutions = 13; */ + for (let i = 0; i < message.resolutions.length; i++) + Resolution.internalBinaryWrite(message.resolutions[i], writer.tag(13, WireType.LengthDelimited).fork(), options).join(); + /* repeated uint64 alias_scids = 14; */ + if (message.aliasScids.length) { + writer.tag(14, WireType.LengthDelimited).fork(); + for (let i = 0; i < message.aliasScids.length; i++) + writer.uint64(message.aliasScids[i]); + writer.join(); + } + /* uint64 zero_conf_confirmed_scid = 15 [jstype = JS_STRING]; */ + if (message.zeroConfConfirmedScid !== "0") + writer.tag(15, WireType.Varint).uint64(message.zeroConfConfirmedScid); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelCloseSummary + */ +export const ChannelCloseSummary = new ChannelCloseSummary$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class Resolution$Type extends MessageType { + constructor() { + super("lnrpc.Resolution", [ + { no: 1, name: "resolution_type", kind: "enum", T: () => ["lnrpc.ResolutionType", ResolutionType] }, + { no: 2, name: "outcome", kind: "enum", T: () => ["lnrpc.ResolutionOutcome", ResolutionOutcome] }, + { no: 3, name: "outpoint", kind: "message", T: () => OutPoint }, + { no: 4, name: "amount_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "sweep_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): Resolution { + const message = { resolutionType: 0, outcome: 0, amountSat: 0n, sweepTxid: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Resolution): Resolution { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.ResolutionType resolution_type */ 1: + message.resolutionType = reader.int32(); + break; + case /* lnrpc.ResolutionOutcome outcome */ 2: + message.outcome = reader.int32(); + break; + case /* lnrpc.OutPoint outpoint */ 3: + message.outpoint = OutPoint.internalBinaryRead(reader, reader.uint32(), options, message.outpoint); + break; + case /* uint64 amount_sat */ 4: + message.amountSat = reader.uint64().toBigInt(); + break; + case /* string sweep_txid */ 5: + message.sweepTxid = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: Resolution, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.ResolutionType resolution_type = 1; */ + if (message.resolutionType !== 0) + writer.tag(1, WireType.Varint).int32(message.resolutionType); + /* lnrpc.ResolutionOutcome outcome = 2; */ + if (message.outcome !== 0) + writer.tag(2, WireType.Varint).int32(message.outcome); + /* lnrpc.OutPoint outpoint = 3; */ + if (message.outpoint) + OutPoint.internalBinaryWrite(message.outpoint, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); + /* uint64 amount_sat = 4; */ + if (message.amountSat !== 0n) + writer.tag(4, WireType.Varint).uint64(message.amountSat); + /* string sweep_txid = 5; */ + if (message.sweepTxid !== "") + writer.tag(5, WireType.LengthDelimited).string(message.sweepTxid); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.Resolution + */ +export const Resolution = new Resolution$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ClosedChannelsRequest$Type extends MessageType { + constructor() { + super("lnrpc.ClosedChannelsRequest", [ + { no: 1, name: "cooperative", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 2, name: "local_force", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 3, name: "remote_force", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 4, name: "breach", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 5, name: "funding_canceled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 6, name: "abandoned", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): ClosedChannelsRequest { + const message = { cooperative: false, localForce: false, remoteForce: false, breach: false, fundingCanceled: false, abandoned: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ClosedChannelsRequest): ClosedChannelsRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool cooperative */ 1: + message.cooperative = reader.bool(); + break; + case /* bool local_force */ 2: + message.localForce = reader.bool(); + break; + case /* bool remote_force */ 3: + message.remoteForce = reader.bool(); + break; + case /* bool breach */ 4: + message.breach = reader.bool(); + break; + case /* bool funding_canceled */ 5: + message.fundingCanceled = reader.bool(); + break; + case /* bool abandoned */ 6: + message.abandoned = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ClosedChannelsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool cooperative = 1; */ + if (message.cooperative !== false) + writer.tag(1, WireType.Varint).bool(message.cooperative); + /* bool local_force = 2; */ + if (message.localForce !== false) + writer.tag(2, WireType.Varint).bool(message.localForce); + /* bool remote_force = 3; */ + if (message.remoteForce !== false) + writer.tag(3, WireType.Varint).bool(message.remoteForce); + /* bool breach = 4; */ + if (message.breach !== false) + writer.tag(4, WireType.Varint).bool(message.breach); + /* bool funding_canceled = 5; */ + if (message.fundingCanceled !== false) + writer.tag(5, WireType.Varint).bool(message.fundingCanceled); + /* bool abandoned = 6; */ + if (message.abandoned !== false) + writer.tag(6, WireType.Varint).bool(message.abandoned); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ClosedChannelsRequest + */ +export const ClosedChannelsRequest = new ClosedChannelsRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ClosedChannelsResponse$Type extends MessageType { + constructor() { + super("lnrpc.ClosedChannelsResponse", [ + { no: 1, name: "channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => ChannelCloseSummary } + ]); + } + create(value?: PartialMessage): ClosedChannelsResponse { + const message = { channels: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ClosedChannelsResponse): ClosedChannelsResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.ChannelCloseSummary channels */ 1: + message.channels.push(ChannelCloseSummary.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ClosedChannelsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.ChannelCloseSummary channels = 1; */ + for (let i = 0; i < message.channels.length; i++) + ChannelCloseSummary.internalBinaryWrite(message.channels[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ClosedChannelsResponse + */ +export const ClosedChannelsResponse = new ClosedChannelsResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class Peer$Type extends MessageType { + constructor() { + super("lnrpc.Peer", [ + { no: 1, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 3, name: "address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 4, name: "bytes_sent", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "bytes_recv", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "sat_sent", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "sat_recv", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 8, name: "inbound", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 9, name: "ping_time", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 10, name: "sync_type", kind: "enum", T: () => ["lnrpc.Peer.SyncType", Peer_SyncType] }, + { no: 11, name: "features", kind: "map", K: 13 /*ScalarType.UINT32*/, V: { kind: "message", T: () => Feature } }, + { no: 12, name: "errors", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => TimestampedError }, + { no: 13, name: "flap_count", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 14, name: "last_flap_ns", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 15, name: "last_ping_payload", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): Peer { + const message = { pubKey: "", address: "", bytesSent: 0n, bytesRecv: 0n, satSent: 0n, satRecv: 0n, inbound: false, pingTime: 0n, syncType: 0, features: {}, errors: [], flapCount: 0, lastFlapNs: 0n, lastPingPayload: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Peer): Peer { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string pub_key */ 1: + message.pubKey = reader.string(); + break; + case /* string address */ 3: + message.address = reader.string(); + break; + case /* uint64 bytes_sent */ 4: + message.bytesSent = reader.uint64().toBigInt(); + break; + case /* uint64 bytes_recv */ 5: + message.bytesRecv = reader.uint64().toBigInt(); + break; + case /* int64 sat_sent */ 6: + message.satSent = reader.int64().toBigInt(); + break; + case /* int64 sat_recv */ 7: + message.satRecv = reader.int64().toBigInt(); + break; + case /* bool inbound */ 8: + message.inbound = reader.bool(); + break; + case /* int64 ping_time */ 9: + message.pingTime = reader.int64().toBigInt(); + break; + case /* lnrpc.Peer.SyncType sync_type */ 10: + message.syncType = reader.int32(); + break; + case /* map features */ 11: + this.binaryReadMap11(message.features, reader, options); + break; + case /* repeated lnrpc.TimestampedError errors */ 12: + message.errors.push(TimestampedError.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* int32 flap_count */ 13: + message.flapCount = reader.int32(); + break; + case /* int64 last_flap_ns */ 14: + message.lastFlapNs = reader.int64().toBigInt(); + break; + case /* bytes last_ping_payload */ 15: + message.lastPingPayload = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap11(map: Peer["features"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof Peer["features"] | undefined, val: Peer["features"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.uint32(); + break; + case 2: + val = Feature.internalBinaryRead(reader, reader.uint32(), options); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.Peer.features"); + } + } + map[key ?? 0] = val ?? Feature.create(); + } + internalBinaryWrite(message: Peer, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string pub_key = 1; */ + if (message.pubKey !== "") + writer.tag(1, WireType.LengthDelimited).string(message.pubKey); + /* string address = 3; */ + if (message.address !== "") + writer.tag(3, WireType.LengthDelimited).string(message.address); + /* uint64 bytes_sent = 4; */ + if (message.bytesSent !== 0n) + writer.tag(4, WireType.Varint).uint64(message.bytesSent); + /* uint64 bytes_recv = 5; */ + if (message.bytesRecv !== 0n) + writer.tag(5, WireType.Varint).uint64(message.bytesRecv); + /* int64 sat_sent = 6; */ + if (message.satSent !== 0n) + writer.tag(6, WireType.Varint).int64(message.satSent); + /* int64 sat_recv = 7; */ + if (message.satRecv !== 0n) + writer.tag(7, WireType.Varint).int64(message.satRecv); + /* bool inbound = 8; */ + if (message.inbound !== false) + writer.tag(8, WireType.Varint).bool(message.inbound); + /* int64 ping_time = 9; */ + if (message.pingTime !== 0n) + writer.tag(9, WireType.Varint).int64(message.pingTime); + /* lnrpc.Peer.SyncType sync_type = 10; */ + if (message.syncType !== 0) + writer.tag(10, WireType.Varint).int32(message.syncType); + /* map features = 11; */ + for (let k of Object.keys(message.features)) { + writer.tag(11, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint32(parseInt(k)); + writer.tag(2, WireType.LengthDelimited).fork(); + Feature.internalBinaryWrite(message.features[k as any], writer, options); + writer.join().join(); + } + /* repeated lnrpc.TimestampedError errors = 12; */ + for (let i = 0; i < message.errors.length; i++) + TimestampedError.internalBinaryWrite(message.errors[i], writer.tag(12, WireType.LengthDelimited).fork(), options).join(); + /* int32 flap_count = 13; */ + if (message.flapCount !== 0) + writer.tag(13, WireType.Varint).int32(message.flapCount); + /* int64 last_flap_ns = 14; */ + if (message.lastFlapNs !== 0n) + writer.tag(14, WireType.Varint).int64(message.lastFlapNs); + /* bytes last_ping_payload = 15; */ + if (message.lastPingPayload.length) + writer.tag(15, WireType.LengthDelimited).bytes(message.lastPingPayload); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.Peer + */ +export const Peer = new Peer$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class TimestampedError$Type extends MessageType { + constructor() { + super("lnrpc.TimestampedError", [ + { no: 1, name: "timestamp", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "error", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): TimestampedError { + const message = { timestamp: 0n, error: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TimestampedError): TimestampedError { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 timestamp */ 1: + message.timestamp = reader.uint64().toBigInt(); + break; + case /* string error */ 2: + message.error = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: TimestampedError, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 timestamp = 1; */ + if (message.timestamp !== 0n) + writer.tag(1, WireType.Varint).uint64(message.timestamp); + /* string error = 2; */ + if (message.error !== "") + writer.tag(2, WireType.LengthDelimited).string(message.error); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.TimestampedError + */ +export const TimestampedError = new TimestampedError$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ListPeersRequest$Type extends MessageType { + constructor() { + super("lnrpc.ListPeersRequest", [ + { no: 1, name: "latest_error", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): ListPeersRequest { + const message = { latestError: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListPeersRequest): ListPeersRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool latest_error */ 1: + message.latestError = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ListPeersRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool latest_error = 1; */ + if (message.latestError !== false) + writer.tag(1, WireType.Varint).bool(message.latestError); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ListPeersRequest + */ +export const ListPeersRequest = new ListPeersRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ListPeersResponse$Type extends MessageType { + constructor() { + super("lnrpc.ListPeersResponse", [ + { no: 1, name: "peers", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Peer } + ]); + } + create(value?: PartialMessage): ListPeersResponse { + const message = { peers: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListPeersResponse): ListPeersResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.Peer peers */ 1: + message.peers.push(Peer.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ListPeersResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.Peer peers = 1; */ + for (let i = 0; i < message.peers.length; i++) + Peer.internalBinaryWrite(message.peers[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ListPeersResponse + */ +export const ListPeersResponse = new ListPeersResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PeerEventSubscription$Type extends MessageType { + constructor() { + super("lnrpc.PeerEventSubscription", []); + } + create(value?: PartialMessage): PeerEventSubscription { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PeerEventSubscription): PeerEventSubscription { + return target ?? this.create(); + } + internalBinaryWrite(message: PeerEventSubscription, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PeerEventSubscription + */ +export const PeerEventSubscription = new PeerEventSubscription$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PeerEvent$Type extends MessageType { + constructor() { + super("lnrpc.PeerEvent", [ + { no: 1, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "type", kind: "enum", T: () => ["lnrpc.PeerEvent.EventType", PeerEvent_EventType] } + ]); + } + create(value?: PartialMessage): PeerEvent { + const message = { pubKey: "", type: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PeerEvent): PeerEvent { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string pub_key */ 1: + message.pubKey = reader.string(); + break; + case /* lnrpc.PeerEvent.EventType type */ 2: + message.type = reader.int32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PeerEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string pub_key = 1; */ + if (message.pubKey !== "") + writer.tag(1, WireType.LengthDelimited).string(message.pubKey); + /* lnrpc.PeerEvent.EventType type = 2; */ + if (message.type !== 0) + writer.tag(2, WireType.Varint).int32(message.type); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PeerEvent + */ +export const PeerEvent = new PeerEvent$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class GetInfoRequest$Type extends MessageType { + constructor() { + super("lnrpc.GetInfoRequest", []); + } + create(value?: PartialMessage): GetInfoRequest { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetInfoRequest): GetInfoRequest { + return target ?? this.create(); + } + internalBinaryWrite(message: GetInfoRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.GetInfoRequest + */ +export const GetInfoRequest = new GetInfoRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class GetInfoResponse$Type extends MessageType { + constructor() { + super("lnrpc.GetInfoResponse", [ + { no: 14, name: "version", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 20, name: "commit_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 1, name: "identity_pubkey", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "alias", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 17, name: "color", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 3, name: "num_pending_channels", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 4, name: "num_active_channels", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 15, name: "num_inactive_channels", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 5, name: "num_peers", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 6, name: "block_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 8, name: "block_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 13, name: "best_header_timestamp", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 9, name: "synced_to_chain", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 18, name: "synced_to_graph", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 10, name: "testnet", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 16, name: "chains", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Chain }, + { no: 12, name: "uris", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ }, + { no: 19, name: "features", kind: "map", K: 13 /*ScalarType.UINT32*/, V: { kind: "message", T: () => Feature } }, + { no: 21, name: "require_htlc_interceptor", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 22, name: "store_final_htlc_resolutions", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): GetInfoResponse { + const message = { version: "", commitHash: "", identityPubkey: "", alias: "", color: "", numPendingChannels: 0, numActiveChannels: 0, numInactiveChannels: 0, numPeers: 0, blockHeight: 0, blockHash: "", bestHeaderTimestamp: 0n, syncedToChain: false, syncedToGraph: false, testnet: false, chains: [], uris: [], features: {}, requireHtlcInterceptor: false, storeFinalHtlcResolutions: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetInfoResponse): GetInfoResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string version */ 14: + message.version = reader.string(); + break; + case /* string commit_hash */ 20: + message.commitHash = reader.string(); + break; + case /* string identity_pubkey */ 1: + message.identityPubkey = reader.string(); + break; + case /* string alias */ 2: + message.alias = reader.string(); + break; + case /* string color */ 17: + message.color = reader.string(); + break; + case /* uint32 num_pending_channels */ 3: + message.numPendingChannels = reader.uint32(); + break; + case /* uint32 num_active_channels */ 4: + message.numActiveChannels = reader.uint32(); + break; + case /* uint32 num_inactive_channels */ 15: + message.numInactiveChannels = reader.uint32(); + break; + case /* uint32 num_peers */ 5: + message.numPeers = reader.uint32(); + break; + case /* uint32 block_height */ 6: + message.blockHeight = reader.uint32(); + break; + case /* string block_hash */ 8: + message.blockHash = reader.string(); + break; + case /* int64 best_header_timestamp */ 13: + message.bestHeaderTimestamp = reader.int64().toBigInt(); + break; + case /* bool synced_to_chain */ 9: + message.syncedToChain = reader.bool(); + break; + case /* bool synced_to_graph */ 18: + message.syncedToGraph = reader.bool(); + break; + case /* bool testnet = 10 [deprecated = true];*/ 10: + message.testnet = reader.bool(); + break; + case /* repeated lnrpc.Chain chains */ 16: + message.chains.push(Chain.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* repeated string uris */ 12: + message.uris.push(reader.string()); + break; + case /* map features */ 19: + this.binaryReadMap19(message.features, reader, options); + break; + case /* bool require_htlc_interceptor */ 21: + message.requireHtlcInterceptor = reader.bool(); + break; + case /* bool store_final_htlc_resolutions */ 22: + message.storeFinalHtlcResolutions = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap19(map: GetInfoResponse["features"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof GetInfoResponse["features"] | undefined, val: GetInfoResponse["features"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.uint32(); + break; + case 2: + val = Feature.internalBinaryRead(reader, reader.uint32(), options); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.GetInfoResponse.features"); + } + } + map[key ?? 0] = val ?? Feature.create(); + } + internalBinaryWrite(message: GetInfoResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string version = 14; */ + if (message.version !== "") + writer.tag(14, WireType.LengthDelimited).string(message.version); + /* string commit_hash = 20; */ + if (message.commitHash !== "") + writer.tag(20, WireType.LengthDelimited).string(message.commitHash); + /* string identity_pubkey = 1; */ + if (message.identityPubkey !== "") + writer.tag(1, WireType.LengthDelimited).string(message.identityPubkey); + /* string alias = 2; */ + if (message.alias !== "") + writer.tag(2, WireType.LengthDelimited).string(message.alias); + /* string color = 17; */ + if (message.color !== "") + writer.tag(17, WireType.LengthDelimited).string(message.color); + /* uint32 num_pending_channels = 3; */ + if (message.numPendingChannels !== 0) + writer.tag(3, WireType.Varint).uint32(message.numPendingChannels); + /* uint32 num_active_channels = 4; */ + if (message.numActiveChannels !== 0) + writer.tag(4, WireType.Varint).uint32(message.numActiveChannels); + /* uint32 num_inactive_channels = 15; */ + if (message.numInactiveChannels !== 0) + writer.tag(15, WireType.Varint).uint32(message.numInactiveChannels); + /* uint32 num_peers = 5; */ + if (message.numPeers !== 0) + writer.tag(5, WireType.Varint).uint32(message.numPeers); + /* uint32 block_height = 6; */ + if (message.blockHeight !== 0) + writer.tag(6, WireType.Varint).uint32(message.blockHeight); + /* string block_hash = 8; */ + if (message.blockHash !== "") + writer.tag(8, WireType.LengthDelimited).string(message.blockHash); + /* int64 best_header_timestamp = 13; */ + if (message.bestHeaderTimestamp !== 0n) + writer.tag(13, WireType.Varint).int64(message.bestHeaderTimestamp); + /* bool synced_to_chain = 9; */ + if (message.syncedToChain !== false) + writer.tag(9, WireType.Varint).bool(message.syncedToChain); + /* bool synced_to_graph = 18; */ + if (message.syncedToGraph !== false) + writer.tag(18, WireType.Varint).bool(message.syncedToGraph); + /* bool testnet = 10 [deprecated = true]; */ + if (message.testnet !== false) + writer.tag(10, WireType.Varint).bool(message.testnet); + /* repeated lnrpc.Chain chains = 16; */ + for (let i = 0; i < message.chains.length; i++) + Chain.internalBinaryWrite(message.chains[i], writer.tag(16, WireType.LengthDelimited).fork(), options).join(); + /* repeated string uris = 12; */ + for (let i = 0; i < message.uris.length; i++) + writer.tag(12, WireType.LengthDelimited).string(message.uris[i]); + /* map features = 19; */ + for (let k of Object.keys(message.features)) { + writer.tag(19, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint32(parseInt(k)); + writer.tag(2, WireType.LengthDelimited).fork(); + Feature.internalBinaryWrite(message.features[k as any], writer, options); + writer.join().join(); + } + /* bool require_htlc_interceptor = 21; */ + if (message.requireHtlcInterceptor !== false) + writer.tag(21, WireType.Varint).bool(message.requireHtlcInterceptor); + /* bool store_final_htlc_resolutions = 22; */ + if (message.storeFinalHtlcResolutions !== false) + writer.tag(22, WireType.Varint).bool(message.storeFinalHtlcResolutions); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.GetInfoResponse + */ +export const GetInfoResponse = new GetInfoResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class GetDebugInfoRequest$Type extends MessageType { + constructor() { + super("lnrpc.GetDebugInfoRequest", []); + } + create(value?: PartialMessage): GetDebugInfoRequest { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetDebugInfoRequest): GetDebugInfoRequest { + return target ?? this.create(); + } + internalBinaryWrite(message: GetDebugInfoRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.GetDebugInfoRequest + */ +export const GetDebugInfoRequest = new GetDebugInfoRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class GetDebugInfoResponse$Type extends MessageType { + constructor() { + super("lnrpc.GetDebugInfoResponse", [ + { no: 1, name: "config", kind: "map", K: 9 /*ScalarType.STRING*/, V: { kind: "scalar", T: 9 /*ScalarType.STRING*/ } }, + { no: 2, name: "log", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): GetDebugInfoResponse { + const message = { config: {}, log: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetDebugInfoResponse): GetDebugInfoResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* map config */ 1: + this.binaryReadMap1(message.config, reader, options); + break; + case /* repeated string log */ 2: + message.log.push(reader.string()); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap1(map: GetDebugInfoResponse["config"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof GetDebugInfoResponse["config"] | undefined, val: GetDebugInfoResponse["config"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.string(); + break; + case 2: + val = reader.string(); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.GetDebugInfoResponse.config"); + } + } + map[key ?? ""] = val ?? ""; + } + internalBinaryWrite(message: GetDebugInfoResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* map config = 1; */ + for (let k of Object.keys(message.config)) + writer.tag(1, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k).tag(2, WireType.LengthDelimited).string(message.config[k]).join(); + /* repeated string log = 2; */ + for (let i = 0; i < message.log.length; i++) + writer.tag(2, WireType.LengthDelimited).string(message.log[i]); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.GetDebugInfoResponse + */ +export const GetDebugInfoResponse = new GetDebugInfoResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class GetRecoveryInfoRequest$Type extends MessageType { + constructor() { + super("lnrpc.GetRecoveryInfoRequest", []); + } + create(value?: PartialMessage): GetRecoveryInfoRequest { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetRecoveryInfoRequest): GetRecoveryInfoRequest { + return target ?? this.create(); + } + internalBinaryWrite(message: GetRecoveryInfoRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.GetRecoveryInfoRequest + */ +export const GetRecoveryInfoRequest = new GetRecoveryInfoRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class GetRecoveryInfoResponse$Type extends MessageType { + constructor() { + super("lnrpc.GetRecoveryInfoResponse", [ + { no: 1, name: "recovery_mode", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 2, name: "recovery_finished", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 3, name: "progress", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ } + ]); + } + create(value?: PartialMessage): GetRecoveryInfoResponse { + const message = { recoveryMode: false, recoveryFinished: false, progress: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetRecoveryInfoResponse): GetRecoveryInfoResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool recovery_mode */ 1: + message.recoveryMode = reader.bool(); + break; + case /* bool recovery_finished */ 2: + message.recoveryFinished = reader.bool(); + break; + case /* double progress */ 3: + message.progress = reader.double(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: GetRecoveryInfoResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool recovery_mode = 1; */ + if (message.recoveryMode !== false) + writer.tag(1, WireType.Varint).bool(message.recoveryMode); + /* bool recovery_finished = 2; */ + if (message.recoveryFinished !== false) + writer.tag(2, WireType.Varint).bool(message.recoveryFinished); + /* double progress = 3; */ + if (message.progress !== 0) + writer.tag(3, WireType.Bit64).double(message.progress); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.GetRecoveryInfoResponse + */ +export const GetRecoveryInfoResponse = new GetRecoveryInfoResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class Chain$Type extends MessageType { + constructor() { + super("lnrpc.Chain", [ + { no: 1, name: "chain", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "network", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): Chain { + const message = { chain: "", network: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Chain): Chain { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string chain = 1 [deprecated = true];*/ 1: + message.chain = reader.string(); + break; + case /* string network */ 2: + message.network = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: Chain, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string chain = 1 [deprecated = true]; */ + if (message.chain !== "") + writer.tag(1, WireType.LengthDelimited).string(message.chain); + /* string network = 2; */ + if (message.network !== "") + writer.tag(2, WireType.LengthDelimited).string(message.network); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.Chain + */ +export const Chain = new Chain$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ConfirmationUpdate$Type extends MessageType { + constructor() { + super("lnrpc.ConfirmationUpdate", [ + { no: 1, name: "block_sha", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "block_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 3, name: "num_confs_left", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } + ]); + } + create(value?: PartialMessage): ConfirmationUpdate { + const message = { blockSha: new Uint8Array(0), blockHeight: 0, numConfsLeft: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ConfirmationUpdate): ConfirmationUpdate { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes block_sha */ 1: + message.blockSha = reader.bytes(); + break; + case /* int32 block_height */ 2: + message.blockHeight = reader.int32(); + break; + case /* uint32 num_confs_left */ 3: + message.numConfsLeft = reader.uint32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ConfirmationUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes block_sha = 1; */ + if (message.blockSha.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.blockSha); + /* int32 block_height = 2; */ + if (message.blockHeight !== 0) + writer.tag(2, WireType.Varint).int32(message.blockHeight); + /* uint32 num_confs_left = 3; */ + if (message.numConfsLeft !== 0) + writer.tag(3, WireType.Varint).uint32(message.numConfsLeft); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ConfirmationUpdate + */ +export const ConfirmationUpdate = new ConfirmationUpdate$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelOpenUpdate$Type extends MessageType { + constructor() { + super("lnrpc.ChannelOpenUpdate", [ + { no: 1, name: "channel_point", kind: "message", T: () => ChannelPoint } + ]); + } + create(value?: PartialMessage): ChannelOpenUpdate { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelOpenUpdate): ChannelOpenUpdate { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.ChannelPoint channel_point */ 1: + message.channelPoint = ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.channelPoint); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChannelOpenUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.ChannelPoint channel_point = 1; */ + if (message.channelPoint) + ChannelPoint.internalBinaryWrite(message.channelPoint, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelOpenUpdate + */ +export const ChannelOpenUpdate = new ChannelOpenUpdate$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelCloseUpdate$Type extends MessageType { + constructor() { + super("lnrpc.ChannelCloseUpdate", [ + { no: 1, name: "closing_txid", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "success", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): ChannelCloseUpdate { + const message = { closingTxid: new Uint8Array(0), success: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelCloseUpdate): ChannelCloseUpdate { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes closing_txid */ 1: + message.closingTxid = reader.bytes(); + break; + case /* bool success */ 2: + message.success = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChannelCloseUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes closing_txid = 1; */ + if (message.closingTxid.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.closingTxid); + /* bool success = 2; */ + if (message.success !== false) + writer.tag(2, WireType.Varint).bool(message.success); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelCloseUpdate + */ +export const ChannelCloseUpdate = new ChannelCloseUpdate$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class CloseChannelRequest$Type extends MessageType { + constructor() { + super("lnrpc.CloseChannelRequest", [ + { no: 1, name: "channel_point", kind: "message", T: () => ChannelPoint }, + { no: 2, name: "force", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 3, name: "target_conf", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 4, name: "sat_per_byte", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "delivery_address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 6, name: "sat_per_vbyte", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "max_fee_per_vbyte", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 8, name: "no_wait", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): CloseChannelRequest { + const message = { force: false, targetConf: 0, satPerByte: 0n, deliveryAddress: "", satPerVbyte: 0n, maxFeePerVbyte: 0n, noWait: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CloseChannelRequest): CloseChannelRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.ChannelPoint channel_point */ 1: + message.channelPoint = ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.channelPoint); + break; + case /* bool force */ 2: + message.force = reader.bool(); + break; + case /* int32 target_conf */ 3: + message.targetConf = reader.int32(); + break; + case /* int64 sat_per_byte = 4 [deprecated = true];*/ 4: + message.satPerByte = reader.int64().toBigInt(); + break; + case /* string delivery_address */ 5: + message.deliveryAddress = reader.string(); + break; + case /* uint64 sat_per_vbyte */ 6: + message.satPerVbyte = reader.uint64().toBigInt(); + break; + case /* uint64 max_fee_per_vbyte */ 7: + message.maxFeePerVbyte = reader.uint64().toBigInt(); + break; + case /* bool no_wait */ 8: + message.noWait = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: CloseChannelRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.ChannelPoint channel_point = 1; */ + if (message.channelPoint) + ChannelPoint.internalBinaryWrite(message.channelPoint, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* bool force = 2; */ + if (message.force !== false) + writer.tag(2, WireType.Varint).bool(message.force); + /* int32 target_conf = 3; */ + if (message.targetConf !== 0) + writer.tag(3, WireType.Varint).int32(message.targetConf); + /* int64 sat_per_byte = 4 [deprecated = true]; */ + if (message.satPerByte !== 0n) + writer.tag(4, WireType.Varint).int64(message.satPerByte); + /* string delivery_address = 5; */ + if (message.deliveryAddress !== "") + writer.tag(5, WireType.LengthDelimited).string(message.deliveryAddress); + /* uint64 sat_per_vbyte = 6; */ + if (message.satPerVbyte !== 0n) + writer.tag(6, WireType.Varint).uint64(message.satPerVbyte); + /* uint64 max_fee_per_vbyte = 7; */ + if (message.maxFeePerVbyte !== 0n) + writer.tag(7, WireType.Varint).uint64(message.maxFeePerVbyte); + /* bool no_wait = 8; */ + if (message.noWait !== false) + writer.tag(8, WireType.Varint).bool(message.noWait); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.CloseChannelRequest + */ +export const CloseChannelRequest = new CloseChannelRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class CloseStatusUpdate$Type extends MessageType { + constructor() { + super("lnrpc.CloseStatusUpdate", [ + { no: 1, name: "close_pending", kind: "message", oneof: "update", T: () => PendingUpdate }, + { no: 3, name: "chan_close", kind: "message", oneof: "update", T: () => ChannelCloseUpdate }, + { no: 4, name: "close_instant", kind: "message", oneof: "update", T: () => InstantUpdate } + ]); + } + create(value?: PartialMessage): CloseStatusUpdate { + const message = { update: { oneofKind: undefined } }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CloseStatusUpdate): CloseStatusUpdate { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.PendingUpdate close_pending */ 1: + message.update = { + oneofKind: "closePending", + closePending: PendingUpdate.internalBinaryRead(reader, reader.uint32(), options, (message.update as any).closePending) + }; + break; + case /* lnrpc.ChannelCloseUpdate chan_close */ 3: + message.update = { + oneofKind: "chanClose", + chanClose: ChannelCloseUpdate.internalBinaryRead(reader, reader.uint32(), options, (message.update as any).chanClose) + }; + break; + case /* lnrpc.InstantUpdate close_instant */ 4: + message.update = { + oneofKind: "closeInstant", + closeInstant: InstantUpdate.internalBinaryRead(reader, reader.uint32(), options, (message.update as any).closeInstant) + }; + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: CloseStatusUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.PendingUpdate close_pending = 1; */ + if (message.update.oneofKind === "closePending") + PendingUpdate.internalBinaryWrite(message.update.closePending, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.ChannelCloseUpdate chan_close = 3; */ + if (message.update.oneofKind === "chanClose") + ChannelCloseUpdate.internalBinaryWrite(message.update.chanClose, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.InstantUpdate close_instant = 4; */ + if (message.update.oneofKind === "closeInstant") + InstantUpdate.internalBinaryWrite(message.update.closeInstant, writer.tag(4, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.CloseStatusUpdate + */ +export const CloseStatusUpdate = new CloseStatusUpdate$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PendingUpdate$Type extends MessageType { + constructor() { + super("lnrpc.PendingUpdate", [ + { no: 1, name: "txid", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "output_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } + ]); + } + create(value?: PartialMessage): PendingUpdate { + const message = { txid: new Uint8Array(0), outputIndex: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingUpdate): PendingUpdate { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes txid */ 1: + message.txid = reader.bytes(); + break; + case /* uint32 output_index */ 2: + message.outputIndex = reader.uint32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PendingUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes txid = 1; */ + if (message.txid.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.txid); + /* uint32 output_index = 2; */ + if (message.outputIndex !== 0) + writer.tag(2, WireType.Varint).uint32(message.outputIndex); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PendingUpdate + */ +export const PendingUpdate = new PendingUpdate$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class InstantUpdate$Type extends MessageType { + constructor() { + super("lnrpc.InstantUpdate", []); + } + create(value?: PartialMessage): InstantUpdate { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: InstantUpdate): InstantUpdate { + return target ?? this.create(); + } + internalBinaryWrite(message: InstantUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.InstantUpdate + */ +export const InstantUpdate = new InstantUpdate$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ReadyForPsbtFunding$Type extends MessageType { + constructor() { + super("lnrpc.ReadyForPsbtFunding", [ + { no: 1, name: "funding_address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "funding_amount", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "psbt", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): ReadyForPsbtFunding { + const message = { fundingAddress: "", fundingAmount: 0n, psbt: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ReadyForPsbtFunding): ReadyForPsbtFunding { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string funding_address */ 1: + message.fundingAddress = reader.string(); + break; + case /* int64 funding_amount */ 2: + message.fundingAmount = reader.int64().toBigInt(); + break; + case /* bytes psbt */ 3: + message.psbt = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ReadyForPsbtFunding, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string funding_address = 1; */ + if (message.fundingAddress !== "") + writer.tag(1, WireType.LengthDelimited).string(message.fundingAddress); + /* int64 funding_amount = 2; */ + if (message.fundingAmount !== 0n) + writer.tag(2, WireType.Varint).int64(message.fundingAmount); + /* bytes psbt = 3; */ + if (message.psbt.length) + writer.tag(3, WireType.LengthDelimited).bytes(message.psbt); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ReadyForPsbtFunding + */ +export const ReadyForPsbtFunding = new ReadyForPsbtFunding$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class BatchOpenChannelRequest$Type extends MessageType { + constructor() { + super("lnrpc.BatchOpenChannelRequest", [ + { no: 1, name: "channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => BatchOpenChannel }, + { no: 2, name: "target_conf", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 3, name: "sat_per_vbyte", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "min_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 5, name: "spend_unconfirmed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 6, name: "label", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 7, name: "coin_selection_strategy", kind: "enum", T: () => ["lnrpc.CoinSelectionStrategy", CoinSelectionStrategy] } + ]); + } + create(value?: PartialMessage): BatchOpenChannelRequest { + const message = { channels: [], targetConf: 0, satPerVbyte: 0n, minConfs: 0, spendUnconfirmed: false, label: "", coinSelectionStrategy: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BatchOpenChannelRequest): BatchOpenChannelRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.BatchOpenChannel channels */ 1: + message.channels.push(BatchOpenChannel.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* int32 target_conf */ 2: + message.targetConf = reader.int32(); + break; + case /* int64 sat_per_vbyte */ 3: + message.satPerVbyte = reader.int64().toBigInt(); + break; + case /* int32 min_confs */ 4: + message.minConfs = reader.int32(); + break; + case /* bool spend_unconfirmed */ 5: + message.spendUnconfirmed = reader.bool(); + break; + case /* string label */ 6: + message.label = reader.string(); + break; + case /* lnrpc.CoinSelectionStrategy coin_selection_strategy */ 7: + message.coinSelectionStrategy = reader.int32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: BatchOpenChannelRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.BatchOpenChannel channels = 1; */ + for (let i = 0; i < message.channels.length; i++) + BatchOpenChannel.internalBinaryWrite(message.channels[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* int32 target_conf = 2; */ + if (message.targetConf !== 0) + writer.tag(2, WireType.Varint).int32(message.targetConf); + /* int64 sat_per_vbyte = 3; */ + if (message.satPerVbyte !== 0n) + writer.tag(3, WireType.Varint).int64(message.satPerVbyte); + /* int32 min_confs = 4; */ + if (message.minConfs !== 0) + writer.tag(4, WireType.Varint).int32(message.minConfs); + /* bool spend_unconfirmed = 5; */ + if (message.spendUnconfirmed !== false) + writer.tag(5, WireType.Varint).bool(message.spendUnconfirmed); + /* string label = 6; */ + if (message.label !== "") + writer.tag(6, WireType.LengthDelimited).string(message.label); + /* lnrpc.CoinSelectionStrategy coin_selection_strategy = 7; */ + if (message.coinSelectionStrategy !== 0) + writer.tag(7, WireType.Varint).int32(message.coinSelectionStrategy); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.BatchOpenChannelRequest + */ +export const BatchOpenChannelRequest = new BatchOpenChannelRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class BatchOpenChannel$Type extends MessageType { + constructor() { + super("lnrpc.BatchOpenChannel", [ + { no: 1, name: "node_pubkey", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "local_funding_amount", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "push_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "private", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 5, name: "min_htlc_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "remote_csv_delay", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 7, name: "close_address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 8, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 9, name: "commitment_type", kind: "enum", T: () => ["lnrpc.CommitmentType", CommitmentType] }, + { no: 10, name: "remote_max_value_in_flight_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 11, name: "remote_max_htlcs", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 12, name: "max_local_csv", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 13, name: "zero_conf", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 14, name: "scid_alias", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 15, name: "base_fee", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 16, name: "fee_rate", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 17, name: "use_base_fee", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 18, name: "use_fee_rate", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 19, name: "remote_chan_reserve_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 20, name: "memo", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): BatchOpenChannel { + const message = { nodePubkey: new Uint8Array(0), localFundingAmount: 0n, pushSat: 0n, private: false, minHtlcMsat: 0n, remoteCsvDelay: 0, closeAddress: "", pendingChanId: new Uint8Array(0), commitmentType: 0, remoteMaxValueInFlightMsat: 0n, remoteMaxHtlcs: 0, maxLocalCsv: 0, zeroConf: false, scidAlias: false, baseFee: 0n, feeRate: 0n, useBaseFee: false, useFeeRate: false, remoteChanReserveSat: 0n, memo: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BatchOpenChannel): BatchOpenChannel { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes node_pubkey */ 1: + message.nodePubkey = reader.bytes(); + break; + case /* int64 local_funding_amount */ 2: + message.localFundingAmount = reader.int64().toBigInt(); + break; + case /* int64 push_sat */ 3: + message.pushSat = reader.int64().toBigInt(); + break; + case /* bool private */ 4: + message.private = reader.bool(); + break; + case /* int64 min_htlc_msat */ 5: + message.minHtlcMsat = reader.int64().toBigInt(); + break; + case /* uint32 remote_csv_delay */ 6: + message.remoteCsvDelay = reader.uint32(); + break; + case /* string close_address */ 7: + message.closeAddress = reader.string(); + break; + case /* bytes pending_chan_id */ 8: + message.pendingChanId = reader.bytes(); + break; + case /* lnrpc.CommitmentType commitment_type */ 9: + message.commitmentType = reader.int32(); + break; + case /* uint64 remote_max_value_in_flight_msat */ 10: + message.remoteMaxValueInFlightMsat = reader.uint64().toBigInt(); + break; + case /* uint32 remote_max_htlcs */ 11: + message.remoteMaxHtlcs = reader.uint32(); + break; + case /* uint32 max_local_csv */ 12: + message.maxLocalCsv = reader.uint32(); + break; + case /* bool zero_conf */ 13: + message.zeroConf = reader.bool(); + break; + case /* bool scid_alias */ 14: + message.scidAlias = reader.bool(); + break; + case /* uint64 base_fee */ 15: + message.baseFee = reader.uint64().toBigInt(); + break; + case /* uint64 fee_rate */ 16: + message.feeRate = reader.uint64().toBigInt(); + break; + case /* bool use_base_fee */ 17: + message.useBaseFee = reader.bool(); + break; + case /* bool use_fee_rate */ 18: + message.useFeeRate = reader.bool(); + break; + case /* uint64 remote_chan_reserve_sat */ 19: + message.remoteChanReserveSat = reader.uint64().toBigInt(); + break; + case /* string memo */ 20: + message.memo = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: BatchOpenChannel, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes node_pubkey = 1; */ + if (message.nodePubkey.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.nodePubkey); + /* int64 local_funding_amount = 2; */ + if (message.localFundingAmount !== 0n) + writer.tag(2, WireType.Varint).int64(message.localFundingAmount); + /* int64 push_sat = 3; */ + if (message.pushSat !== 0n) + writer.tag(3, WireType.Varint).int64(message.pushSat); + /* bool private = 4; */ + if (message.private !== false) + writer.tag(4, WireType.Varint).bool(message.private); + /* int64 min_htlc_msat = 5; */ + if (message.minHtlcMsat !== 0n) + writer.tag(5, WireType.Varint).int64(message.minHtlcMsat); + /* uint32 remote_csv_delay = 6; */ + if (message.remoteCsvDelay !== 0) + writer.tag(6, WireType.Varint).uint32(message.remoteCsvDelay); + /* string close_address = 7; */ + if (message.closeAddress !== "") + writer.tag(7, WireType.LengthDelimited).string(message.closeAddress); + /* bytes pending_chan_id = 8; */ + if (message.pendingChanId.length) + writer.tag(8, WireType.LengthDelimited).bytes(message.pendingChanId); + /* lnrpc.CommitmentType commitment_type = 9; */ + if (message.commitmentType !== 0) + writer.tag(9, WireType.Varint).int32(message.commitmentType); + /* uint64 remote_max_value_in_flight_msat = 10; */ + if (message.remoteMaxValueInFlightMsat !== 0n) + writer.tag(10, WireType.Varint).uint64(message.remoteMaxValueInFlightMsat); + /* uint32 remote_max_htlcs = 11; */ + if (message.remoteMaxHtlcs !== 0) + writer.tag(11, WireType.Varint).uint32(message.remoteMaxHtlcs); + /* uint32 max_local_csv = 12; */ + if (message.maxLocalCsv !== 0) + writer.tag(12, WireType.Varint).uint32(message.maxLocalCsv); + /* bool zero_conf = 13; */ + if (message.zeroConf !== false) + writer.tag(13, WireType.Varint).bool(message.zeroConf); + /* bool scid_alias = 14; */ + if (message.scidAlias !== false) + writer.tag(14, WireType.Varint).bool(message.scidAlias); + /* uint64 base_fee = 15; */ + if (message.baseFee !== 0n) + writer.tag(15, WireType.Varint).uint64(message.baseFee); + /* uint64 fee_rate = 16; */ + if (message.feeRate !== 0n) + writer.tag(16, WireType.Varint).uint64(message.feeRate); + /* bool use_base_fee = 17; */ + if (message.useBaseFee !== false) + writer.tag(17, WireType.Varint).bool(message.useBaseFee); + /* bool use_fee_rate = 18; */ + if (message.useFeeRate !== false) + writer.tag(18, WireType.Varint).bool(message.useFeeRate); + /* uint64 remote_chan_reserve_sat = 19; */ + if (message.remoteChanReserveSat !== 0n) + writer.tag(19, WireType.Varint).uint64(message.remoteChanReserveSat); + /* string memo = 20; */ + if (message.memo !== "") + writer.tag(20, WireType.LengthDelimited).string(message.memo); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.BatchOpenChannel + */ +export const BatchOpenChannel = new BatchOpenChannel$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class BatchOpenChannelResponse$Type extends MessageType { + constructor() { + super("lnrpc.BatchOpenChannelResponse", [ + { no: 1, name: "pending_channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => PendingUpdate } + ]); + } + create(value?: PartialMessage): BatchOpenChannelResponse { + const message = { pendingChannels: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BatchOpenChannelResponse): BatchOpenChannelResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.PendingUpdate pending_channels */ 1: + message.pendingChannels.push(PendingUpdate.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: BatchOpenChannelResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.PendingUpdate pending_channels = 1; */ + for (let i = 0; i < message.pendingChannels.length; i++) + PendingUpdate.internalBinaryWrite(message.pendingChannels[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.BatchOpenChannelResponse + */ +export const BatchOpenChannelResponse = new BatchOpenChannelResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class OpenChannelRequest$Type extends MessageType { + constructor() { + super("lnrpc.OpenChannelRequest", [ + { no: 1, name: "sat_per_vbyte", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "node_pubkey", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "node_pubkey_string", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 4, name: "local_funding_amount", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "push_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "target_conf", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 7, name: "sat_per_byte", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 8, name: "private", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 9, name: "min_htlc_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 10, name: "remote_csv_delay", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 11, name: "min_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 12, name: "spend_unconfirmed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 13, name: "close_address", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 14, name: "funding_shim", kind: "message", T: () => FundingShim }, + { no: 15, name: "remote_max_value_in_flight_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 16, name: "remote_max_htlcs", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 17, name: "max_local_csv", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 18, name: "commitment_type", kind: "enum", T: () => ["lnrpc.CommitmentType", CommitmentType] }, + { no: 19, name: "zero_conf", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 20, name: "scid_alias", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 21, name: "base_fee", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 22, name: "fee_rate", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 23, name: "use_base_fee", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 24, name: "use_fee_rate", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 25, name: "remote_chan_reserve_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 26, name: "fund_max", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 27, name: "memo", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 28, name: "outpoints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => OutPoint } + ]); + } + create(value?: PartialMessage): OpenChannelRequest { + const message = { satPerVbyte: 0n, nodePubkey: new Uint8Array(0), nodePubkeyString: "", localFundingAmount: 0n, pushSat: 0n, targetConf: 0, satPerByte: 0n, private: false, minHtlcMsat: 0n, remoteCsvDelay: 0, minConfs: 0, spendUnconfirmed: false, closeAddress: "", remoteMaxValueInFlightMsat: 0n, remoteMaxHtlcs: 0, maxLocalCsv: 0, commitmentType: 0, zeroConf: false, scidAlias: false, baseFee: 0n, feeRate: 0n, useBaseFee: false, useFeeRate: false, remoteChanReserveSat: 0n, fundMax: false, memo: "", outpoints: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: OpenChannelRequest): OpenChannelRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 sat_per_vbyte */ 1: + message.satPerVbyte = reader.uint64().toBigInt(); + break; + case /* bytes node_pubkey */ 2: + message.nodePubkey = reader.bytes(); + break; + case /* string node_pubkey_string = 3 [deprecated = true];*/ 3: + message.nodePubkeyString = reader.string(); + break; + case /* int64 local_funding_amount */ 4: + message.localFundingAmount = reader.int64().toBigInt(); + break; + case /* int64 push_sat */ 5: + message.pushSat = reader.int64().toBigInt(); + break; + case /* int32 target_conf */ 6: + message.targetConf = reader.int32(); + break; + case /* int64 sat_per_byte = 7 [deprecated = true];*/ 7: + message.satPerByte = reader.int64().toBigInt(); + break; + case /* bool private */ 8: + message.private = reader.bool(); + break; + case /* int64 min_htlc_msat */ 9: + message.minHtlcMsat = reader.int64().toBigInt(); + break; + case /* uint32 remote_csv_delay */ 10: + message.remoteCsvDelay = reader.uint32(); + break; + case /* int32 min_confs */ 11: + message.minConfs = reader.int32(); + break; + case /* bool spend_unconfirmed */ 12: + message.spendUnconfirmed = reader.bool(); + break; + case /* string close_address */ 13: + message.closeAddress = reader.string(); + break; + case /* lnrpc.FundingShim funding_shim */ 14: + message.fundingShim = FundingShim.internalBinaryRead(reader, reader.uint32(), options, message.fundingShim); + break; + case /* uint64 remote_max_value_in_flight_msat */ 15: + message.remoteMaxValueInFlightMsat = reader.uint64().toBigInt(); + break; + case /* uint32 remote_max_htlcs */ 16: + message.remoteMaxHtlcs = reader.uint32(); + break; + case /* uint32 max_local_csv */ 17: + message.maxLocalCsv = reader.uint32(); + break; + case /* lnrpc.CommitmentType commitment_type */ 18: + message.commitmentType = reader.int32(); + break; + case /* bool zero_conf */ 19: + message.zeroConf = reader.bool(); + break; + case /* bool scid_alias */ 20: + message.scidAlias = reader.bool(); + break; + case /* uint64 base_fee */ 21: + message.baseFee = reader.uint64().toBigInt(); + break; + case /* uint64 fee_rate */ 22: + message.feeRate = reader.uint64().toBigInt(); + break; + case /* bool use_base_fee */ 23: + message.useBaseFee = reader.bool(); + break; + case /* bool use_fee_rate */ 24: + message.useFeeRate = reader.bool(); + break; + case /* uint64 remote_chan_reserve_sat */ 25: + message.remoteChanReserveSat = reader.uint64().toBigInt(); + break; + case /* bool fund_max */ 26: + message.fundMax = reader.bool(); + break; + case /* string memo */ 27: + message.memo = reader.string(); + break; + case /* repeated lnrpc.OutPoint outpoints */ 28: + message.outpoints.push(OutPoint.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: OpenChannelRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 sat_per_vbyte = 1; */ + if (message.satPerVbyte !== 0n) + writer.tag(1, WireType.Varint).uint64(message.satPerVbyte); + /* bytes node_pubkey = 2; */ + if (message.nodePubkey.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.nodePubkey); + /* string node_pubkey_string = 3 [deprecated = true]; */ + if (message.nodePubkeyString !== "") + writer.tag(3, WireType.LengthDelimited).string(message.nodePubkeyString); + /* int64 local_funding_amount = 4; */ + if (message.localFundingAmount !== 0n) + writer.tag(4, WireType.Varint).int64(message.localFundingAmount); + /* int64 push_sat = 5; */ + if (message.pushSat !== 0n) + writer.tag(5, WireType.Varint).int64(message.pushSat); + /* int32 target_conf = 6; */ + if (message.targetConf !== 0) + writer.tag(6, WireType.Varint).int32(message.targetConf); + /* int64 sat_per_byte = 7 [deprecated = true]; */ + if (message.satPerByte !== 0n) + writer.tag(7, WireType.Varint).int64(message.satPerByte); + /* bool private = 8; */ + if (message.private !== false) + writer.tag(8, WireType.Varint).bool(message.private); + /* int64 min_htlc_msat = 9; */ + if (message.minHtlcMsat !== 0n) + writer.tag(9, WireType.Varint).int64(message.minHtlcMsat); + /* uint32 remote_csv_delay = 10; */ + if (message.remoteCsvDelay !== 0) + writer.tag(10, WireType.Varint).uint32(message.remoteCsvDelay); + /* int32 min_confs = 11; */ + if (message.minConfs !== 0) + writer.tag(11, WireType.Varint).int32(message.minConfs); + /* bool spend_unconfirmed = 12; */ + if (message.spendUnconfirmed !== false) + writer.tag(12, WireType.Varint).bool(message.spendUnconfirmed); + /* string close_address = 13; */ + if (message.closeAddress !== "") + writer.tag(13, WireType.LengthDelimited).string(message.closeAddress); + /* lnrpc.FundingShim funding_shim = 14; */ + if (message.fundingShim) + FundingShim.internalBinaryWrite(message.fundingShim, writer.tag(14, WireType.LengthDelimited).fork(), options).join(); + /* uint64 remote_max_value_in_flight_msat = 15; */ + if (message.remoteMaxValueInFlightMsat !== 0n) + writer.tag(15, WireType.Varint).uint64(message.remoteMaxValueInFlightMsat); + /* uint32 remote_max_htlcs = 16; */ + if (message.remoteMaxHtlcs !== 0) + writer.tag(16, WireType.Varint).uint32(message.remoteMaxHtlcs); + /* uint32 max_local_csv = 17; */ + if (message.maxLocalCsv !== 0) + writer.tag(17, WireType.Varint).uint32(message.maxLocalCsv); + /* lnrpc.CommitmentType commitment_type = 18; */ + if (message.commitmentType !== 0) + writer.tag(18, WireType.Varint).int32(message.commitmentType); + /* bool zero_conf = 19; */ + if (message.zeroConf !== false) + writer.tag(19, WireType.Varint).bool(message.zeroConf); + /* bool scid_alias = 20; */ + if (message.scidAlias !== false) + writer.tag(20, WireType.Varint).bool(message.scidAlias); + /* uint64 base_fee = 21; */ + if (message.baseFee !== 0n) + writer.tag(21, WireType.Varint).uint64(message.baseFee); + /* uint64 fee_rate = 22; */ + if (message.feeRate !== 0n) + writer.tag(22, WireType.Varint).uint64(message.feeRate); + /* bool use_base_fee = 23; */ + if (message.useBaseFee !== false) + writer.tag(23, WireType.Varint).bool(message.useBaseFee); + /* bool use_fee_rate = 24; */ + if (message.useFeeRate !== false) + writer.tag(24, WireType.Varint).bool(message.useFeeRate); + /* uint64 remote_chan_reserve_sat = 25; */ + if (message.remoteChanReserveSat !== 0n) + writer.tag(25, WireType.Varint).uint64(message.remoteChanReserveSat); + /* bool fund_max = 26; */ + if (message.fundMax !== false) + writer.tag(26, WireType.Varint).bool(message.fundMax); + /* string memo = 27; */ + if (message.memo !== "") + writer.tag(27, WireType.LengthDelimited).string(message.memo); + /* repeated lnrpc.OutPoint outpoints = 28; */ + for (let i = 0; i < message.outpoints.length; i++) + OutPoint.internalBinaryWrite(message.outpoints[i], writer.tag(28, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.OpenChannelRequest + */ +export const OpenChannelRequest = new OpenChannelRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class OpenStatusUpdate$Type extends MessageType { + constructor() { + super("lnrpc.OpenStatusUpdate", [ + { no: 1, name: "chan_pending", kind: "message", oneof: "update", T: () => PendingUpdate }, + { no: 3, name: "chan_open", kind: "message", oneof: "update", T: () => ChannelOpenUpdate }, + { no: 5, name: "psbt_fund", kind: "message", oneof: "update", T: () => ReadyForPsbtFunding }, + { no: 4, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): OpenStatusUpdate { + const message = { update: { oneofKind: undefined }, pendingChanId: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: OpenStatusUpdate): OpenStatusUpdate { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.PendingUpdate chan_pending */ 1: + message.update = { + oneofKind: "chanPending", + chanPending: PendingUpdate.internalBinaryRead(reader, reader.uint32(), options, (message.update as any).chanPending) + }; + break; + case /* lnrpc.ChannelOpenUpdate chan_open */ 3: + message.update = { + oneofKind: "chanOpen", + chanOpen: ChannelOpenUpdate.internalBinaryRead(reader, reader.uint32(), options, (message.update as any).chanOpen) + }; + break; + case /* lnrpc.ReadyForPsbtFunding psbt_fund */ 5: + message.update = { + oneofKind: "psbtFund", + psbtFund: ReadyForPsbtFunding.internalBinaryRead(reader, reader.uint32(), options, (message.update as any).psbtFund) + }; + break; + case /* bytes pending_chan_id */ 4: + message.pendingChanId = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: OpenStatusUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.PendingUpdate chan_pending = 1; */ + if (message.update.oneofKind === "chanPending") + PendingUpdate.internalBinaryWrite(message.update.chanPending, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.ChannelOpenUpdate chan_open = 3; */ + if (message.update.oneofKind === "chanOpen") + ChannelOpenUpdate.internalBinaryWrite(message.update.chanOpen, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.ReadyForPsbtFunding psbt_fund = 5; */ + if (message.update.oneofKind === "psbtFund") + ReadyForPsbtFunding.internalBinaryWrite(message.update.psbtFund, writer.tag(5, WireType.LengthDelimited).fork(), options).join(); + /* bytes pending_chan_id = 4; */ + if (message.pendingChanId.length) + writer.tag(4, WireType.LengthDelimited).bytes(message.pendingChanId); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.OpenStatusUpdate + */ +export const OpenStatusUpdate = new OpenStatusUpdate$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class KeyLocator$Type extends MessageType { + constructor() { + super("lnrpc.KeyLocator", [ + { no: 1, name: "key_family", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 2, name: "key_index", kind: "scalar", T: 5 /*ScalarType.INT32*/ } + ]); + } + create(value?: PartialMessage): KeyLocator { + const message = { keyFamily: 0, keyIndex: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: KeyLocator): KeyLocator { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* int32 key_family */ 1: + message.keyFamily = reader.int32(); + break; + case /* int32 key_index */ 2: + message.keyIndex = reader.int32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: KeyLocator, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* int32 key_family = 1; */ + if (message.keyFamily !== 0) + writer.tag(1, WireType.Varint).int32(message.keyFamily); + /* int32 key_index = 2; */ + if (message.keyIndex !== 0) + writer.tag(2, WireType.Varint).int32(message.keyIndex); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.KeyLocator + */ +export const KeyLocator = new KeyLocator$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class KeyDescriptor$Type extends MessageType { + constructor() { + super("lnrpc.KeyDescriptor", [ + { no: 1, name: "raw_key_bytes", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "key_loc", kind: "message", T: () => KeyLocator } + ]); + } + create(value?: PartialMessage): KeyDescriptor { + const message = { rawKeyBytes: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: KeyDescriptor): KeyDescriptor { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes raw_key_bytes */ 1: + message.rawKeyBytes = reader.bytes(); + break; + case /* lnrpc.KeyLocator key_loc */ 2: + message.keyLoc = KeyLocator.internalBinaryRead(reader, reader.uint32(), options, message.keyLoc); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: KeyDescriptor, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes raw_key_bytes = 1; */ + if (message.rawKeyBytes.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.rawKeyBytes); + /* lnrpc.KeyLocator key_loc = 2; */ + if (message.keyLoc) + KeyLocator.internalBinaryWrite(message.keyLoc, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.KeyDescriptor + */ +export const KeyDescriptor = new KeyDescriptor$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChanPointShim$Type extends MessageType { + constructor() { + super("lnrpc.ChanPointShim", [ + { no: 1, name: "amt", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "chan_point", kind: "message", T: () => ChannelPoint }, + { no: 3, name: "local_key", kind: "message", T: () => KeyDescriptor }, + { no: 4, name: "remote_key", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 5, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 6, name: "thaw_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 7, name: "musig2", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): ChanPointShim { + const message = { amt: 0n, remoteKey: new Uint8Array(0), pendingChanId: new Uint8Array(0), thawHeight: 0, musig2: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChanPointShim): ChanPointShim { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* int64 amt */ 1: + message.amt = reader.int64().toBigInt(); + break; + case /* lnrpc.ChannelPoint chan_point */ 2: + message.chanPoint = ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.chanPoint); + break; + case /* lnrpc.KeyDescriptor local_key */ 3: + message.localKey = KeyDescriptor.internalBinaryRead(reader, reader.uint32(), options, message.localKey); + break; + case /* bytes remote_key */ 4: + message.remoteKey = reader.bytes(); + break; + case /* bytes pending_chan_id */ 5: + message.pendingChanId = reader.bytes(); + break; + case /* uint32 thaw_height */ 6: + message.thawHeight = reader.uint32(); + break; + case /* bool musig2 */ 7: + message.musig2 = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChanPointShim, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* int64 amt = 1; */ + if (message.amt !== 0n) + writer.tag(1, WireType.Varint).int64(message.amt); + /* lnrpc.ChannelPoint chan_point = 2; */ + if (message.chanPoint) + ChannelPoint.internalBinaryWrite(message.chanPoint, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.KeyDescriptor local_key = 3; */ + if (message.localKey) + KeyDescriptor.internalBinaryWrite(message.localKey, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); + /* bytes remote_key = 4; */ + if (message.remoteKey.length) + writer.tag(4, WireType.LengthDelimited).bytes(message.remoteKey); + /* bytes pending_chan_id = 5; */ + if (message.pendingChanId.length) + writer.tag(5, WireType.LengthDelimited).bytes(message.pendingChanId); + /* uint32 thaw_height = 6; */ + if (message.thawHeight !== 0) + writer.tag(6, WireType.Varint).uint32(message.thawHeight); + /* bool musig2 = 7; */ + if (message.musig2 !== false) + writer.tag(7, WireType.Varint).bool(message.musig2); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChanPointShim + */ +export const ChanPointShim = new ChanPointShim$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PsbtShim$Type extends MessageType { + constructor() { + super("lnrpc.PsbtShim", [ + { no: 1, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "base_psbt", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "no_publish", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): PsbtShim { + const message = { pendingChanId: new Uint8Array(0), basePsbt: new Uint8Array(0), noPublish: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PsbtShim): PsbtShim { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes pending_chan_id */ 1: + message.pendingChanId = reader.bytes(); + break; + case /* bytes base_psbt */ 2: + message.basePsbt = reader.bytes(); + break; + case /* bool no_publish */ 3: + message.noPublish = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PsbtShim, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes pending_chan_id = 1; */ + if (message.pendingChanId.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.pendingChanId); + /* bytes base_psbt = 2; */ + if (message.basePsbt.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.basePsbt); + /* bool no_publish = 3; */ + if (message.noPublish !== false) + writer.tag(3, WireType.Varint).bool(message.noPublish); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PsbtShim + */ +export const PsbtShim = new PsbtShim$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class FundingShim$Type extends MessageType { + constructor() { + super("lnrpc.FundingShim", [ + { no: 1, name: "chan_point_shim", kind: "message", oneof: "shim", T: () => ChanPointShim }, + { no: 2, name: "psbt_shim", kind: "message", oneof: "shim", T: () => PsbtShim } + ]); + } + create(value?: PartialMessage): FundingShim { + const message = { shim: { oneofKind: undefined } }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FundingShim): FundingShim { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.ChanPointShim chan_point_shim */ 1: + message.shim = { + oneofKind: "chanPointShim", + chanPointShim: ChanPointShim.internalBinaryRead(reader, reader.uint32(), options, (message.shim as any).chanPointShim) + }; + break; + case /* lnrpc.PsbtShim psbt_shim */ 2: + message.shim = { + oneofKind: "psbtShim", + psbtShim: PsbtShim.internalBinaryRead(reader, reader.uint32(), options, (message.shim as any).psbtShim) + }; + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: FundingShim, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.ChanPointShim chan_point_shim = 1; */ + if (message.shim.oneofKind === "chanPointShim") + ChanPointShim.internalBinaryWrite(message.shim.chanPointShim, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.PsbtShim psbt_shim = 2; */ + if (message.shim.oneofKind === "psbtShim") + PsbtShim.internalBinaryWrite(message.shim.psbtShim, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.FundingShim + */ +export const FundingShim = new FundingShim$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class FundingShimCancel$Type extends MessageType { + constructor() { + super("lnrpc.FundingShimCancel", [ + { no: 1, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): FundingShimCancel { + const message = { pendingChanId: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FundingShimCancel): FundingShimCancel { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes pending_chan_id */ 1: + message.pendingChanId = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: FundingShimCancel, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes pending_chan_id = 1; */ + if (message.pendingChanId.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.pendingChanId); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.FundingShimCancel + */ +export const FundingShimCancel = new FundingShimCancel$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class FundingPsbtVerify$Type extends MessageType { + constructor() { + super("lnrpc.FundingPsbtVerify", [ + { no: 1, name: "funded_psbt", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "skip_finalize", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): FundingPsbtVerify { + const message = { fundedPsbt: new Uint8Array(0), pendingChanId: new Uint8Array(0), skipFinalize: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FundingPsbtVerify): FundingPsbtVerify { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes funded_psbt */ 1: + message.fundedPsbt = reader.bytes(); + break; + case /* bytes pending_chan_id */ 2: + message.pendingChanId = reader.bytes(); + break; + case /* bool skip_finalize */ 3: + message.skipFinalize = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: FundingPsbtVerify, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes funded_psbt = 1; */ + if (message.fundedPsbt.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.fundedPsbt); + /* bytes pending_chan_id = 2; */ + if (message.pendingChanId.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.pendingChanId); + /* bool skip_finalize = 3; */ + if (message.skipFinalize !== false) + writer.tag(3, WireType.Varint).bool(message.skipFinalize); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.FundingPsbtVerify + */ +export const FundingPsbtVerify = new FundingPsbtVerify$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class FundingPsbtFinalize$Type extends MessageType { + constructor() { + super("lnrpc.FundingPsbtFinalize", [ + { no: 1, name: "signed_psbt", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "pending_chan_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "final_raw_tx", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): FundingPsbtFinalize { + const message = { signedPsbt: new Uint8Array(0), pendingChanId: new Uint8Array(0), finalRawTx: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FundingPsbtFinalize): FundingPsbtFinalize { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes signed_psbt */ 1: + message.signedPsbt = reader.bytes(); + break; + case /* bytes pending_chan_id */ 2: + message.pendingChanId = reader.bytes(); + break; + case /* bytes final_raw_tx */ 3: + message.finalRawTx = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: FundingPsbtFinalize, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes signed_psbt = 1; */ + if (message.signedPsbt.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.signedPsbt); + /* bytes pending_chan_id = 2; */ + if (message.pendingChanId.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.pendingChanId); + /* bytes final_raw_tx = 3; */ + if (message.finalRawTx.length) + writer.tag(3, WireType.LengthDelimited).bytes(message.finalRawTx); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.FundingPsbtFinalize + */ +export const FundingPsbtFinalize = new FundingPsbtFinalize$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class FundingTransitionMsg$Type extends MessageType { + constructor() { + super("lnrpc.FundingTransitionMsg", [ + { no: 1, name: "shim_register", kind: "message", oneof: "trigger", T: () => FundingShim }, + { no: 2, name: "shim_cancel", kind: "message", oneof: "trigger", T: () => FundingShimCancel }, + { no: 3, name: "psbt_verify", kind: "message", oneof: "trigger", T: () => FundingPsbtVerify }, + { no: 4, name: "psbt_finalize", kind: "message", oneof: "trigger", T: () => FundingPsbtFinalize } + ]); + } + create(value?: PartialMessage): FundingTransitionMsg { + const message = { trigger: { oneofKind: undefined } }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FundingTransitionMsg): FundingTransitionMsg { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.FundingShim shim_register */ 1: + message.trigger = { + oneofKind: "shimRegister", + shimRegister: FundingShim.internalBinaryRead(reader, reader.uint32(), options, (message.trigger as any).shimRegister) + }; + break; + case /* lnrpc.FundingShimCancel shim_cancel */ 2: + message.trigger = { + oneofKind: "shimCancel", + shimCancel: FundingShimCancel.internalBinaryRead(reader, reader.uint32(), options, (message.trigger as any).shimCancel) + }; + break; + case /* lnrpc.FundingPsbtVerify psbt_verify */ 3: + message.trigger = { + oneofKind: "psbtVerify", + psbtVerify: FundingPsbtVerify.internalBinaryRead(reader, reader.uint32(), options, (message.trigger as any).psbtVerify) + }; + break; + case /* lnrpc.FundingPsbtFinalize psbt_finalize */ 4: + message.trigger = { + oneofKind: "psbtFinalize", + psbtFinalize: FundingPsbtFinalize.internalBinaryRead(reader, reader.uint32(), options, (message.trigger as any).psbtFinalize) + }; + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: FundingTransitionMsg, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.FundingShim shim_register = 1; */ + if (message.trigger.oneofKind === "shimRegister") + FundingShim.internalBinaryWrite(message.trigger.shimRegister, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.FundingShimCancel shim_cancel = 2; */ + if (message.trigger.oneofKind === "shimCancel") + FundingShimCancel.internalBinaryWrite(message.trigger.shimCancel, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.FundingPsbtVerify psbt_verify = 3; */ + if (message.trigger.oneofKind === "psbtVerify") + FundingPsbtVerify.internalBinaryWrite(message.trigger.psbtVerify, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.FundingPsbtFinalize psbt_finalize = 4; */ + if (message.trigger.oneofKind === "psbtFinalize") + FundingPsbtFinalize.internalBinaryWrite(message.trigger.psbtFinalize, writer.tag(4, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.FundingTransitionMsg + */ +export const FundingTransitionMsg = new FundingTransitionMsg$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class FundingStateStepResp$Type extends MessageType { + constructor() { + super("lnrpc.FundingStateStepResp", []); + } + create(value?: PartialMessage): FundingStateStepResp { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FundingStateStepResp): FundingStateStepResp { + return target ?? this.create(); + } + internalBinaryWrite(message: FundingStateStepResp, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.FundingStateStepResp + */ +export const FundingStateStepResp = new FundingStateStepResp$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PendingHTLC$Type extends MessageType { + constructor() { + super("lnrpc.PendingHTLC", [ + { no: 1, name: "incoming", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 2, name: "amount", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "outpoint", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 4, name: "maturity_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 5, name: "blocks_til_maturity", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 6, name: "stage", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } + ]); + } + create(value?: PartialMessage): PendingHTLC { + const message = { incoming: false, amount: 0n, outpoint: "", maturityHeight: 0, blocksTilMaturity: 0, stage: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingHTLC): PendingHTLC { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool incoming */ 1: + message.incoming = reader.bool(); + break; + case /* int64 amount */ 2: + message.amount = reader.int64().toBigInt(); + break; + case /* string outpoint */ 3: + message.outpoint = reader.string(); + break; + case /* uint32 maturity_height */ 4: + message.maturityHeight = reader.uint32(); + break; + case /* int32 blocks_til_maturity */ 5: + message.blocksTilMaturity = reader.int32(); + break; + case /* uint32 stage */ 6: + message.stage = reader.uint32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PendingHTLC, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool incoming = 1; */ + if (message.incoming !== false) + writer.tag(1, WireType.Varint).bool(message.incoming); + /* int64 amount = 2; */ + if (message.amount !== 0n) + writer.tag(2, WireType.Varint).int64(message.amount); + /* string outpoint = 3; */ + if (message.outpoint !== "") + writer.tag(3, WireType.LengthDelimited).string(message.outpoint); + /* uint32 maturity_height = 4; */ + if (message.maturityHeight !== 0) + writer.tag(4, WireType.Varint).uint32(message.maturityHeight); + /* int32 blocks_til_maturity = 5; */ + if (message.blocksTilMaturity !== 0) + writer.tag(5, WireType.Varint).int32(message.blocksTilMaturity); + /* uint32 stage = 6; */ + if (message.stage !== 0) + writer.tag(6, WireType.Varint).uint32(message.stage); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PendingHTLC + */ +export const PendingHTLC = new PendingHTLC$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PendingChannelsRequest$Type extends MessageType { + constructor() { + super("lnrpc.PendingChannelsRequest", [ + { no: 1, name: "include_raw_tx", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): PendingChannelsRequest { + const message = { includeRawTx: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingChannelsRequest): PendingChannelsRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool include_raw_tx */ 1: + message.includeRawTx = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PendingChannelsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool include_raw_tx = 1; */ + if (message.includeRawTx !== false) + writer.tag(1, WireType.Varint).bool(message.includeRawTx); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PendingChannelsRequest + */ +export const PendingChannelsRequest = new PendingChannelsRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PendingChannelsResponse$Type extends MessageType { + constructor() { + super("lnrpc.PendingChannelsResponse", [ + { no: 1, name: "total_limbo_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "pending_open_channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => PendingChannelsResponse_PendingOpenChannel }, + { no: 3, name: "pending_closing_channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => PendingChannelsResponse_ClosedChannel }, + { no: 4, name: "pending_force_closing_channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => PendingChannelsResponse_ForceClosedChannel }, + { no: 5, name: "waiting_close_channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => PendingChannelsResponse_WaitingCloseChannel } + ]); + } + create(value?: PartialMessage): PendingChannelsResponse { + const message = { totalLimboBalance: 0n, pendingOpenChannels: [], pendingClosingChannels: [], pendingForceClosingChannels: [], waitingCloseChannels: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingChannelsResponse): PendingChannelsResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* int64 total_limbo_balance */ 1: + message.totalLimboBalance = reader.int64().toBigInt(); + break; + case /* repeated lnrpc.PendingChannelsResponse.PendingOpenChannel pending_open_channels */ 2: + message.pendingOpenChannels.push(PendingChannelsResponse_PendingOpenChannel.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* repeated lnrpc.PendingChannelsResponse.ClosedChannel pending_closing_channels = 3 [deprecated = true];*/ 3: + message.pendingClosingChannels.push(PendingChannelsResponse_ClosedChannel.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* repeated lnrpc.PendingChannelsResponse.ForceClosedChannel pending_force_closing_channels */ 4: + message.pendingForceClosingChannels.push(PendingChannelsResponse_ForceClosedChannel.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* repeated lnrpc.PendingChannelsResponse.WaitingCloseChannel waiting_close_channels */ 5: + message.waitingCloseChannels.push(PendingChannelsResponse_WaitingCloseChannel.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PendingChannelsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* int64 total_limbo_balance = 1; */ + if (message.totalLimboBalance !== 0n) + writer.tag(1, WireType.Varint).int64(message.totalLimboBalance); + /* repeated lnrpc.PendingChannelsResponse.PendingOpenChannel pending_open_channels = 2; */ + for (let i = 0; i < message.pendingOpenChannels.length; i++) + PendingChannelsResponse_PendingOpenChannel.internalBinaryWrite(message.pendingOpenChannels[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + /* repeated lnrpc.PendingChannelsResponse.ClosedChannel pending_closing_channels = 3 [deprecated = true]; */ + for (let i = 0; i < message.pendingClosingChannels.length; i++) + PendingChannelsResponse_ClosedChannel.internalBinaryWrite(message.pendingClosingChannels[i], writer.tag(3, WireType.LengthDelimited).fork(), options).join(); + /* repeated lnrpc.PendingChannelsResponse.ForceClosedChannel pending_force_closing_channels = 4; */ + for (let i = 0; i < message.pendingForceClosingChannels.length; i++) + PendingChannelsResponse_ForceClosedChannel.internalBinaryWrite(message.pendingForceClosingChannels[i], writer.tag(4, WireType.LengthDelimited).fork(), options).join(); + /* repeated lnrpc.PendingChannelsResponse.WaitingCloseChannel waiting_close_channels = 5; */ + for (let i = 0; i < message.waitingCloseChannels.length; i++) + PendingChannelsResponse_WaitingCloseChannel.internalBinaryWrite(message.waitingCloseChannels[i], writer.tag(5, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse + */ +export const PendingChannelsResponse = new PendingChannelsResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PendingChannelsResponse_PendingChannel$Type extends MessageType { + constructor() { + super("lnrpc.PendingChannelsResponse.PendingChannel", [ + { no: 1, name: "remote_node_pub", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "channel_point", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 3, name: "capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "local_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "remote_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "local_chan_reserve_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "remote_chan_reserve_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 8, name: "initiator", kind: "enum", T: () => ["lnrpc.Initiator", Initiator, "INITIATOR_"] }, + { no: 9, name: "commitment_type", kind: "enum", T: () => ["lnrpc.CommitmentType", CommitmentType] }, + { no: 10, name: "num_forwarding_packages", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 11, name: "chan_status_flags", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 12, name: "private", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 13, name: "memo", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): PendingChannelsResponse_PendingChannel { + const message = { remoteNodePub: "", channelPoint: "", capacity: 0n, localBalance: 0n, remoteBalance: 0n, localChanReserveSat: 0n, remoteChanReserveSat: 0n, initiator: 0, commitmentType: 0, numForwardingPackages: 0n, chanStatusFlags: "", private: false, memo: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingChannelsResponse_PendingChannel): PendingChannelsResponse_PendingChannel { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string remote_node_pub */ 1: + message.remoteNodePub = reader.string(); + break; + case /* string channel_point */ 2: + message.channelPoint = reader.string(); + break; + case /* int64 capacity */ 3: + message.capacity = reader.int64().toBigInt(); + break; + case /* int64 local_balance */ 4: + message.localBalance = reader.int64().toBigInt(); + break; + case /* int64 remote_balance */ 5: + message.remoteBalance = reader.int64().toBigInt(); + break; + case /* int64 local_chan_reserve_sat */ 6: + message.localChanReserveSat = reader.int64().toBigInt(); + break; + case /* int64 remote_chan_reserve_sat */ 7: + message.remoteChanReserveSat = reader.int64().toBigInt(); + break; + case /* lnrpc.Initiator initiator */ 8: + message.initiator = reader.int32(); + break; + case /* lnrpc.CommitmentType commitment_type */ 9: + message.commitmentType = reader.int32(); + break; + case /* int64 num_forwarding_packages */ 10: + message.numForwardingPackages = reader.int64().toBigInt(); + break; + case /* string chan_status_flags */ 11: + message.chanStatusFlags = reader.string(); + break; + case /* bool private */ 12: + message.private = reader.bool(); + break; + case /* string memo */ 13: + message.memo = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PendingChannelsResponse_PendingChannel, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string remote_node_pub = 1; */ + if (message.remoteNodePub !== "") + writer.tag(1, WireType.LengthDelimited).string(message.remoteNodePub); + /* string channel_point = 2; */ + if (message.channelPoint !== "") + writer.tag(2, WireType.LengthDelimited).string(message.channelPoint); + /* int64 capacity = 3; */ + if (message.capacity !== 0n) + writer.tag(3, WireType.Varint).int64(message.capacity); + /* int64 local_balance = 4; */ + if (message.localBalance !== 0n) + writer.tag(4, WireType.Varint).int64(message.localBalance); + /* int64 remote_balance = 5; */ + if (message.remoteBalance !== 0n) + writer.tag(5, WireType.Varint).int64(message.remoteBalance); + /* int64 local_chan_reserve_sat = 6; */ + if (message.localChanReserveSat !== 0n) + writer.tag(6, WireType.Varint).int64(message.localChanReserveSat); + /* int64 remote_chan_reserve_sat = 7; */ + if (message.remoteChanReserveSat !== 0n) + writer.tag(7, WireType.Varint).int64(message.remoteChanReserveSat); + /* lnrpc.Initiator initiator = 8; */ + if (message.initiator !== 0) + writer.tag(8, WireType.Varint).int32(message.initiator); + /* lnrpc.CommitmentType commitment_type = 9; */ + if (message.commitmentType !== 0) + writer.tag(9, WireType.Varint).int32(message.commitmentType); + /* int64 num_forwarding_packages = 10; */ + if (message.numForwardingPackages !== 0n) + writer.tag(10, WireType.Varint).int64(message.numForwardingPackages); + /* string chan_status_flags = 11; */ + if (message.chanStatusFlags !== "") + writer.tag(11, WireType.LengthDelimited).string(message.chanStatusFlags); + /* bool private = 12; */ + if (message.private !== false) + writer.tag(12, WireType.Varint).bool(message.private); + /* string memo = 13; */ + if (message.memo !== "") + writer.tag(13, WireType.LengthDelimited).string(message.memo); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse.PendingChannel + */ +export const PendingChannelsResponse_PendingChannel = new PendingChannelsResponse_PendingChannel$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PendingChannelsResponse_PendingOpenChannel$Type extends MessageType { + constructor() { + super("lnrpc.PendingChannelsResponse.PendingOpenChannel", [ + { no: 1, name: "channel", kind: "message", T: () => PendingChannelsResponse_PendingChannel }, + { no: 4, name: "commit_fee", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "commit_weight", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "fee_per_kw", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "funding_expiry_blocks", kind: "scalar", T: 5 /*ScalarType.INT32*/ } + ]); + } + create(value?: PartialMessage): PendingChannelsResponse_PendingOpenChannel { + const message = { commitFee: 0n, commitWeight: 0n, feePerKw: 0n, fundingExpiryBlocks: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingChannelsResponse_PendingOpenChannel): PendingChannelsResponse_PendingOpenChannel { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.PendingChannelsResponse.PendingChannel channel */ 1: + message.channel = PendingChannelsResponse_PendingChannel.internalBinaryRead(reader, reader.uint32(), options, message.channel); + break; + case /* int64 commit_fee */ 4: + message.commitFee = reader.int64().toBigInt(); + break; + case /* int64 commit_weight */ 5: + message.commitWeight = reader.int64().toBigInt(); + break; + case /* int64 fee_per_kw */ 6: + message.feePerKw = reader.int64().toBigInt(); + break; + case /* int32 funding_expiry_blocks */ 3: + message.fundingExpiryBlocks = reader.int32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PendingChannelsResponse_PendingOpenChannel, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.PendingChannelsResponse.PendingChannel channel = 1; */ + if (message.channel) + PendingChannelsResponse_PendingChannel.internalBinaryWrite(message.channel, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* int64 commit_fee = 4; */ + if (message.commitFee !== 0n) + writer.tag(4, WireType.Varint).int64(message.commitFee); + /* int64 commit_weight = 5; */ + if (message.commitWeight !== 0n) + writer.tag(5, WireType.Varint).int64(message.commitWeight); + /* int64 fee_per_kw = 6; */ + if (message.feePerKw !== 0n) + writer.tag(6, WireType.Varint).int64(message.feePerKw); + /* int32 funding_expiry_blocks = 3; */ + if (message.fundingExpiryBlocks !== 0) + writer.tag(3, WireType.Varint).int32(message.fundingExpiryBlocks); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse.PendingOpenChannel + */ +export const PendingChannelsResponse_PendingOpenChannel = new PendingChannelsResponse_PendingOpenChannel$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PendingChannelsResponse_WaitingCloseChannel$Type extends MessageType { + constructor() { + super("lnrpc.PendingChannelsResponse.WaitingCloseChannel", [ + { no: 1, name: "channel", kind: "message", T: () => PendingChannelsResponse_PendingChannel }, + { no: 2, name: "limbo_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "commitments", kind: "message", T: () => PendingChannelsResponse_Commitments }, + { no: 4, name: "closing_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 5, name: "closing_tx_hex", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): PendingChannelsResponse_WaitingCloseChannel { + const message = { limboBalance: 0n, closingTxid: "", closingTxHex: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingChannelsResponse_WaitingCloseChannel): PendingChannelsResponse_WaitingCloseChannel { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.PendingChannelsResponse.PendingChannel channel */ 1: + message.channel = PendingChannelsResponse_PendingChannel.internalBinaryRead(reader, reader.uint32(), options, message.channel); + break; + case /* int64 limbo_balance */ 2: + message.limboBalance = reader.int64().toBigInt(); + break; + case /* lnrpc.PendingChannelsResponse.Commitments commitments */ 3: + message.commitments = PendingChannelsResponse_Commitments.internalBinaryRead(reader, reader.uint32(), options, message.commitments); + break; + case /* string closing_txid */ 4: + message.closingTxid = reader.string(); + break; + case /* string closing_tx_hex */ 5: + message.closingTxHex = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PendingChannelsResponse_WaitingCloseChannel, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.PendingChannelsResponse.PendingChannel channel = 1; */ + if (message.channel) + PendingChannelsResponse_PendingChannel.internalBinaryWrite(message.channel, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* int64 limbo_balance = 2; */ + if (message.limboBalance !== 0n) + writer.tag(2, WireType.Varint).int64(message.limboBalance); + /* lnrpc.PendingChannelsResponse.Commitments commitments = 3; */ + if (message.commitments) + PendingChannelsResponse_Commitments.internalBinaryWrite(message.commitments, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); + /* string closing_txid = 4; */ + if (message.closingTxid !== "") + writer.tag(4, WireType.LengthDelimited).string(message.closingTxid); + /* string closing_tx_hex = 5; */ + if (message.closingTxHex !== "") + writer.tag(5, WireType.LengthDelimited).string(message.closingTxHex); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse.WaitingCloseChannel + */ +export const PendingChannelsResponse_WaitingCloseChannel = new PendingChannelsResponse_WaitingCloseChannel$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PendingChannelsResponse_Commitments$Type extends MessageType { + constructor() { + super("lnrpc.PendingChannelsResponse.Commitments", [ + { no: 1, name: "local_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "remote_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 3, name: "remote_pending_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 4, name: "local_commit_fee_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "remote_commit_fee_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "remote_pending_commit_fee_sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): PendingChannelsResponse_Commitments { + const message = { localTxid: "", remoteTxid: "", remotePendingTxid: "", localCommitFeeSat: 0n, remoteCommitFeeSat: 0n, remotePendingCommitFeeSat: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingChannelsResponse_Commitments): PendingChannelsResponse_Commitments { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string local_txid */ 1: + message.localTxid = reader.string(); + break; + case /* string remote_txid */ 2: + message.remoteTxid = reader.string(); + break; + case /* string remote_pending_txid */ 3: + message.remotePendingTxid = reader.string(); + break; + case /* uint64 local_commit_fee_sat */ 4: + message.localCommitFeeSat = reader.uint64().toBigInt(); + break; + case /* uint64 remote_commit_fee_sat */ 5: + message.remoteCommitFeeSat = reader.uint64().toBigInt(); + break; + case /* uint64 remote_pending_commit_fee_sat */ 6: + message.remotePendingCommitFeeSat = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PendingChannelsResponse_Commitments, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string local_txid = 1; */ + if (message.localTxid !== "") + writer.tag(1, WireType.LengthDelimited).string(message.localTxid); + /* string remote_txid = 2; */ + if (message.remoteTxid !== "") + writer.tag(2, WireType.LengthDelimited).string(message.remoteTxid); + /* string remote_pending_txid = 3; */ + if (message.remotePendingTxid !== "") + writer.tag(3, WireType.LengthDelimited).string(message.remotePendingTxid); + /* uint64 local_commit_fee_sat = 4; */ + if (message.localCommitFeeSat !== 0n) + writer.tag(4, WireType.Varint).uint64(message.localCommitFeeSat); + /* uint64 remote_commit_fee_sat = 5; */ + if (message.remoteCommitFeeSat !== 0n) + writer.tag(5, WireType.Varint).uint64(message.remoteCommitFeeSat); + /* uint64 remote_pending_commit_fee_sat = 6; */ + if (message.remotePendingCommitFeeSat !== 0n) + writer.tag(6, WireType.Varint).uint64(message.remotePendingCommitFeeSat); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse.Commitments + */ +export const PendingChannelsResponse_Commitments = new PendingChannelsResponse_Commitments$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PendingChannelsResponse_ClosedChannel$Type extends MessageType { + constructor() { + super("lnrpc.PendingChannelsResponse.ClosedChannel", [ + { no: 1, name: "channel", kind: "message", T: () => PendingChannelsResponse_PendingChannel }, + { no: 2, name: "closing_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): PendingChannelsResponse_ClosedChannel { + const message = { closingTxid: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingChannelsResponse_ClosedChannel): PendingChannelsResponse_ClosedChannel { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.PendingChannelsResponse.PendingChannel channel */ 1: + message.channel = PendingChannelsResponse_PendingChannel.internalBinaryRead(reader, reader.uint32(), options, message.channel); + break; + case /* string closing_txid */ 2: + message.closingTxid = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PendingChannelsResponse_ClosedChannel, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.PendingChannelsResponse.PendingChannel channel = 1; */ + if (message.channel) + PendingChannelsResponse_PendingChannel.internalBinaryWrite(message.channel, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* string closing_txid = 2; */ + if (message.closingTxid !== "") + writer.tag(2, WireType.LengthDelimited).string(message.closingTxid); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse.ClosedChannel + */ +export const PendingChannelsResponse_ClosedChannel = new PendingChannelsResponse_ClosedChannel$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PendingChannelsResponse_ForceClosedChannel$Type extends MessageType { + constructor() { + super("lnrpc.PendingChannelsResponse.ForceClosedChannel", [ + { no: 1, name: "channel", kind: "message", T: () => PendingChannelsResponse_PendingChannel }, + { no: 2, name: "closing_txid", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 3, name: "limbo_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "maturity_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 5, name: "blocks_til_maturity", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 6, name: "recovered_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 8, name: "pending_htlcs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => PendingHTLC }, + { no: 9, name: "anchor", kind: "enum", T: () => ["lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState", PendingChannelsResponse_ForceClosedChannel_AnchorState] } + ]); + } + create(value?: PartialMessage): PendingChannelsResponse_ForceClosedChannel { + const message = { closingTxid: "", limboBalance: 0n, maturityHeight: 0, blocksTilMaturity: 0, recoveredBalance: 0n, pendingHtlcs: [], anchor: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PendingChannelsResponse_ForceClosedChannel): PendingChannelsResponse_ForceClosedChannel { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.PendingChannelsResponse.PendingChannel channel */ 1: + message.channel = PendingChannelsResponse_PendingChannel.internalBinaryRead(reader, reader.uint32(), options, message.channel); + break; + case /* string closing_txid */ 2: + message.closingTxid = reader.string(); + break; + case /* int64 limbo_balance */ 3: + message.limboBalance = reader.int64().toBigInt(); + break; + case /* uint32 maturity_height */ 4: + message.maturityHeight = reader.uint32(); + break; + case /* int32 blocks_til_maturity */ 5: + message.blocksTilMaturity = reader.int32(); + break; + case /* int64 recovered_balance */ 6: + message.recoveredBalance = reader.int64().toBigInt(); + break; + case /* repeated lnrpc.PendingHTLC pending_htlcs */ 8: + message.pendingHtlcs.push(PendingHTLC.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState anchor */ 9: + message.anchor = reader.int32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PendingChannelsResponse_ForceClosedChannel, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.PendingChannelsResponse.PendingChannel channel = 1; */ + if (message.channel) + PendingChannelsResponse_PendingChannel.internalBinaryWrite(message.channel, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* string closing_txid = 2; */ + if (message.closingTxid !== "") + writer.tag(2, WireType.LengthDelimited).string(message.closingTxid); + /* int64 limbo_balance = 3; */ + if (message.limboBalance !== 0n) + writer.tag(3, WireType.Varint).int64(message.limboBalance); + /* uint32 maturity_height = 4; */ + if (message.maturityHeight !== 0) + writer.tag(4, WireType.Varint).uint32(message.maturityHeight); + /* int32 blocks_til_maturity = 5; */ + if (message.blocksTilMaturity !== 0) + writer.tag(5, WireType.Varint).int32(message.blocksTilMaturity); + /* int64 recovered_balance = 6; */ + if (message.recoveredBalance !== 0n) + writer.tag(6, WireType.Varint).int64(message.recoveredBalance); + /* repeated lnrpc.PendingHTLC pending_htlcs = 8; */ + for (let i = 0; i < message.pendingHtlcs.length; i++) + PendingHTLC.internalBinaryWrite(message.pendingHtlcs[i], writer.tag(8, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.PendingChannelsResponse.ForceClosedChannel.AnchorState anchor = 9; */ + if (message.anchor !== 0) + writer.tag(9, WireType.Varint).int32(message.anchor); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PendingChannelsResponse.ForceClosedChannel + */ +export const PendingChannelsResponse_ForceClosedChannel = new PendingChannelsResponse_ForceClosedChannel$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelEventSubscription$Type extends MessageType { + constructor() { + super("lnrpc.ChannelEventSubscription", []); + } + create(value?: PartialMessage): ChannelEventSubscription { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelEventSubscription): ChannelEventSubscription { + return target ?? this.create(); + } + internalBinaryWrite(message: ChannelEventSubscription, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelEventSubscription + */ +export const ChannelEventSubscription = new ChannelEventSubscription$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelEventUpdate$Type extends MessageType { + constructor() { + super("lnrpc.ChannelEventUpdate", [ + { no: 1, name: "open_channel", kind: "message", oneof: "channel", T: () => Channel }, + { no: 2, name: "closed_channel", kind: "message", oneof: "channel", T: () => ChannelCloseSummary }, + { no: 3, name: "active_channel", kind: "message", oneof: "channel", T: () => ChannelPoint }, + { no: 4, name: "inactive_channel", kind: "message", oneof: "channel", T: () => ChannelPoint }, + { no: 6, name: "pending_open_channel", kind: "message", oneof: "channel", T: () => PendingUpdate }, + { no: 7, name: "fully_resolved_channel", kind: "message", oneof: "channel", T: () => ChannelPoint }, + { no: 5, name: "type", kind: "enum", T: () => ["lnrpc.ChannelEventUpdate.UpdateType", ChannelEventUpdate_UpdateType] } + ]); + } + create(value?: PartialMessage): ChannelEventUpdate { + const message = { channel: { oneofKind: undefined }, type: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelEventUpdate): ChannelEventUpdate { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.Channel open_channel */ 1: + message.channel = { + oneofKind: "openChannel", + openChannel: Channel.internalBinaryRead(reader, reader.uint32(), options, (message.channel as any).openChannel) + }; + break; + case /* lnrpc.ChannelCloseSummary closed_channel */ 2: + message.channel = { + oneofKind: "closedChannel", + closedChannel: ChannelCloseSummary.internalBinaryRead(reader, reader.uint32(), options, (message.channel as any).closedChannel) + }; + break; + case /* lnrpc.ChannelPoint active_channel */ 3: + message.channel = { + oneofKind: "activeChannel", + activeChannel: ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, (message.channel as any).activeChannel) + }; + break; + case /* lnrpc.ChannelPoint inactive_channel */ 4: + message.channel = { + oneofKind: "inactiveChannel", + inactiveChannel: ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, (message.channel as any).inactiveChannel) + }; + break; + case /* lnrpc.PendingUpdate pending_open_channel */ 6: + message.channel = { + oneofKind: "pendingOpenChannel", + pendingOpenChannel: PendingUpdate.internalBinaryRead(reader, reader.uint32(), options, (message.channel as any).pendingOpenChannel) + }; + break; + case /* lnrpc.ChannelPoint fully_resolved_channel */ 7: + message.channel = { + oneofKind: "fullyResolvedChannel", + fullyResolvedChannel: ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, (message.channel as any).fullyResolvedChannel) + }; + break; + case /* lnrpc.ChannelEventUpdate.UpdateType type */ 5: + message.type = reader.int32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChannelEventUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.Channel open_channel = 1; */ + if (message.channel.oneofKind === "openChannel") + Channel.internalBinaryWrite(message.channel.openChannel, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.ChannelCloseSummary closed_channel = 2; */ + if (message.channel.oneofKind === "closedChannel") + ChannelCloseSummary.internalBinaryWrite(message.channel.closedChannel, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.ChannelPoint active_channel = 3; */ + if (message.channel.oneofKind === "activeChannel") + ChannelPoint.internalBinaryWrite(message.channel.activeChannel, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.ChannelPoint inactive_channel = 4; */ + if (message.channel.oneofKind === "inactiveChannel") + ChannelPoint.internalBinaryWrite(message.channel.inactiveChannel, writer.tag(4, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.PendingUpdate pending_open_channel = 6; */ + if (message.channel.oneofKind === "pendingOpenChannel") + PendingUpdate.internalBinaryWrite(message.channel.pendingOpenChannel, writer.tag(6, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.ChannelPoint fully_resolved_channel = 7; */ + if (message.channel.oneofKind === "fullyResolvedChannel") + ChannelPoint.internalBinaryWrite(message.channel.fullyResolvedChannel, writer.tag(7, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.ChannelEventUpdate.UpdateType type = 5; */ + if (message.type !== 0) + writer.tag(5, WireType.Varint).int32(message.type); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelEventUpdate + */ +export const ChannelEventUpdate = new ChannelEventUpdate$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class WalletAccountBalance$Type extends MessageType { + constructor() { + super("lnrpc.WalletAccountBalance", [ + { no: 1, name: "confirmed_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "unconfirmed_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): WalletAccountBalance { + const message = { confirmedBalance: 0n, unconfirmedBalance: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: WalletAccountBalance): WalletAccountBalance { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* int64 confirmed_balance */ 1: + message.confirmedBalance = reader.int64().toBigInt(); + break; + case /* int64 unconfirmed_balance */ 2: + message.unconfirmedBalance = reader.int64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: WalletAccountBalance, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* int64 confirmed_balance = 1; */ + if (message.confirmedBalance !== 0n) + writer.tag(1, WireType.Varint).int64(message.confirmedBalance); + /* int64 unconfirmed_balance = 2; */ + if (message.unconfirmedBalance !== 0n) + writer.tag(2, WireType.Varint).int64(message.unconfirmedBalance); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.WalletAccountBalance + */ +export const WalletAccountBalance = new WalletAccountBalance$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class WalletBalanceRequest$Type extends MessageType { + constructor() { + super("lnrpc.WalletBalanceRequest", [ + { no: 1, name: "account", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "min_confs", kind: "scalar", T: 5 /*ScalarType.INT32*/ } + ]); + } + create(value?: PartialMessage): WalletBalanceRequest { + const message = { account: "", minConfs: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: WalletBalanceRequest): WalletBalanceRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string account */ 1: + message.account = reader.string(); + break; + case /* int32 min_confs */ 2: + message.minConfs = reader.int32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: WalletBalanceRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string account = 1; */ + if (message.account !== "") + writer.tag(1, WireType.LengthDelimited).string(message.account); + /* int32 min_confs = 2; */ + if (message.minConfs !== 0) + writer.tag(2, WireType.Varint).int32(message.minConfs); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.WalletBalanceRequest + */ +export const WalletBalanceRequest = new WalletBalanceRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class WalletBalanceResponse$Type extends MessageType { + constructor() { + super("lnrpc.WalletBalanceResponse", [ + { no: 1, name: "total_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "confirmed_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "unconfirmed_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "locked_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "reserved_balance_anchor_chan", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "account_balance", kind: "map", K: 9 /*ScalarType.STRING*/, V: { kind: "message", T: () => WalletAccountBalance } } + ]); + } + create(value?: PartialMessage): WalletBalanceResponse { + const message = { totalBalance: 0n, confirmedBalance: 0n, unconfirmedBalance: 0n, lockedBalance: 0n, reservedBalanceAnchorChan: 0n, accountBalance: {} }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: WalletBalanceResponse): WalletBalanceResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* int64 total_balance */ 1: + message.totalBalance = reader.int64().toBigInt(); + break; + case /* int64 confirmed_balance */ 2: + message.confirmedBalance = reader.int64().toBigInt(); + break; + case /* int64 unconfirmed_balance */ 3: + message.unconfirmedBalance = reader.int64().toBigInt(); + break; + case /* int64 locked_balance */ 5: + message.lockedBalance = reader.int64().toBigInt(); + break; + case /* int64 reserved_balance_anchor_chan */ 6: + message.reservedBalanceAnchorChan = reader.int64().toBigInt(); + break; + case /* map account_balance */ 4: + this.binaryReadMap4(message.accountBalance, reader, options); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap4(map: WalletBalanceResponse["accountBalance"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof WalletBalanceResponse["accountBalance"] | undefined, val: WalletBalanceResponse["accountBalance"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.string(); + break; + case 2: + val = WalletAccountBalance.internalBinaryRead(reader, reader.uint32(), options); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.WalletBalanceResponse.account_balance"); + } + } + map[key ?? ""] = val ?? WalletAccountBalance.create(); + } + internalBinaryWrite(message: WalletBalanceResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* int64 total_balance = 1; */ + if (message.totalBalance !== 0n) + writer.tag(1, WireType.Varint).int64(message.totalBalance); + /* int64 confirmed_balance = 2; */ + if (message.confirmedBalance !== 0n) + writer.tag(2, WireType.Varint).int64(message.confirmedBalance); + /* int64 unconfirmed_balance = 3; */ + if (message.unconfirmedBalance !== 0n) + writer.tag(3, WireType.Varint).int64(message.unconfirmedBalance); + /* int64 locked_balance = 5; */ + if (message.lockedBalance !== 0n) + writer.tag(5, WireType.Varint).int64(message.lockedBalance); + /* int64 reserved_balance_anchor_chan = 6; */ + if (message.reservedBalanceAnchorChan !== 0n) + writer.tag(6, WireType.Varint).int64(message.reservedBalanceAnchorChan); + /* map account_balance = 4; */ + for (let k of Object.keys(message.accountBalance)) { + writer.tag(4, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k); + writer.tag(2, WireType.LengthDelimited).fork(); + WalletAccountBalance.internalBinaryWrite(message.accountBalance[k], writer, options); + writer.join().join(); + } + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.WalletBalanceResponse + */ +export const WalletBalanceResponse = new WalletBalanceResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class Amount$Type extends MessageType { + constructor() { + super("lnrpc.Amount", [ + { no: 1, name: "sat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): Amount { + const message = { sat: 0n, msat: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Amount): Amount { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 sat */ 1: + message.sat = reader.uint64().toBigInt(); + break; + case /* uint64 msat */ 2: + message.msat = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: Amount, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 sat = 1; */ + if (message.sat !== 0n) + writer.tag(1, WireType.Varint).uint64(message.sat); + /* uint64 msat = 2; */ + if (message.msat !== 0n) + writer.tag(2, WireType.Varint).uint64(message.msat); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.Amount + */ +export const Amount = new Amount$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelBalanceRequest$Type extends MessageType { + constructor() { + super("lnrpc.ChannelBalanceRequest", []); + } + create(value?: PartialMessage): ChannelBalanceRequest { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelBalanceRequest): ChannelBalanceRequest { + return target ?? this.create(); + } + internalBinaryWrite(message: ChannelBalanceRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelBalanceRequest + */ +export const ChannelBalanceRequest = new ChannelBalanceRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelBalanceResponse$Type extends MessageType { + constructor() { + super("lnrpc.ChannelBalanceResponse", [ + { no: 1, name: "balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "pending_open_balance", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "local_balance", kind: "message", T: () => Amount }, + { no: 4, name: "remote_balance", kind: "message", T: () => Amount }, + { no: 5, name: "unsettled_local_balance", kind: "message", T: () => Amount }, + { no: 6, name: "unsettled_remote_balance", kind: "message", T: () => Amount }, + { no: 7, name: "pending_open_local_balance", kind: "message", T: () => Amount }, + { no: 8, name: "pending_open_remote_balance", kind: "message", T: () => Amount } + ]); + } + create(value?: PartialMessage): ChannelBalanceResponse { + const message = { balance: 0n, pendingOpenBalance: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelBalanceResponse): ChannelBalanceResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* int64 balance = 1 [deprecated = true];*/ 1: + message.balance = reader.int64().toBigInt(); + break; + case /* int64 pending_open_balance = 2 [deprecated = true];*/ 2: + message.pendingOpenBalance = reader.int64().toBigInt(); + break; + case /* lnrpc.Amount local_balance */ 3: + message.localBalance = Amount.internalBinaryRead(reader, reader.uint32(), options, message.localBalance); + break; + case /* lnrpc.Amount remote_balance */ 4: + message.remoteBalance = Amount.internalBinaryRead(reader, reader.uint32(), options, message.remoteBalance); + break; + case /* lnrpc.Amount unsettled_local_balance */ 5: + message.unsettledLocalBalance = Amount.internalBinaryRead(reader, reader.uint32(), options, message.unsettledLocalBalance); + break; + case /* lnrpc.Amount unsettled_remote_balance */ 6: + message.unsettledRemoteBalance = Amount.internalBinaryRead(reader, reader.uint32(), options, message.unsettledRemoteBalance); + break; + case /* lnrpc.Amount pending_open_local_balance */ 7: + message.pendingOpenLocalBalance = Amount.internalBinaryRead(reader, reader.uint32(), options, message.pendingOpenLocalBalance); + break; + case /* lnrpc.Amount pending_open_remote_balance */ 8: + message.pendingOpenRemoteBalance = Amount.internalBinaryRead(reader, reader.uint32(), options, message.pendingOpenRemoteBalance); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChannelBalanceResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* int64 balance = 1 [deprecated = true]; */ + if (message.balance !== 0n) + writer.tag(1, WireType.Varint).int64(message.balance); + /* int64 pending_open_balance = 2 [deprecated = true]; */ + if (message.pendingOpenBalance !== 0n) + writer.tag(2, WireType.Varint).int64(message.pendingOpenBalance); + /* lnrpc.Amount local_balance = 3; */ + if (message.localBalance) + Amount.internalBinaryWrite(message.localBalance, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.Amount remote_balance = 4; */ + if (message.remoteBalance) + Amount.internalBinaryWrite(message.remoteBalance, writer.tag(4, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.Amount unsettled_local_balance = 5; */ + if (message.unsettledLocalBalance) + Amount.internalBinaryWrite(message.unsettledLocalBalance, writer.tag(5, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.Amount unsettled_remote_balance = 6; */ + if (message.unsettledRemoteBalance) + Amount.internalBinaryWrite(message.unsettledRemoteBalance, writer.tag(6, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.Amount pending_open_local_balance = 7; */ + if (message.pendingOpenLocalBalance) + Amount.internalBinaryWrite(message.pendingOpenLocalBalance, writer.tag(7, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.Amount pending_open_remote_balance = 8; */ + if (message.pendingOpenRemoteBalance) + Amount.internalBinaryWrite(message.pendingOpenRemoteBalance, writer.tag(8, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelBalanceResponse + */ +export const ChannelBalanceResponse = new ChannelBalanceResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class QueryRoutesRequest$Type extends MessageType { + constructor() { + super("lnrpc.QueryRoutesRequest", [ + { no: 1, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "amt", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 12, name: "amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "final_cltv_delta", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 5, name: "fee_limit", kind: "message", T: () => FeeLimit }, + { no: 6, name: "ignored_nodes", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 12 /*ScalarType.BYTES*/ }, + { no: 7, name: "ignored_edges", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => EdgeLocator }, + { no: 8, name: "source_pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 9, name: "use_mission_control", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 10, name: "ignored_pairs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => NodePair }, + { no: 11, name: "cltv_limit", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 13, name: "dest_custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } }, + { no: 14, name: "outgoing_chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 15, name: "last_hop_pubkey", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 16, name: "route_hints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => RouteHint }, + { no: 19, name: "blinded_payment_paths", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => BlindedPaymentPath }, + { no: 17, name: "dest_features", kind: "enum", repeat: 1 /*RepeatType.PACKED*/, T: () => ["lnrpc.FeatureBit", FeatureBit] }, + { no: 18, name: "time_pref", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ } + ]); + } + create(value?: PartialMessage): QueryRoutesRequest { + const message = { pubKey: "", amt: 0n, amtMsat: 0n, finalCltvDelta: 0, ignoredNodes: [], ignoredEdges: [], sourcePubKey: "", useMissionControl: false, ignoredPairs: [], cltvLimit: 0, destCustomRecords: {}, outgoingChanId: "0", lastHopPubkey: new Uint8Array(0), routeHints: [], blindedPaymentPaths: [], destFeatures: [], timePref: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryRoutesRequest): QueryRoutesRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string pub_key */ 1: + message.pubKey = reader.string(); + break; + case /* int64 amt */ 2: + message.amt = reader.int64().toBigInt(); + break; + case /* int64 amt_msat */ 12: + message.amtMsat = reader.int64().toBigInt(); + break; + case /* int32 final_cltv_delta */ 4: + message.finalCltvDelta = reader.int32(); + break; + case /* lnrpc.FeeLimit fee_limit */ 5: + message.feeLimit = FeeLimit.internalBinaryRead(reader, reader.uint32(), options, message.feeLimit); + break; + case /* repeated bytes ignored_nodes */ 6: + message.ignoredNodes.push(reader.bytes()); + break; + case /* repeated lnrpc.EdgeLocator ignored_edges = 7 [deprecated = true];*/ 7: + message.ignoredEdges.push(EdgeLocator.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* string source_pub_key */ 8: + message.sourcePubKey = reader.string(); + break; + case /* bool use_mission_control */ 9: + message.useMissionControl = reader.bool(); + break; + case /* repeated lnrpc.NodePair ignored_pairs */ 10: + message.ignoredPairs.push(NodePair.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* uint32 cltv_limit */ 11: + message.cltvLimit = reader.uint32(); + break; + case /* map dest_custom_records */ 13: + this.binaryReadMap13(message.destCustomRecords, reader, options); + break; + case /* uint64 outgoing_chan_id = 14 [jstype = JS_STRING];*/ 14: + message.outgoingChanId = reader.uint64().toString(); + break; + case /* bytes last_hop_pubkey */ 15: + message.lastHopPubkey = reader.bytes(); + break; + case /* repeated lnrpc.RouteHint route_hints */ 16: + message.routeHints.push(RouteHint.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* repeated lnrpc.BlindedPaymentPath blinded_payment_paths */ 19: + message.blindedPaymentPaths.push(BlindedPaymentPath.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* repeated lnrpc.FeatureBit dest_features */ 17: + if (wireType === WireType.LengthDelimited) + for (let e = reader.int32() + reader.pos; reader.pos < e;) + message.destFeatures.push(reader.int32()); + else + message.destFeatures.push(reader.int32()); + break; + case /* double time_pref */ 18: + message.timePref = reader.double(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap13(map: QueryRoutesRequest["destCustomRecords"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof QueryRoutesRequest["destCustomRecords"] | undefined, val: QueryRoutesRequest["destCustomRecords"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.uint64().toString(); + break; + case 2: + val = reader.bytes(); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.QueryRoutesRequest.dest_custom_records"); + } + } + map[key ?? "0"] = val ?? new Uint8Array(0); + } + internalBinaryWrite(message: QueryRoutesRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string pub_key = 1; */ + if (message.pubKey !== "") + writer.tag(1, WireType.LengthDelimited).string(message.pubKey); + /* int64 amt = 2; */ + if (message.amt !== 0n) + writer.tag(2, WireType.Varint).int64(message.amt); + /* int64 amt_msat = 12; */ + if (message.amtMsat !== 0n) + writer.tag(12, WireType.Varint).int64(message.amtMsat); + /* int32 final_cltv_delta = 4; */ + if (message.finalCltvDelta !== 0) + writer.tag(4, WireType.Varint).int32(message.finalCltvDelta); + /* lnrpc.FeeLimit fee_limit = 5; */ + if (message.feeLimit) + FeeLimit.internalBinaryWrite(message.feeLimit, writer.tag(5, WireType.LengthDelimited).fork(), options).join(); + /* repeated bytes ignored_nodes = 6; */ + for (let i = 0; i < message.ignoredNodes.length; i++) + writer.tag(6, WireType.LengthDelimited).bytes(message.ignoredNodes[i]); + /* repeated lnrpc.EdgeLocator ignored_edges = 7 [deprecated = true]; */ + for (let i = 0; i < message.ignoredEdges.length; i++) + EdgeLocator.internalBinaryWrite(message.ignoredEdges[i], writer.tag(7, WireType.LengthDelimited).fork(), options).join(); + /* string source_pub_key = 8; */ + if (message.sourcePubKey !== "") + writer.tag(8, WireType.LengthDelimited).string(message.sourcePubKey); + /* bool use_mission_control = 9; */ + if (message.useMissionControl !== false) + writer.tag(9, WireType.Varint).bool(message.useMissionControl); + /* repeated lnrpc.NodePair ignored_pairs = 10; */ + for (let i = 0; i < message.ignoredPairs.length; i++) + NodePair.internalBinaryWrite(message.ignoredPairs[i], writer.tag(10, WireType.LengthDelimited).fork(), options).join(); + /* uint32 cltv_limit = 11; */ + if (message.cltvLimit !== 0) + writer.tag(11, WireType.Varint).uint32(message.cltvLimit); + /* map dest_custom_records = 13; */ + for (let k of Object.keys(message.destCustomRecords)) + writer.tag(13, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint64(k).tag(2, WireType.LengthDelimited).bytes(message.destCustomRecords[k]).join(); + /* uint64 outgoing_chan_id = 14 [jstype = JS_STRING]; */ + if (message.outgoingChanId !== "0") + writer.tag(14, WireType.Varint).uint64(message.outgoingChanId); + /* bytes last_hop_pubkey = 15; */ + if (message.lastHopPubkey.length) + writer.tag(15, WireType.LengthDelimited).bytes(message.lastHopPubkey); + /* repeated lnrpc.RouteHint route_hints = 16; */ + for (let i = 0; i < message.routeHints.length; i++) + RouteHint.internalBinaryWrite(message.routeHints[i], writer.tag(16, WireType.LengthDelimited).fork(), options).join(); + /* repeated lnrpc.BlindedPaymentPath blinded_payment_paths = 19; */ + for (let i = 0; i < message.blindedPaymentPaths.length; i++) + BlindedPaymentPath.internalBinaryWrite(message.blindedPaymentPaths[i], writer.tag(19, WireType.LengthDelimited).fork(), options).join(); + /* repeated lnrpc.FeatureBit dest_features = 17; */ + if (message.destFeatures.length) { + writer.tag(17, WireType.LengthDelimited).fork(); + for (let i = 0; i < message.destFeatures.length; i++) + writer.int32(message.destFeatures[i]); + writer.join(); + } + /* double time_pref = 18; */ + if (message.timePref !== 0) + writer.tag(18, WireType.Bit64).double(message.timePref); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.QueryRoutesRequest + */ +export const QueryRoutesRequest = new QueryRoutesRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class NodePair$Type extends MessageType { + constructor() { + super("lnrpc.NodePair", [ + { no: 1, name: "from", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "to", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): NodePair { + const message = { from: new Uint8Array(0), to: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NodePair): NodePair { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes from */ 1: + message.from = reader.bytes(); + break; + case /* bytes to */ 2: + message.to = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: NodePair, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes from = 1; */ + if (message.from.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.from); + /* bytes to = 2; */ + if (message.to.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.to); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.NodePair + */ +export const NodePair = new NodePair$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class EdgeLocator$Type extends MessageType { + constructor() { + super("lnrpc.EdgeLocator", [ + { no: 1, name: "channel_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 2, name: "direction_reverse", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): EdgeLocator { + const message = { channelId: "0", directionReverse: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: EdgeLocator): EdgeLocator { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 channel_id = 1 [jstype = JS_STRING];*/ 1: + message.channelId = reader.uint64().toString(); + break; + case /* bool direction_reverse */ 2: + message.directionReverse = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: EdgeLocator, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 channel_id = 1 [jstype = JS_STRING]; */ + if (message.channelId !== "0") + writer.tag(1, WireType.Varint).uint64(message.channelId); + /* bool direction_reverse = 2; */ + if (message.directionReverse !== false) + writer.tag(2, WireType.Varint).bool(message.directionReverse); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.EdgeLocator + */ +export const EdgeLocator = new EdgeLocator$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class QueryRoutesResponse$Type extends MessageType { + constructor() { + super("lnrpc.QueryRoutesResponse", [ + { no: 1, name: "routes", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Route }, + { no: 2, name: "success_prob", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ } + ]); + } + create(value?: PartialMessage): QueryRoutesResponse { + const message = { routes: [], successProb: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryRoutesResponse): QueryRoutesResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.Route routes */ 1: + message.routes.push(Route.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* double success_prob */ 2: + message.successProb = reader.double(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: QueryRoutesResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.Route routes = 1; */ + for (let i = 0; i < message.routes.length; i++) + Route.internalBinaryWrite(message.routes[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* double success_prob = 2; */ + if (message.successProb !== 0) + writer.tag(2, WireType.Bit64).double(message.successProb); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.QueryRoutesResponse + */ +export const QueryRoutesResponse = new QueryRoutesResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class Hop$Type extends MessageType { + constructor() { + super("lnrpc.Hop", [ + { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 2, name: "chan_capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "amt_to_forward", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "fee", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "expiry", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 6, name: "amt_to_forward_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "fee_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 8, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 9, name: "tlv_payload", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 10, name: "mpp_record", kind: "message", T: () => MPPRecord }, + { no: 12, name: "amp_record", kind: "message", T: () => AMPRecord }, + { no: 11, name: "custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } }, + { no: 13, name: "metadata", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 14, name: "blinding_point", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 15, name: "encrypted_data", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 16, name: "total_amt_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): Hop { + const message = { chanId: "0", chanCapacity: 0n, amtToForward: 0n, fee: 0n, expiry: 0, amtToForwardMsat: 0n, feeMsat: 0n, pubKey: "", tlvPayload: false, customRecords: {}, metadata: new Uint8Array(0), blindingPoint: new Uint8Array(0), encryptedData: new Uint8Array(0), totalAmtMsat: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Hop): Hop { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 chan_id = 1 [jstype = JS_STRING];*/ 1: + message.chanId = reader.uint64().toString(); + break; + case /* int64 chan_capacity = 2 [deprecated = true];*/ 2: + message.chanCapacity = reader.int64().toBigInt(); + break; + case /* int64 amt_to_forward = 3 [deprecated = true];*/ 3: + message.amtToForward = reader.int64().toBigInt(); + break; + case /* int64 fee = 4 [deprecated = true];*/ 4: + message.fee = reader.int64().toBigInt(); + break; + case /* uint32 expiry */ 5: + message.expiry = reader.uint32(); + break; + case /* int64 amt_to_forward_msat */ 6: + message.amtToForwardMsat = reader.int64().toBigInt(); + break; + case /* int64 fee_msat */ 7: + message.feeMsat = reader.int64().toBigInt(); + break; + case /* string pub_key */ 8: + message.pubKey = reader.string(); + break; + case /* bool tlv_payload = 9 [deprecated = true];*/ 9: + message.tlvPayload = reader.bool(); + break; + case /* lnrpc.MPPRecord mpp_record */ 10: + message.mppRecord = MPPRecord.internalBinaryRead(reader, reader.uint32(), options, message.mppRecord); + break; + case /* lnrpc.AMPRecord amp_record */ 12: + message.ampRecord = AMPRecord.internalBinaryRead(reader, reader.uint32(), options, message.ampRecord); + break; + case /* map custom_records */ 11: + this.binaryReadMap11(message.customRecords, reader, options); + break; + case /* bytes metadata */ 13: + message.metadata = reader.bytes(); + break; + case /* bytes blinding_point */ 14: + message.blindingPoint = reader.bytes(); + break; + case /* bytes encrypted_data */ 15: + message.encryptedData = reader.bytes(); + break; + case /* uint64 total_amt_msat */ 16: + message.totalAmtMsat = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap11(map: Hop["customRecords"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof Hop["customRecords"] | undefined, val: Hop["customRecords"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.uint64().toString(); + break; + case 2: + val = reader.bytes(); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.Hop.custom_records"); + } + } + map[key ?? "0"] = val ?? new Uint8Array(0); + } + internalBinaryWrite(message: Hop, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 chan_id = 1 [jstype = JS_STRING]; */ + if (message.chanId !== "0") + writer.tag(1, WireType.Varint).uint64(message.chanId); + /* int64 chan_capacity = 2 [deprecated = true]; */ + if (message.chanCapacity !== 0n) + writer.tag(2, WireType.Varint).int64(message.chanCapacity); + /* int64 amt_to_forward = 3 [deprecated = true]; */ + if (message.amtToForward !== 0n) + writer.tag(3, WireType.Varint).int64(message.amtToForward); + /* int64 fee = 4 [deprecated = true]; */ + if (message.fee !== 0n) + writer.tag(4, WireType.Varint).int64(message.fee); + /* uint32 expiry = 5; */ + if (message.expiry !== 0) + writer.tag(5, WireType.Varint).uint32(message.expiry); + /* int64 amt_to_forward_msat = 6; */ + if (message.amtToForwardMsat !== 0n) + writer.tag(6, WireType.Varint).int64(message.amtToForwardMsat); + /* int64 fee_msat = 7; */ + if (message.feeMsat !== 0n) + writer.tag(7, WireType.Varint).int64(message.feeMsat); + /* string pub_key = 8; */ + if (message.pubKey !== "") + writer.tag(8, WireType.LengthDelimited).string(message.pubKey); + /* bool tlv_payload = 9 [deprecated = true]; */ + if (message.tlvPayload !== false) + writer.tag(9, WireType.Varint).bool(message.tlvPayload); + /* lnrpc.MPPRecord mpp_record = 10; */ + if (message.mppRecord) + MPPRecord.internalBinaryWrite(message.mppRecord, writer.tag(10, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.AMPRecord amp_record = 12; */ + if (message.ampRecord) + AMPRecord.internalBinaryWrite(message.ampRecord, writer.tag(12, WireType.LengthDelimited).fork(), options).join(); + /* map custom_records = 11; */ + for (let k of Object.keys(message.customRecords)) + writer.tag(11, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint64(k).tag(2, WireType.LengthDelimited).bytes(message.customRecords[k]).join(); + /* bytes metadata = 13; */ + if (message.metadata.length) + writer.tag(13, WireType.LengthDelimited).bytes(message.metadata); + /* bytes blinding_point = 14; */ + if (message.blindingPoint.length) + writer.tag(14, WireType.LengthDelimited).bytes(message.blindingPoint); + /* bytes encrypted_data = 15; */ + if (message.encryptedData.length) + writer.tag(15, WireType.LengthDelimited).bytes(message.encryptedData); + /* uint64 total_amt_msat = 16; */ + if (message.totalAmtMsat !== 0n) + writer.tag(16, WireType.Varint).uint64(message.totalAmtMsat); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.Hop + */ +export const Hop = new Hop$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class MPPRecord$Type extends MessageType { + constructor() { + super("lnrpc.MPPRecord", [ + { no: 11, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 10, name: "total_amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): MPPRecord { + const message = { paymentAddr: new Uint8Array(0), totalAmtMsat: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MPPRecord): MPPRecord { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes payment_addr */ 11: + message.paymentAddr = reader.bytes(); + break; + case /* int64 total_amt_msat */ 10: + message.totalAmtMsat = reader.int64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: MPPRecord, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes payment_addr = 11; */ + if (message.paymentAddr.length) + writer.tag(11, WireType.LengthDelimited).bytes(message.paymentAddr); + /* int64 total_amt_msat = 10; */ + if (message.totalAmtMsat !== 0n) + writer.tag(10, WireType.Varint).int64(message.totalAmtMsat); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.MPPRecord + */ +export const MPPRecord = new MPPRecord$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class AMPRecord$Type extends MessageType { + constructor() { + super("lnrpc.AMPRecord", [ + { no: 1, name: "root_share", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "set_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "child_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } + ]); + } + create(value?: PartialMessage): AMPRecord { + const message = { rootShare: new Uint8Array(0), setId: new Uint8Array(0), childIndex: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AMPRecord): AMPRecord { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes root_share */ 1: + message.rootShare = reader.bytes(); + break; + case /* bytes set_id */ 2: + message.setId = reader.bytes(); + break; + case /* uint32 child_index */ 3: + message.childIndex = reader.uint32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: AMPRecord, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes root_share = 1; */ + if (message.rootShare.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.rootShare); + /* bytes set_id = 2; */ + if (message.setId.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.setId); + /* uint32 child_index = 3; */ + if (message.childIndex !== 0) + writer.tag(3, WireType.Varint).uint32(message.childIndex); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.AMPRecord + */ +export const AMPRecord = new AMPRecord$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class Route$Type extends MessageType { + constructor() { + super("lnrpc.Route", [ + { no: 1, name: "total_time_lock", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 2, name: "total_fees", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "total_amt", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "hops", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Hop }, + { no: 5, name: "total_fees_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "total_amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): Route { + const message = { totalTimeLock: 0, totalFees: 0n, totalAmt: 0n, hops: [], totalFeesMsat: 0n, totalAmtMsat: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Route): Route { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint32 total_time_lock */ 1: + message.totalTimeLock = reader.uint32(); + break; + case /* int64 total_fees = 2 [deprecated = true];*/ 2: + message.totalFees = reader.int64().toBigInt(); + break; + case /* int64 total_amt = 3 [deprecated = true];*/ 3: + message.totalAmt = reader.int64().toBigInt(); + break; + case /* repeated lnrpc.Hop hops */ 4: + message.hops.push(Hop.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* int64 total_fees_msat */ 5: + message.totalFeesMsat = reader.int64().toBigInt(); + break; + case /* int64 total_amt_msat */ 6: + message.totalAmtMsat = reader.int64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: Route, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint32 total_time_lock = 1; */ + if (message.totalTimeLock !== 0) + writer.tag(1, WireType.Varint).uint32(message.totalTimeLock); + /* int64 total_fees = 2 [deprecated = true]; */ + if (message.totalFees !== 0n) + writer.tag(2, WireType.Varint).int64(message.totalFees); + /* int64 total_amt = 3 [deprecated = true]; */ + if (message.totalAmt !== 0n) + writer.tag(3, WireType.Varint).int64(message.totalAmt); + /* repeated lnrpc.Hop hops = 4; */ + for (let i = 0; i < message.hops.length; i++) + Hop.internalBinaryWrite(message.hops[i], writer.tag(4, WireType.LengthDelimited).fork(), options).join(); + /* int64 total_fees_msat = 5; */ + if (message.totalFeesMsat !== 0n) + writer.tag(5, WireType.Varint).int64(message.totalFeesMsat); + /* int64 total_amt_msat = 6; */ + if (message.totalAmtMsat !== 0n) + writer.tag(6, WireType.Varint).int64(message.totalAmtMsat); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.Route + */ +export const Route = new Route$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class NodeInfoRequest$Type extends MessageType { + constructor() { + super("lnrpc.NodeInfoRequest", [ + { no: 1, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "include_channels", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): NodeInfoRequest { + const message = { pubKey: "", includeChannels: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NodeInfoRequest): NodeInfoRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string pub_key */ 1: + message.pubKey = reader.string(); + break; + case /* bool include_channels */ 2: + message.includeChannels = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: NodeInfoRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string pub_key = 1; */ + if (message.pubKey !== "") + writer.tag(1, WireType.LengthDelimited).string(message.pubKey); + /* bool include_channels = 2; */ + if (message.includeChannels !== false) + writer.tag(2, WireType.Varint).bool(message.includeChannels); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.NodeInfoRequest + */ +export const NodeInfoRequest = new NodeInfoRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class NodeInfo$Type extends MessageType { + constructor() { + super("lnrpc.NodeInfo", [ + { no: 1, name: "node", kind: "message", T: () => LightningNode }, + { no: 2, name: "num_channels", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 3, name: "total_capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "channels", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => ChannelEdge } + ]); + } + create(value?: PartialMessage): NodeInfo { + const message = { numChannels: 0, totalCapacity: 0n, channels: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NodeInfo): NodeInfo { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.LightningNode node */ 1: + message.node = LightningNode.internalBinaryRead(reader, reader.uint32(), options, message.node); + break; + case /* uint32 num_channels */ 2: + message.numChannels = reader.uint32(); + break; + case /* int64 total_capacity */ 3: + message.totalCapacity = reader.int64().toBigInt(); + break; + case /* repeated lnrpc.ChannelEdge channels */ 4: + message.channels.push(ChannelEdge.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: NodeInfo, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.LightningNode node = 1; */ + if (message.node) + LightningNode.internalBinaryWrite(message.node, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* uint32 num_channels = 2; */ + if (message.numChannels !== 0) + writer.tag(2, WireType.Varint).uint32(message.numChannels); + /* int64 total_capacity = 3; */ + if (message.totalCapacity !== 0n) + writer.tag(3, WireType.Varint).int64(message.totalCapacity); + /* repeated lnrpc.ChannelEdge channels = 4; */ + for (let i = 0; i < message.channels.length; i++) + ChannelEdge.internalBinaryWrite(message.channels[i], writer.tag(4, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.NodeInfo + */ +export const NodeInfo = new NodeInfo$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class LightningNode$Type extends MessageType { + constructor() { + super("lnrpc.LightningNode", [ + { no: 1, name: "last_update", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 2, name: "pub_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 3, name: "alias", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 4, name: "addresses", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => NodeAddress }, + { no: 5, name: "color", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 6, name: "features", kind: "map", K: 13 /*ScalarType.UINT32*/, V: { kind: "message", T: () => Feature } }, + { no: 7, name: "custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } } + ]); + } + create(value?: PartialMessage): LightningNode { + const message = { lastUpdate: 0, pubKey: "", alias: "", addresses: [], color: "", features: {}, customRecords: {} }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LightningNode): LightningNode { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint32 last_update */ 1: + message.lastUpdate = reader.uint32(); + break; + case /* string pub_key */ 2: + message.pubKey = reader.string(); + break; + case /* string alias */ 3: + message.alias = reader.string(); + break; + case /* repeated lnrpc.NodeAddress addresses */ 4: + message.addresses.push(NodeAddress.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* string color */ 5: + message.color = reader.string(); + break; + case /* map features */ 6: + this.binaryReadMap6(message.features, reader, options); + break; + case /* map custom_records */ 7: + this.binaryReadMap7(message.customRecords, reader, options); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap6(map: LightningNode["features"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof LightningNode["features"] | undefined, val: LightningNode["features"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.uint32(); + break; + case 2: + val = Feature.internalBinaryRead(reader, reader.uint32(), options); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.LightningNode.features"); + } + } + map[key ?? 0] = val ?? Feature.create(); + } + private binaryReadMap7(map: LightningNode["customRecords"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof LightningNode["customRecords"] | undefined, val: LightningNode["customRecords"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.uint64().toString(); + break; + case 2: + val = reader.bytes(); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.LightningNode.custom_records"); + } + } + map[key ?? "0"] = val ?? new Uint8Array(0); + } + internalBinaryWrite(message: LightningNode, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint32 last_update = 1; */ + if (message.lastUpdate !== 0) + writer.tag(1, WireType.Varint).uint32(message.lastUpdate); + /* string pub_key = 2; */ + if (message.pubKey !== "") + writer.tag(2, WireType.LengthDelimited).string(message.pubKey); + /* string alias = 3; */ + if (message.alias !== "") + writer.tag(3, WireType.LengthDelimited).string(message.alias); + /* repeated lnrpc.NodeAddress addresses = 4; */ + for (let i = 0; i < message.addresses.length; i++) + NodeAddress.internalBinaryWrite(message.addresses[i], writer.tag(4, WireType.LengthDelimited).fork(), options).join(); + /* string color = 5; */ + if (message.color !== "") + writer.tag(5, WireType.LengthDelimited).string(message.color); + /* map features = 6; */ + for (let k of Object.keys(message.features)) { + writer.tag(6, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint32(parseInt(k)); + writer.tag(2, WireType.LengthDelimited).fork(); + Feature.internalBinaryWrite(message.features[k as any], writer, options); + writer.join().join(); + } + /* map custom_records = 7; */ + for (let k of Object.keys(message.customRecords)) + writer.tag(7, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint64(k).tag(2, WireType.LengthDelimited).bytes(message.customRecords[k]).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.LightningNode + */ +export const LightningNode = new LightningNode$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class NodeAddress$Type extends MessageType { + constructor() { + super("lnrpc.NodeAddress", [ + { no: 1, name: "network", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "addr", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): NodeAddress { + const message = { network: "", addr: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NodeAddress): NodeAddress { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string network */ 1: + message.network = reader.string(); + break; + case /* string addr */ 2: + message.addr = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: NodeAddress, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string network = 1; */ + if (message.network !== "") + writer.tag(1, WireType.LengthDelimited).string(message.network); + /* string addr = 2; */ + if (message.addr !== "") + writer.tag(2, WireType.LengthDelimited).string(message.addr); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.NodeAddress + */ +export const NodeAddress = new NodeAddress$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class RoutingPolicy$Type extends MessageType { + constructor() { + super("lnrpc.RoutingPolicy", [ + { no: 1, name: "time_lock_delta", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 2, name: "min_htlc", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "fee_base_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "fee_rate_milli_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "disabled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 6, name: "max_htlc_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "last_update", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 8, name: "custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } }, + { no: 9, name: "inbound_fee_base_msat", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 10, name: "inbound_fee_rate_milli_msat", kind: "scalar", T: 5 /*ScalarType.INT32*/ } + ]); + } + create(value?: PartialMessage): RoutingPolicy { + const message = { timeLockDelta: 0, minHtlc: 0n, feeBaseMsat: 0n, feeRateMilliMsat: 0n, disabled: false, maxHtlcMsat: 0n, lastUpdate: 0, customRecords: {}, inboundFeeBaseMsat: 0, inboundFeeRateMilliMsat: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RoutingPolicy): RoutingPolicy { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint32 time_lock_delta */ 1: + message.timeLockDelta = reader.uint32(); + break; + case /* int64 min_htlc */ 2: + message.minHtlc = reader.int64().toBigInt(); + break; + case /* int64 fee_base_msat */ 3: + message.feeBaseMsat = reader.int64().toBigInt(); + break; + case /* int64 fee_rate_milli_msat */ 4: + message.feeRateMilliMsat = reader.int64().toBigInt(); + break; + case /* bool disabled */ 5: + message.disabled = reader.bool(); + break; + case /* uint64 max_htlc_msat */ 6: + message.maxHtlcMsat = reader.uint64().toBigInt(); + break; + case /* uint32 last_update */ 7: + message.lastUpdate = reader.uint32(); + break; + case /* map custom_records */ 8: + this.binaryReadMap8(message.customRecords, reader, options); + break; + case /* int32 inbound_fee_base_msat */ 9: + message.inboundFeeBaseMsat = reader.int32(); + break; + case /* int32 inbound_fee_rate_milli_msat */ 10: + message.inboundFeeRateMilliMsat = reader.int32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap8(map: RoutingPolicy["customRecords"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof RoutingPolicy["customRecords"] | undefined, val: RoutingPolicy["customRecords"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.uint64().toString(); + break; + case 2: + val = reader.bytes(); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.RoutingPolicy.custom_records"); + } + } + map[key ?? "0"] = val ?? new Uint8Array(0); + } + internalBinaryWrite(message: RoutingPolicy, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint32 time_lock_delta = 1; */ + if (message.timeLockDelta !== 0) + writer.tag(1, WireType.Varint).uint32(message.timeLockDelta); + /* int64 min_htlc = 2; */ + if (message.minHtlc !== 0n) + writer.tag(2, WireType.Varint).int64(message.minHtlc); + /* int64 fee_base_msat = 3; */ + if (message.feeBaseMsat !== 0n) + writer.tag(3, WireType.Varint).int64(message.feeBaseMsat); + /* int64 fee_rate_milli_msat = 4; */ + if (message.feeRateMilliMsat !== 0n) + writer.tag(4, WireType.Varint).int64(message.feeRateMilliMsat); + /* bool disabled = 5; */ + if (message.disabled !== false) + writer.tag(5, WireType.Varint).bool(message.disabled); + /* uint64 max_htlc_msat = 6; */ + if (message.maxHtlcMsat !== 0n) + writer.tag(6, WireType.Varint).uint64(message.maxHtlcMsat); + /* uint32 last_update = 7; */ + if (message.lastUpdate !== 0) + writer.tag(7, WireType.Varint).uint32(message.lastUpdate); + /* map custom_records = 8; */ + for (let k of Object.keys(message.customRecords)) + writer.tag(8, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint64(k).tag(2, WireType.LengthDelimited).bytes(message.customRecords[k]).join(); + /* int32 inbound_fee_base_msat = 9; */ + if (message.inboundFeeBaseMsat !== 0) + writer.tag(9, WireType.Varint).int32(message.inboundFeeBaseMsat); + /* int32 inbound_fee_rate_milli_msat = 10; */ + if (message.inboundFeeRateMilliMsat !== 0) + writer.tag(10, WireType.Varint).int32(message.inboundFeeRateMilliMsat); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.RoutingPolicy + */ +export const RoutingPolicy = new RoutingPolicy$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelEdge$Type extends MessageType { + constructor() { + super("lnrpc.ChannelEdge", [ + { no: 1, name: "channel_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 2, name: "chan_point", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 3, name: "last_update", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 4, name: "node1_pub", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 5, name: "node2_pub", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 6, name: "capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "node1_policy", kind: "message", T: () => RoutingPolicy }, + { no: 8, name: "node2_policy", kind: "message", T: () => RoutingPolicy }, + { no: 9, name: "custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } } + ]); + } + create(value?: PartialMessage): ChannelEdge { + const message = { channelId: "0", chanPoint: "", lastUpdate: 0, node1Pub: "", node2Pub: "", capacity: 0n, customRecords: {} }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelEdge): ChannelEdge { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 channel_id = 1 [jstype = JS_STRING];*/ 1: + message.channelId = reader.uint64().toString(); + break; + case /* string chan_point */ 2: + message.chanPoint = reader.string(); + break; + case /* uint32 last_update = 3 [deprecated = true];*/ 3: + message.lastUpdate = reader.uint32(); + break; + case /* string node1_pub */ 4: + message.node1Pub = reader.string(); + break; + case /* string node2_pub */ 5: + message.node2Pub = reader.string(); + break; + case /* int64 capacity */ 6: + message.capacity = reader.int64().toBigInt(); + break; + case /* lnrpc.RoutingPolicy node1_policy */ 7: + message.node1Policy = RoutingPolicy.internalBinaryRead(reader, reader.uint32(), options, message.node1Policy); + break; + case /* lnrpc.RoutingPolicy node2_policy */ 8: + message.node2Policy = RoutingPolicy.internalBinaryRead(reader, reader.uint32(), options, message.node2Policy); + break; + case /* map custom_records */ 9: + this.binaryReadMap9(message.customRecords, reader, options); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap9(map: ChannelEdge["customRecords"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof ChannelEdge["customRecords"] | undefined, val: ChannelEdge["customRecords"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.uint64().toString(); + break; + case 2: + val = reader.bytes(); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.ChannelEdge.custom_records"); + } + } + map[key ?? "0"] = val ?? new Uint8Array(0); + } + internalBinaryWrite(message: ChannelEdge, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 channel_id = 1 [jstype = JS_STRING]; */ + if (message.channelId !== "0") + writer.tag(1, WireType.Varint).uint64(message.channelId); + /* string chan_point = 2; */ + if (message.chanPoint !== "") + writer.tag(2, WireType.LengthDelimited).string(message.chanPoint); + /* uint32 last_update = 3 [deprecated = true]; */ + if (message.lastUpdate !== 0) + writer.tag(3, WireType.Varint).uint32(message.lastUpdate); + /* string node1_pub = 4; */ + if (message.node1Pub !== "") + writer.tag(4, WireType.LengthDelimited).string(message.node1Pub); + /* string node2_pub = 5; */ + if (message.node2Pub !== "") + writer.tag(5, WireType.LengthDelimited).string(message.node2Pub); + /* int64 capacity = 6; */ + if (message.capacity !== 0n) + writer.tag(6, WireType.Varint).int64(message.capacity); + /* lnrpc.RoutingPolicy node1_policy = 7; */ + if (message.node1Policy) + RoutingPolicy.internalBinaryWrite(message.node1Policy, writer.tag(7, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.RoutingPolicy node2_policy = 8; */ + if (message.node2Policy) + RoutingPolicy.internalBinaryWrite(message.node2Policy, writer.tag(8, WireType.LengthDelimited).fork(), options).join(); + /* map custom_records = 9; */ + for (let k of Object.keys(message.customRecords)) + writer.tag(9, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint64(k).tag(2, WireType.LengthDelimited).bytes(message.customRecords[k]).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelEdge + */ +export const ChannelEdge = new ChannelEdge$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelGraphRequest$Type extends MessageType { + constructor() { + super("lnrpc.ChannelGraphRequest", [ + { no: 1, name: "include_unannounced", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): ChannelGraphRequest { + const message = { includeUnannounced: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelGraphRequest): ChannelGraphRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool include_unannounced */ 1: + message.includeUnannounced = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChannelGraphRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool include_unannounced = 1; */ + if (message.includeUnannounced !== false) + writer.tag(1, WireType.Varint).bool(message.includeUnannounced); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelGraphRequest + */ +export const ChannelGraphRequest = new ChannelGraphRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelGraph$Type extends MessageType { + constructor() { + super("lnrpc.ChannelGraph", [ + { no: 1, name: "nodes", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => LightningNode }, + { no: 2, name: "edges", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => ChannelEdge } + ]); + } + create(value?: PartialMessage): ChannelGraph { + const message = { nodes: [], edges: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelGraph): ChannelGraph { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.LightningNode nodes */ 1: + message.nodes.push(LightningNode.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* repeated lnrpc.ChannelEdge edges */ 2: + message.edges.push(ChannelEdge.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChannelGraph, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.LightningNode nodes = 1; */ + for (let i = 0; i < message.nodes.length; i++) + LightningNode.internalBinaryWrite(message.nodes[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* repeated lnrpc.ChannelEdge edges = 2; */ + for (let i = 0; i < message.edges.length; i++) + ChannelEdge.internalBinaryWrite(message.edges[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelGraph + */ +export const ChannelGraph = new ChannelGraph$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class NodeMetricsRequest$Type extends MessageType { + constructor() { + super("lnrpc.NodeMetricsRequest", [ + { no: 1, name: "types", kind: "enum", repeat: 1 /*RepeatType.PACKED*/, T: () => ["lnrpc.NodeMetricType", NodeMetricType] } + ]); + } + create(value?: PartialMessage): NodeMetricsRequest { + const message = { types: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NodeMetricsRequest): NodeMetricsRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.NodeMetricType types */ 1: + if (wireType === WireType.LengthDelimited) + for (let e = reader.int32() + reader.pos; reader.pos < e;) + message.types.push(reader.int32()); + else + message.types.push(reader.int32()); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: NodeMetricsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.NodeMetricType types = 1; */ + if (message.types.length) { + writer.tag(1, WireType.LengthDelimited).fork(); + for (let i = 0; i < message.types.length; i++) + writer.int32(message.types[i]); + writer.join(); + } + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.NodeMetricsRequest + */ +export const NodeMetricsRequest = new NodeMetricsRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class NodeMetricsResponse$Type extends MessageType { + constructor() { + super("lnrpc.NodeMetricsResponse", [ + { no: 1, name: "betweenness_centrality", kind: "map", K: 9 /*ScalarType.STRING*/, V: { kind: "message", T: () => FloatMetric } } + ]); + } + create(value?: PartialMessage): NodeMetricsResponse { + const message = { betweennessCentrality: {} }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NodeMetricsResponse): NodeMetricsResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* map betweenness_centrality */ 1: + this.binaryReadMap1(message.betweennessCentrality, reader, options); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap1(map: NodeMetricsResponse["betweennessCentrality"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof NodeMetricsResponse["betweennessCentrality"] | undefined, val: NodeMetricsResponse["betweennessCentrality"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.string(); + break; + case 2: + val = FloatMetric.internalBinaryRead(reader, reader.uint32(), options); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.NodeMetricsResponse.betweenness_centrality"); + } + } + map[key ?? ""] = val ?? FloatMetric.create(); + } + internalBinaryWrite(message: NodeMetricsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* map betweenness_centrality = 1; */ + for (let k of Object.keys(message.betweennessCentrality)) { + writer.tag(1, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k); + writer.tag(2, WireType.LengthDelimited).fork(); + FloatMetric.internalBinaryWrite(message.betweennessCentrality[k], writer, options); + writer.join().join(); + } + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.NodeMetricsResponse + */ +export const NodeMetricsResponse = new NodeMetricsResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class FloatMetric$Type extends MessageType { + constructor() { + super("lnrpc.FloatMetric", [ + { no: 1, name: "value", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ }, + { no: 2, name: "normalized_value", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ } + ]); + } + create(value?: PartialMessage): FloatMetric { + const message = { value: 0, normalizedValue: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FloatMetric): FloatMetric { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* double value */ 1: + message.value = reader.double(); + break; + case /* double normalized_value */ 2: + message.normalizedValue = reader.double(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: FloatMetric, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* double value = 1; */ + if (message.value !== 0) + writer.tag(1, WireType.Bit64).double(message.value); + /* double normalized_value = 2; */ + if (message.normalizedValue !== 0) + writer.tag(2, WireType.Bit64).double(message.normalizedValue); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.FloatMetric + */ +export const FloatMetric = new FloatMetric$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChanInfoRequest$Type extends MessageType { + constructor() { + super("lnrpc.ChanInfoRequest", [ + { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 2, name: "chan_point", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): ChanInfoRequest { + const message = { chanId: "0", chanPoint: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChanInfoRequest): ChanInfoRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 chan_id = 1 [jstype = JS_STRING];*/ 1: + message.chanId = reader.uint64().toString(); + break; + case /* string chan_point */ 2: + message.chanPoint = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChanInfoRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 chan_id = 1 [jstype = JS_STRING]; */ + if (message.chanId !== "0") + writer.tag(1, WireType.Varint).uint64(message.chanId); + /* string chan_point = 2; */ + if (message.chanPoint !== "") + writer.tag(2, WireType.LengthDelimited).string(message.chanPoint); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChanInfoRequest + */ +export const ChanInfoRequest = new ChanInfoRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class NetworkInfoRequest$Type extends MessageType { + constructor() { + super("lnrpc.NetworkInfoRequest", []); + } + create(value?: PartialMessage): NetworkInfoRequest { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NetworkInfoRequest): NetworkInfoRequest { + return target ?? this.create(); + } + internalBinaryWrite(message: NetworkInfoRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.NetworkInfoRequest + */ +export const NetworkInfoRequest = new NetworkInfoRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class NetworkInfo$Type extends MessageType { + constructor() { + super("lnrpc.NetworkInfo", [ + { no: 1, name: "graph_diameter", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 2, name: "avg_out_degree", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ }, + { no: 3, name: "max_out_degree", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 4, name: "num_nodes", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 5, name: "num_channels", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 6, name: "total_network_capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "avg_channel_size", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ }, + { no: 8, name: "min_channel_size", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 9, name: "max_channel_size", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 10, name: "median_channel_size_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 11, name: "num_zombie_chans", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): NetworkInfo { + const message = { graphDiameter: 0, avgOutDegree: 0, maxOutDegree: 0, numNodes: 0, numChannels: 0, totalNetworkCapacity: 0n, avgChannelSize: 0, minChannelSize: 0n, maxChannelSize: 0n, medianChannelSizeSat: 0n, numZombieChans: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NetworkInfo): NetworkInfo { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint32 graph_diameter */ 1: + message.graphDiameter = reader.uint32(); + break; + case /* double avg_out_degree */ 2: + message.avgOutDegree = reader.double(); + break; + case /* uint32 max_out_degree */ 3: + message.maxOutDegree = reader.uint32(); + break; + case /* uint32 num_nodes */ 4: + message.numNodes = reader.uint32(); + break; + case /* uint32 num_channels */ 5: + message.numChannels = reader.uint32(); + break; + case /* int64 total_network_capacity */ 6: + message.totalNetworkCapacity = reader.int64().toBigInt(); + break; + case /* double avg_channel_size */ 7: + message.avgChannelSize = reader.double(); + break; + case /* int64 min_channel_size */ 8: + message.minChannelSize = reader.int64().toBigInt(); + break; + case /* int64 max_channel_size */ 9: + message.maxChannelSize = reader.int64().toBigInt(); + break; + case /* int64 median_channel_size_sat */ 10: + message.medianChannelSizeSat = reader.int64().toBigInt(); + break; + case /* uint64 num_zombie_chans */ 11: + message.numZombieChans = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: NetworkInfo, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint32 graph_diameter = 1; */ + if (message.graphDiameter !== 0) + writer.tag(1, WireType.Varint).uint32(message.graphDiameter); + /* double avg_out_degree = 2; */ + if (message.avgOutDegree !== 0) + writer.tag(2, WireType.Bit64).double(message.avgOutDegree); + /* uint32 max_out_degree = 3; */ + if (message.maxOutDegree !== 0) + writer.tag(3, WireType.Varint).uint32(message.maxOutDegree); + /* uint32 num_nodes = 4; */ + if (message.numNodes !== 0) + writer.tag(4, WireType.Varint).uint32(message.numNodes); + /* uint32 num_channels = 5; */ + if (message.numChannels !== 0) + writer.tag(5, WireType.Varint).uint32(message.numChannels); + /* int64 total_network_capacity = 6; */ + if (message.totalNetworkCapacity !== 0n) + writer.tag(6, WireType.Varint).int64(message.totalNetworkCapacity); + /* double avg_channel_size = 7; */ + if (message.avgChannelSize !== 0) + writer.tag(7, WireType.Bit64).double(message.avgChannelSize); + /* int64 min_channel_size = 8; */ + if (message.minChannelSize !== 0n) + writer.tag(8, WireType.Varint).int64(message.minChannelSize); + /* int64 max_channel_size = 9; */ + if (message.maxChannelSize !== 0n) + writer.tag(9, WireType.Varint).int64(message.maxChannelSize); + /* int64 median_channel_size_sat = 10; */ + if (message.medianChannelSizeSat !== 0n) + writer.tag(10, WireType.Varint).int64(message.medianChannelSizeSat); + /* uint64 num_zombie_chans = 11; */ + if (message.numZombieChans !== 0n) + writer.tag(11, WireType.Varint).uint64(message.numZombieChans); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.NetworkInfo + */ +export const NetworkInfo = new NetworkInfo$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class StopRequest$Type extends MessageType { + constructor() { + super("lnrpc.StopRequest", []); + } + create(value?: PartialMessage): StopRequest { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StopRequest): StopRequest { + return target ?? this.create(); + } + internalBinaryWrite(message: StopRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.StopRequest + */ +export const StopRequest = new StopRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class StopResponse$Type extends MessageType { + constructor() { + super("lnrpc.StopResponse", []); + } + create(value?: PartialMessage): StopResponse { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StopResponse): StopResponse { + return target ?? this.create(); + } + internalBinaryWrite(message: StopResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.StopResponse + */ +export const StopResponse = new StopResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class GraphTopologySubscription$Type extends MessageType { + constructor() { + super("lnrpc.GraphTopologySubscription", []); + } + create(value?: PartialMessage): GraphTopologySubscription { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GraphTopologySubscription): GraphTopologySubscription { + return target ?? this.create(); + } + internalBinaryWrite(message: GraphTopologySubscription, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.GraphTopologySubscription + */ +export const GraphTopologySubscription = new GraphTopologySubscription$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class GraphTopologyUpdate$Type extends MessageType { + constructor() { + super("lnrpc.GraphTopologyUpdate", [ + { no: 1, name: "node_updates", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => NodeUpdate }, + { no: 2, name: "channel_updates", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => ChannelEdgeUpdate }, + { no: 3, name: "closed_chans", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => ClosedChannelUpdate } + ]); + } + create(value?: PartialMessage): GraphTopologyUpdate { + const message = { nodeUpdates: [], channelUpdates: [], closedChans: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GraphTopologyUpdate): GraphTopologyUpdate { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.NodeUpdate node_updates */ 1: + message.nodeUpdates.push(NodeUpdate.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* repeated lnrpc.ChannelEdgeUpdate channel_updates */ 2: + message.channelUpdates.push(ChannelEdgeUpdate.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* repeated lnrpc.ClosedChannelUpdate closed_chans */ 3: + message.closedChans.push(ClosedChannelUpdate.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: GraphTopologyUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.NodeUpdate node_updates = 1; */ + for (let i = 0; i < message.nodeUpdates.length; i++) + NodeUpdate.internalBinaryWrite(message.nodeUpdates[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* repeated lnrpc.ChannelEdgeUpdate channel_updates = 2; */ + for (let i = 0; i < message.channelUpdates.length; i++) + ChannelEdgeUpdate.internalBinaryWrite(message.channelUpdates[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + /* repeated lnrpc.ClosedChannelUpdate closed_chans = 3; */ + for (let i = 0; i < message.closedChans.length; i++) + ClosedChannelUpdate.internalBinaryWrite(message.closedChans[i], writer.tag(3, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.GraphTopologyUpdate + */ +export const GraphTopologyUpdate = new GraphTopologyUpdate$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class NodeUpdate$Type extends MessageType { + constructor() { + super("lnrpc.NodeUpdate", [ + { no: 1, name: "addresses", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "identity_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 3, name: "global_features", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 4, name: "alias", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 5, name: "color", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 7, name: "node_addresses", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => NodeAddress }, + { no: 6, name: "features", kind: "map", K: 13 /*ScalarType.UINT32*/, V: { kind: "message", T: () => Feature } } + ]); + } + create(value?: PartialMessage): NodeUpdate { + const message = { addresses: [], identityKey: "", globalFeatures: new Uint8Array(0), alias: "", color: "", nodeAddresses: [], features: {} }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NodeUpdate): NodeUpdate { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated string addresses = 1 [deprecated = true];*/ 1: + message.addresses.push(reader.string()); + break; + case /* string identity_key */ 2: + message.identityKey = reader.string(); + break; + case /* bytes global_features = 3 [deprecated = true];*/ 3: + message.globalFeatures = reader.bytes(); + break; + case /* string alias */ 4: + message.alias = reader.string(); + break; + case /* string color */ 5: + message.color = reader.string(); + break; + case /* repeated lnrpc.NodeAddress node_addresses */ 7: + message.nodeAddresses.push(NodeAddress.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* map features */ 6: + this.binaryReadMap6(message.features, reader, options); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap6(map: NodeUpdate["features"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof NodeUpdate["features"] | undefined, val: NodeUpdate["features"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.uint32(); + break; + case 2: + val = Feature.internalBinaryRead(reader, reader.uint32(), options); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.NodeUpdate.features"); + } + } + map[key ?? 0] = val ?? Feature.create(); + } + internalBinaryWrite(message: NodeUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated string addresses = 1 [deprecated = true]; */ + for (let i = 0; i < message.addresses.length; i++) + writer.tag(1, WireType.LengthDelimited).string(message.addresses[i]); + /* string identity_key = 2; */ + if (message.identityKey !== "") + writer.tag(2, WireType.LengthDelimited).string(message.identityKey); + /* bytes global_features = 3 [deprecated = true]; */ + if (message.globalFeatures.length) + writer.tag(3, WireType.LengthDelimited).bytes(message.globalFeatures); + /* string alias = 4; */ + if (message.alias !== "") + writer.tag(4, WireType.LengthDelimited).string(message.alias); + /* string color = 5; */ + if (message.color !== "") + writer.tag(5, WireType.LengthDelimited).string(message.color); + /* repeated lnrpc.NodeAddress node_addresses = 7; */ + for (let i = 0; i < message.nodeAddresses.length; i++) + NodeAddress.internalBinaryWrite(message.nodeAddresses[i], writer.tag(7, WireType.LengthDelimited).fork(), options).join(); + /* map features = 6; */ + for (let k of Object.keys(message.features)) { + writer.tag(6, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint32(parseInt(k)); + writer.tag(2, WireType.LengthDelimited).fork(); + Feature.internalBinaryWrite(message.features[k as any], writer, options); + writer.join().join(); + } + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.NodeUpdate + */ +export const NodeUpdate = new NodeUpdate$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelEdgeUpdate$Type extends MessageType { + constructor() { + super("lnrpc.ChannelEdgeUpdate", [ + { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 2, name: "chan_point", kind: "message", T: () => ChannelPoint }, + { no: 3, name: "capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "routing_policy", kind: "message", T: () => RoutingPolicy }, + { no: 5, name: "advertising_node", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 6, name: "connecting_node", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): ChannelEdgeUpdate { + const message = { chanId: "0", capacity: 0n, advertisingNode: "", connectingNode: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelEdgeUpdate): ChannelEdgeUpdate { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 chan_id = 1 [jstype = JS_STRING];*/ 1: + message.chanId = reader.uint64().toString(); + break; + case /* lnrpc.ChannelPoint chan_point */ 2: + message.chanPoint = ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.chanPoint); + break; + case /* int64 capacity */ 3: + message.capacity = reader.int64().toBigInt(); + break; + case /* lnrpc.RoutingPolicy routing_policy */ 4: + message.routingPolicy = RoutingPolicy.internalBinaryRead(reader, reader.uint32(), options, message.routingPolicy); + break; + case /* string advertising_node */ 5: + message.advertisingNode = reader.string(); + break; + case /* string connecting_node */ 6: + message.connectingNode = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChannelEdgeUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 chan_id = 1 [jstype = JS_STRING]; */ + if (message.chanId !== "0") + writer.tag(1, WireType.Varint).uint64(message.chanId); + /* lnrpc.ChannelPoint chan_point = 2; */ + if (message.chanPoint) + ChannelPoint.internalBinaryWrite(message.chanPoint, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + /* int64 capacity = 3; */ + if (message.capacity !== 0n) + writer.tag(3, WireType.Varint).int64(message.capacity); + /* lnrpc.RoutingPolicy routing_policy = 4; */ + if (message.routingPolicy) + RoutingPolicy.internalBinaryWrite(message.routingPolicy, writer.tag(4, WireType.LengthDelimited).fork(), options).join(); + /* string advertising_node = 5; */ + if (message.advertisingNode !== "") + writer.tag(5, WireType.LengthDelimited).string(message.advertisingNode); + /* string connecting_node = 6; */ + if (message.connectingNode !== "") + writer.tag(6, WireType.LengthDelimited).string(message.connectingNode); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelEdgeUpdate + */ +export const ChannelEdgeUpdate = new ChannelEdgeUpdate$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ClosedChannelUpdate$Type extends MessageType { + constructor() { + super("lnrpc.ClosedChannelUpdate", [ + { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 2, name: "capacity", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "closed_height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 4, name: "chan_point", kind: "message", T: () => ChannelPoint } + ]); + } + create(value?: PartialMessage): ClosedChannelUpdate { + const message = { chanId: "0", capacity: 0n, closedHeight: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ClosedChannelUpdate): ClosedChannelUpdate { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 chan_id = 1 [jstype = JS_STRING];*/ 1: + message.chanId = reader.uint64().toString(); + break; + case /* int64 capacity */ 2: + message.capacity = reader.int64().toBigInt(); + break; + case /* uint32 closed_height */ 3: + message.closedHeight = reader.uint32(); + break; + case /* lnrpc.ChannelPoint chan_point */ 4: + message.chanPoint = ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.chanPoint); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ClosedChannelUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 chan_id = 1 [jstype = JS_STRING]; */ + if (message.chanId !== "0") + writer.tag(1, WireType.Varint).uint64(message.chanId); + /* int64 capacity = 2; */ + if (message.capacity !== 0n) + writer.tag(2, WireType.Varint).int64(message.capacity); + /* uint32 closed_height = 3; */ + if (message.closedHeight !== 0) + writer.tag(3, WireType.Varint).uint32(message.closedHeight); + /* lnrpc.ChannelPoint chan_point = 4; */ + if (message.chanPoint) + ChannelPoint.internalBinaryWrite(message.chanPoint, writer.tag(4, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ClosedChannelUpdate + */ +export const ClosedChannelUpdate = new ClosedChannelUpdate$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class HopHint$Type extends MessageType { + constructor() { + super("lnrpc.HopHint", [ + { no: 1, name: "node_id", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 3, name: "fee_base_msat", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 4, name: "fee_proportional_millionths", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 5, name: "cltv_expiry_delta", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } + ]); + } + create(value?: PartialMessage): HopHint { + const message = { nodeId: "", chanId: "0", feeBaseMsat: 0, feeProportionalMillionths: 0, cltvExpiryDelta: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: HopHint): HopHint { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string node_id */ 1: + message.nodeId = reader.string(); + break; + case /* uint64 chan_id = 2 [jstype = JS_STRING];*/ 2: + message.chanId = reader.uint64().toString(); + break; + case /* uint32 fee_base_msat */ 3: + message.feeBaseMsat = reader.uint32(); + break; + case /* uint32 fee_proportional_millionths */ 4: + message.feeProportionalMillionths = reader.uint32(); + break; + case /* uint32 cltv_expiry_delta */ 5: + message.cltvExpiryDelta = reader.uint32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: HopHint, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string node_id = 1; */ + if (message.nodeId !== "") + writer.tag(1, WireType.LengthDelimited).string(message.nodeId); + /* uint64 chan_id = 2 [jstype = JS_STRING]; */ + if (message.chanId !== "0") + writer.tag(2, WireType.Varint).uint64(message.chanId); + /* uint32 fee_base_msat = 3; */ + if (message.feeBaseMsat !== 0) + writer.tag(3, WireType.Varint).uint32(message.feeBaseMsat); + /* uint32 fee_proportional_millionths = 4; */ + if (message.feeProportionalMillionths !== 0) + writer.tag(4, WireType.Varint).uint32(message.feeProportionalMillionths); + /* uint32 cltv_expiry_delta = 5; */ + if (message.cltvExpiryDelta !== 0) + writer.tag(5, WireType.Varint).uint32(message.cltvExpiryDelta); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.HopHint + */ +export const HopHint = new HopHint$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SetID$Type extends MessageType { + constructor() { + super("lnrpc.SetID", [ + { no: 1, name: "set_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): SetID { + const message = { setId: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SetID): SetID { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes set_id */ 1: + message.setId = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: SetID, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes set_id = 1; */ + if (message.setId.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.setId); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.SetID + */ +export const SetID = new SetID$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class RouteHint$Type extends MessageType { + constructor() { + super("lnrpc.RouteHint", [ + { no: 1, name: "hop_hints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => HopHint } + ]); + } + create(value?: PartialMessage): RouteHint { + const message = { hopHints: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RouteHint): RouteHint { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.HopHint hop_hints */ 1: + message.hopHints.push(HopHint.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: RouteHint, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.HopHint hop_hints = 1; */ + for (let i = 0; i < message.hopHints.length; i++) + HopHint.internalBinaryWrite(message.hopHints[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.RouteHint + */ +export const RouteHint = new RouteHint$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class BlindedPaymentPath$Type extends MessageType { + constructor() { + super("lnrpc.BlindedPaymentPath", [ + { no: 1, name: "blinded_path", kind: "message", T: () => BlindedPath }, + { no: 2, name: "base_fee_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "proportional_fee_rate", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 4, name: "total_cltv_delta", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 5, name: "htlc_min_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "htlc_max_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "features", kind: "enum", repeat: 1 /*RepeatType.PACKED*/, T: () => ["lnrpc.FeatureBit", FeatureBit] } + ]); + } + create(value?: PartialMessage): BlindedPaymentPath { + const message = { baseFeeMsat: 0n, proportionalFeeRate: 0, totalCltvDelta: 0, htlcMinMsat: 0n, htlcMaxMsat: 0n, features: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BlindedPaymentPath): BlindedPaymentPath { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.BlindedPath blinded_path */ 1: + message.blindedPath = BlindedPath.internalBinaryRead(reader, reader.uint32(), options, message.blindedPath); + break; + case /* uint64 base_fee_msat */ 2: + message.baseFeeMsat = reader.uint64().toBigInt(); + break; + case /* uint32 proportional_fee_rate */ 3: + message.proportionalFeeRate = reader.uint32(); + break; + case /* uint32 total_cltv_delta */ 4: + message.totalCltvDelta = reader.uint32(); + break; + case /* uint64 htlc_min_msat */ 5: + message.htlcMinMsat = reader.uint64().toBigInt(); + break; + case /* uint64 htlc_max_msat */ 6: + message.htlcMaxMsat = reader.uint64().toBigInt(); + break; + case /* repeated lnrpc.FeatureBit features */ 7: + if (wireType === WireType.LengthDelimited) + for (let e = reader.int32() + reader.pos; reader.pos < e;) + message.features.push(reader.int32()); + else + message.features.push(reader.int32()); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: BlindedPaymentPath, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.BlindedPath blinded_path = 1; */ + if (message.blindedPath) + BlindedPath.internalBinaryWrite(message.blindedPath, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* uint64 base_fee_msat = 2; */ + if (message.baseFeeMsat !== 0n) + writer.tag(2, WireType.Varint).uint64(message.baseFeeMsat); + /* uint32 proportional_fee_rate = 3; */ + if (message.proportionalFeeRate !== 0) + writer.tag(3, WireType.Varint).uint32(message.proportionalFeeRate); + /* uint32 total_cltv_delta = 4; */ + if (message.totalCltvDelta !== 0) + writer.tag(4, WireType.Varint).uint32(message.totalCltvDelta); + /* uint64 htlc_min_msat = 5; */ + if (message.htlcMinMsat !== 0n) + writer.tag(5, WireType.Varint).uint64(message.htlcMinMsat); + /* uint64 htlc_max_msat = 6; */ + if (message.htlcMaxMsat !== 0n) + writer.tag(6, WireType.Varint).uint64(message.htlcMaxMsat); + /* repeated lnrpc.FeatureBit features = 7; */ + if (message.features.length) { + writer.tag(7, WireType.LengthDelimited).fork(); + for (let i = 0; i < message.features.length; i++) + writer.int32(message.features[i]); + writer.join(); + } + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.BlindedPaymentPath + */ +export const BlindedPaymentPath = new BlindedPaymentPath$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class BlindedPath$Type extends MessageType { + constructor() { + super("lnrpc.BlindedPath", [ + { no: 1, name: "introduction_node", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "blinding_point", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "blinded_hops", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => BlindedHop } + ]); + } + create(value?: PartialMessage): BlindedPath { + const message = { introductionNode: new Uint8Array(0), blindingPoint: new Uint8Array(0), blindedHops: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BlindedPath): BlindedPath { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes introduction_node */ 1: + message.introductionNode = reader.bytes(); + break; + case /* bytes blinding_point */ 2: + message.blindingPoint = reader.bytes(); + break; + case /* repeated lnrpc.BlindedHop blinded_hops */ 3: + message.blindedHops.push(BlindedHop.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: BlindedPath, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes introduction_node = 1; */ + if (message.introductionNode.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.introductionNode); + /* bytes blinding_point = 2; */ + if (message.blindingPoint.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.blindingPoint); + /* repeated lnrpc.BlindedHop blinded_hops = 3; */ + for (let i = 0; i < message.blindedHops.length; i++) + BlindedHop.internalBinaryWrite(message.blindedHops[i], writer.tag(3, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.BlindedPath + */ +export const BlindedPath = new BlindedPath$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class BlindedHop$Type extends MessageType { + constructor() { + super("lnrpc.BlindedHop", [ + { no: 1, name: "blinded_node", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "encrypted_data", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): BlindedHop { + const message = { blindedNode: new Uint8Array(0), encryptedData: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BlindedHop): BlindedHop { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes blinded_node */ 1: + message.blindedNode = reader.bytes(); + break; + case /* bytes encrypted_data */ 2: + message.encryptedData = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: BlindedHop, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes blinded_node = 1; */ + if (message.blindedNode.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.blindedNode); + /* bytes encrypted_data = 2; */ + if (message.encryptedData.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.encryptedData); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.BlindedHop + */ +export const BlindedHop = new BlindedHop$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class AMPInvoiceState$Type extends MessageType { + constructor() { + super("lnrpc.AMPInvoiceState", [ + { no: 1, name: "state", kind: "enum", T: () => ["lnrpc.InvoiceHTLCState", InvoiceHTLCState] }, + { no: 2, name: "settle_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "settle_time", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "amt_paid_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): AMPInvoiceState { + const message = { state: 0, settleIndex: 0n, settleTime: 0n, amtPaidMsat: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AMPInvoiceState): AMPInvoiceState { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.InvoiceHTLCState state */ 1: + message.state = reader.int32(); + break; + case /* uint64 settle_index */ 2: + message.settleIndex = reader.uint64().toBigInt(); + break; + case /* int64 settle_time */ 3: + message.settleTime = reader.int64().toBigInt(); + break; + case /* int64 amt_paid_msat */ 5: + message.amtPaidMsat = reader.int64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: AMPInvoiceState, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.InvoiceHTLCState state = 1; */ + if (message.state !== 0) + writer.tag(1, WireType.Varint).int32(message.state); + /* uint64 settle_index = 2; */ + if (message.settleIndex !== 0n) + writer.tag(2, WireType.Varint).uint64(message.settleIndex); + /* int64 settle_time = 3; */ + if (message.settleTime !== 0n) + writer.tag(3, WireType.Varint).int64(message.settleTime); + /* int64 amt_paid_msat = 5; */ + if (message.amtPaidMsat !== 0n) + writer.tag(5, WireType.Varint).int64(message.amtPaidMsat); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.AMPInvoiceState + */ +export const AMPInvoiceState = new AMPInvoiceState$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class Invoice$Type extends MessageType { + constructor() { + super("lnrpc.Invoice", [ + { no: 1, name: "memo", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 3, name: "r_preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 4, name: "r_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 5, name: "value", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 23, name: "value_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "settled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 7, name: "creation_date", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 8, name: "settle_date", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 9, name: "payment_request", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 10, name: "description_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 11, name: "expiry", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 12, name: "fallback_addr", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 13, name: "cltv_expiry", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 14, name: "route_hints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => RouteHint }, + { no: 15, name: "private", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 16, name: "add_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 17, name: "settle_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 18, name: "amt_paid", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 19, name: "amt_paid_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 20, name: "amt_paid_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 21, name: "state", kind: "enum", T: () => ["lnrpc.Invoice.InvoiceState", Invoice_InvoiceState] }, + { no: 22, name: "htlcs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => InvoiceHTLC }, + { no: 24, name: "features", kind: "map", K: 13 /*ScalarType.UINT32*/, V: { kind: "message", T: () => Feature } }, + { no: 25, name: "is_keysend", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 26, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 27, name: "is_amp", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 28, name: "amp_invoice_state", kind: "map", K: 9 /*ScalarType.STRING*/, V: { kind: "message", T: () => AMPInvoiceState } }, + { no: 29, name: "is_blinded", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 30, name: "blinded_path_config", kind: "message", T: () => BlindedPathConfig } + ]); + } + create(value?: PartialMessage): Invoice { + const message = { memo: "", rPreimage: new Uint8Array(0), rHash: new Uint8Array(0), value: 0n, valueMsat: 0n, settled: false, creationDate: 0n, settleDate: 0n, paymentRequest: "", descriptionHash: new Uint8Array(0), expiry: 0n, fallbackAddr: "", cltvExpiry: 0n, routeHints: [], private: false, addIndex: 0n, settleIndex: 0n, amtPaid: 0n, amtPaidSat: 0n, amtPaidMsat: 0n, state: 0, htlcs: [], features: {}, isKeysend: false, paymentAddr: new Uint8Array(0), isAmp: false, ampInvoiceState: {}, isBlinded: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Invoice): Invoice { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string memo */ 1: + message.memo = reader.string(); + break; + case /* bytes r_preimage */ 3: + message.rPreimage = reader.bytes(); + break; + case /* bytes r_hash */ 4: + message.rHash = reader.bytes(); + break; + case /* int64 value */ 5: + message.value = reader.int64().toBigInt(); + break; + case /* int64 value_msat */ 23: + message.valueMsat = reader.int64().toBigInt(); + break; + case /* bool settled = 6 [deprecated = true];*/ 6: + message.settled = reader.bool(); + break; + case /* int64 creation_date */ 7: + message.creationDate = reader.int64().toBigInt(); + break; + case /* int64 settle_date */ 8: + message.settleDate = reader.int64().toBigInt(); + break; + case /* string payment_request */ 9: + message.paymentRequest = reader.string(); + break; + case /* bytes description_hash */ 10: + message.descriptionHash = reader.bytes(); + break; + case /* int64 expiry */ 11: + message.expiry = reader.int64().toBigInt(); + break; + case /* string fallback_addr */ 12: + message.fallbackAddr = reader.string(); + break; + case /* uint64 cltv_expiry */ 13: + message.cltvExpiry = reader.uint64().toBigInt(); + break; + case /* repeated lnrpc.RouteHint route_hints */ 14: + message.routeHints.push(RouteHint.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* bool private */ 15: + message.private = reader.bool(); + break; + case /* uint64 add_index */ 16: + message.addIndex = reader.uint64().toBigInt(); + break; + case /* uint64 settle_index */ 17: + message.settleIndex = reader.uint64().toBigInt(); + break; + case /* int64 amt_paid = 18 [deprecated = true];*/ 18: + message.amtPaid = reader.int64().toBigInt(); + break; + case /* int64 amt_paid_sat */ 19: + message.amtPaidSat = reader.int64().toBigInt(); + break; + case /* int64 amt_paid_msat */ 20: + message.amtPaidMsat = reader.int64().toBigInt(); + break; + case /* lnrpc.Invoice.InvoiceState state */ 21: + message.state = reader.int32(); + break; + case /* repeated lnrpc.InvoiceHTLC htlcs */ 22: + message.htlcs.push(InvoiceHTLC.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* map features */ 24: + this.binaryReadMap24(message.features, reader, options); + break; + case /* bool is_keysend */ 25: + message.isKeysend = reader.bool(); + break; + case /* bytes payment_addr */ 26: + message.paymentAddr = reader.bytes(); + break; + case /* bool is_amp */ 27: + message.isAmp = reader.bool(); + break; + case /* map amp_invoice_state */ 28: + this.binaryReadMap28(message.ampInvoiceState, reader, options); + break; + case /* bool is_blinded */ 29: + message.isBlinded = reader.bool(); + break; + case /* lnrpc.BlindedPathConfig blinded_path_config */ 30: + message.blindedPathConfig = BlindedPathConfig.internalBinaryRead(reader, reader.uint32(), options, message.blindedPathConfig); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap24(map: Invoice["features"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof Invoice["features"] | undefined, val: Invoice["features"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.uint32(); + break; + case 2: + val = Feature.internalBinaryRead(reader, reader.uint32(), options); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.Invoice.features"); + } + } + map[key ?? 0] = val ?? Feature.create(); + } + private binaryReadMap28(map: Invoice["ampInvoiceState"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof Invoice["ampInvoiceState"] | undefined, val: Invoice["ampInvoiceState"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.string(); + break; + case 2: + val = AMPInvoiceState.internalBinaryRead(reader, reader.uint32(), options); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.Invoice.amp_invoice_state"); + } + } + map[key ?? ""] = val ?? AMPInvoiceState.create(); + } + internalBinaryWrite(message: Invoice, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string memo = 1; */ + if (message.memo !== "") + writer.tag(1, WireType.LengthDelimited).string(message.memo); + /* bytes r_preimage = 3; */ + if (message.rPreimage.length) + writer.tag(3, WireType.LengthDelimited).bytes(message.rPreimage); + /* bytes r_hash = 4; */ + if (message.rHash.length) + writer.tag(4, WireType.LengthDelimited).bytes(message.rHash); + /* int64 value = 5; */ + if (message.value !== 0n) + writer.tag(5, WireType.Varint).int64(message.value); + /* int64 value_msat = 23; */ + if (message.valueMsat !== 0n) + writer.tag(23, WireType.Varint).int64(message.valueMsat); + /* bool settled = 6 [deprecated = true]; */ + if (message.settled !== false) + writer.tag(6, WireType.Varint).bool(message.settled); + /* int64 creation_date = 7; */ + if (message.creationDate !== 0n) + writer.tag(7, WireType.Varint).int64(message.creationDate); + /* int64 settle_date = 8; */ + if (message.settleDate !== 0n) + writer.tag(8, WireType.Varint).int64(message.settleDate); + /* string payment_request = 9; */ + if (message.paymentRequest !== "") + writer.tag(9, WireType.LengthDelimited).string(message.paymentRequest); + /* bytes description_hash = 10; */ + if (message.descriptionHash.length) + writer.tag(10, WireType.LengthDelimited).bytes(message.descriptionHash); + /* int64 expiry = 11; */ + if (message.expiry !== 0n) + writer.tag(11, WireType.Varint).int64(message.expiry); + /* string fallback_addr = 12; */ + if (message.fallbackAddr !== "") + writer.tag(12, WireType.LengthDelimited).string(message.fallbackAddr); + /* uint64 cltv_expiry = 13; */ + if (message.cltvExpiry !== 0n) + writer.tag(13, WireType.Varint).uint64(message.cltvExpiry); + /* repeated lnrpc.RouteHint route_hints = 14; */ + for (let i = 0; i < message.routeHints.length; i++) + RouteHint.internalBinaryWrite(message.routeHints[i], writer.tag(14, WireType.LengthDelimited).fork(), options).join(); + /* bool private = 15; */ + if (message.private !== false) + writer.tag(15, WireType.Varint).bool(message.private); + /* uint64 add_index = 16; */ + if (message.addIndex !== 0n) + writer.tag(16, WireType.Varint).uint64(message.addIndex); + /* uint64 settle_index = 17; */ + if (message.settleIndex !== 0n) + writer.tag(17, WireType.Varint).uint64(message.settleIndex); + /* int64 amt_paid = 18 [deprecated = true]; */ + if (message.amtPaid !== 0n) + writer.tag(18, WireType.Varint).int64(message.amtPaid); + /* int64 amt_paid_sat = 19; */ + if (message.amtPaidSat !== 0n) + writer.tag(19, WireType.Varint).int64(message.amtPaidSat); + /* int64 amt_paid_msat = 20; */ + if (message.amtPaidMsat !== 0n) + writer.tag(20, WireType.Varint).int64(message.amtPaidMsat); + /* lnrpc.Invoice.InvoiceState state = 21; */ + if (message.state !== 0) + writer.tag(21, WireType.Varint).int32(message.state); + /* repeated lnrpc.InvoiceHTLC htlcs = 22; */ + for (let i = 0; i < message.htlcs.length; i++) + InvoiceHTLC.internalBinaryWrite(message.htlcs[i], writer.tag(22, WireType.LengthDelimited).fork(), options).join(); + /* map features = 24; */ + for (let k of Object.keys(message.features)) { + writer.tag(24, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint32(parseInt(k)); + writer.tag(2, WireType.LengthDelimited).fork(); + Feature.internalBinaryWrite(message.features[k as any], writer, options); + writer.join().join(); + } + /* bool is_keysend = 25; */ + if (message.isKeysend !== false) + writer.tag(25, WireType.Varint).bool(message.isKeysend); + /* bytes payment_addr = 26; */ + if (message.paymentAddr.length) + writer.tag(26, WireType.LengthDelimited).bytes(message.paymentAddr); + /* bool is_amp = 27; */ + if (message.isAmp !== false) + writer.tag(27, WireType.Varint).bool(message.isAmp); + /* map amp_invoice_state = 28; */ + for (let k of Object.keys(message.ampInvoiceState)) { + writer.tag(28, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k); + writer.tag(2, WireType.LengthDelimited).fork(); + AMPInvoiceState.internalBinaryWrite(message.ampInvoiceState[k], writer, options); + writer.join().join(); + } + /* bool is_blinded = 29; */ + if (message.isBlinded !== false) + writer.tag(29, WireType.Varint).bool(message.isBlinded); + /* lnrpc.BlindedPathConfig blinded_path_config = 30; */ + if (message.blindedPathConfig) + BlindedPathConfig.internalBinaryWrite(message.blindedPathConfig, writer.tag(30, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.Invoice + */ +export const Invoice = new Invoice$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class BlindedPathConfig$Type extends MessageType { + constructor() { + super("lnrpc.BlindedPathConfig", [ + { no: 1, name: "min_num_real_hops", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ }, + { no: 2, name: "num_hops", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ }, + { no: 3, name: "max_num_paths", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ }, + { no: 4, name: "node_omission_list", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): BlindedPathConfig { + const message = { nodeOmissionList: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BlindedPathConfig): BlindedPathConfig { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* optional uint32 min_num_real_hops */ 1: + message.minNumRealHops = reader.uint32(); + break; + case /* optional uint32 num_hops */ 2: + message.numHops = reader.uint32(); + break; + case /* optional uint32 max_num_paths */ 3: + message.maxNumPaths = reader.uint32(); + break; + case /* repeated bytes node_omission_list */ 4: + message.nodeOmissionList.push(reader.bytes()); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: BlindedPathConfig, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* optional uint32 min_num_real_hops = 1; */ + if (message.minNumRealHops !== undefined) + writer.tag(1, WireType.Varint).uint32(message.minNumRealHops); + /* optional uint32 num_hops = 2; */ + if (message.numHops !== undefined) + writer.tag(2, WireType.Varint).uint32(message.numHops); + /* optional uint32 max_num_paths = 3; */ + if (message.maxNumPaths !== undefined) + writer.tag(3, WireType.Varint).uint32(message.maxNumPaths); + /* repeated bytes node_omission_list = 4; */ + for (let i = 0; i < message.nodeOmissionList.length; i++) + writer.tag(4, WireType.LengthDelimited).bytes(message.nodeOmissionList[i]); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.BlindedPathConfig + */ +export const BlindedPathConfig = new BlindedPathConfig$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class InvoiceHTLC$Type extends MessageType { + constructor() { + super("lnrpc.InvoiceHTLC", [ + { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 2, name: "htlc_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "amt_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "accept_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 5, name: "accept_time", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "resolve_time", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "expiry_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 8, name: "state", kind: "enum", T: () => ["lnrpc.InvoiceHTLCState", InvoiceHTLCState] }, + { no: 9, name: "custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } }, + { no: 10, name: "mpp_total_amt_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 11, name: "amp", kind: "message", T: () => AMP } + ]); + } + create(value?: PartialMessage): InvoiceHTLC { + const message = { chanId: "0", htlcIndex: 0n, amtMsat: 0n, acceptHeight: 0, acceptTime: 0n, resolveTime: 0n, expiryHeight: 0, state: 0, customRecords: {}, mppTotalAmtMsat: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: InvoiceHTLC): InvoiceHTLC { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 chan_id = 1 [jstype = JS_STRING];*/ 1: + message.chanId = reader.uint64().toString(); + break; + case /* uint64 htlc_index */ 2: + message.htlcIndex = reader.uint64().toBigInt(); + break; + case /* uint64 amt_msat */ 3: + message.amtMsat = reader.uint64().toBigInt(); + break; + case /* int32 accept_height */ 4: + message.acceptHeight = reader.int32(); + break; + case /* int64 accept_time */ 5: + message.acceptTime = reader.int64().toBigInt(); + break; + case /* int64 resolve_time */ 6: + message.resolveTime = reader.int64().toBigInt(); + break; + case /* int32 expiry_height */ 7: + message.expiryHeight = reader.int32(); + break; + case /* lnrpc.InvoiceHTLCState state */ 8: + message.state = reader.int32(); + break; + case /* map custom_records */ 9: + this.binaryReadMap9(message.customRecords, reader, options); + break; + case /* uint64 mpp_total_amt_msat */ 10: + message.mppTotalAmtMsat = reader.uint64().toBigInt(); + break; + case /* lnrpc.AMP amp */ 11: + message.amp = AMP.internalBinaryRead(reader, reader.uint32(), options, message.amp); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap9(map: InvoiceHTLC["customRecords"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof InvoiceHTLC["customRecords"] | undefined, val: InvoiceHTLC["customRecords"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.uint64().toString(); + break; + case 2: + val = reader.bytes(); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.InvoiceHTLC.custom_records"); + } + } + map[key ?? "0"] = val ?? new Uint8Array(0); + } + internalBinaryWrite(message: InvoiceHTLC, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 chan_id = 1 [jstype = JS_STRING]; */ + if (message.chanId !== "0") + writer.tag(1, WireType.Varint).uint64(message.chanId); + /* uint64 htlc_index = 2; */ + if (message.htlcIndex !== 0n) + writer.tag(2, WireType.Varint).uint64(message.htlcIndex); + /* uint64 amt_msat = 3; */ + if (message.amtMsat !== 0n) + writer.tag(3, WireType.Varint).uint64(message.amtMsat); + /* int32 accept_height = 4; */ + if (message.acceptHeight !== 0) + writer.tag(4, WireType.Varint).int32(message.acceptHeight); + /* int64 accept_time = 5; */ + if (message.acceptTime !== 0n) + writer.tag(5, WireType.Varint).int64(message.acceptTime); + /* int64 resolve_time = 6; */ + if (message.resolveTime !== 0n) + writer.tag(6, WireType.Varint).int64(message.resolveTime); + /* int32 expiry_height = 7; */ + if (message.expiryHeight !== 0) + writer.tag(7, WireType.Varint).int32(message.expiryHeight); + /* lnrpc.InvoiceHTLCState state = 8; */ + if (message.state !== 0) + writer.tag(8, WireType.Varint).int32(message.state); + /* map custom_records = 9; */ + for (let k of Object.keys(message.customRecords)) + writer.tag(9, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint64(k).tag(2, WireType.LengthDelimited).bytes(message.customRecords[k]).join(); + /* uint64 mpp_total_amt_msat = 10; */ + if (message.mppTotalAmtMsat !== 0n) + writer.tag(10, WireType.Varint).uint64(message.mppTotalAmtMsat); + /* lnrpc.AMP amp = 11; */ + if (message.amp) + AMP.internalBinaryWrite(message.amp, writer.tag(11, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.InvoiceHTLC + */ +export const InvoiceHTLC = new InvoiceHTLC$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class AMP$Type extends MessageType { + constructor() { + super("lnrpc.AMP", [ + { no: 1, name: "root_share", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "set_id", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "child_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 4, name: "hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 5, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): AMP { + const message = { rootShare: new Uint8Array(0), setId: new Uint8Array(0), childIndex: 0, hash: new Uint8Array(0), preimage: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AMP): AMP { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes root_share */ 1: + message.rootShare = reader.bytes(); + break; + case /* bytes set_id */ 2: + message.setId = reader.bytes(); + break; + case /* uint32 child_index */ 3: + message.childIndex = reader.uint32(); + break; + case /* bytes hash */ 4: + message.hash = reader.bytes(); + break; + case /* bytes preimage */ 5: + message.preimage = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: AMP, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes root_share = 1; */ + if (message.rootShare.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.rootShare); + /* bytes set_id = 2; */ + if (message.setId.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.setId); + /* uint32 child_index = 3; */ + if (message.childIndex !== 0) + writer.tag(3, WireType.Varint).uint32(message.childIndex); + /* bytes hash = 4; */ + if (message.hash.length) + writer.tag(4, WireType.LengthDelimited).bytes(message.hash); + /* bytes preimage = 5; */ + if (message.preimage.length) + writer.tag(5, WireType.LengthDelimited).bytes(message.preimage); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.AMP + */ +export const AMP = new AMP$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class AddInvoiceResponse$Type extends MessageType { + constructor() { + super("lnrpc.AddInvoiceResponse", [ + { no: 1, name: "r_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "payment_request", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 16, name: "add_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 17, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): AddInvoiceResponse { + const message = { rHash: new Uint8Array(0), paymentRequest: "", addIndex: 0n, paymentAddr: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AddInvoiceResponse): AddInvoiceResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes r_hash */ 1: + message.rHash = reader.bytes(); + break; + case /* string payment_request */ 2: + message.paymentRequest = reader.string(); + break; + case /* uint64 add_index */ 16: + message.addIndex = reader.uint64().toBigInt(); + break; + case /* bytes payment_addr */ 17: + message.paymentAddr = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: AddInvoiceResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes r_hash = 1; */ + if (message.rHash.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.rHash); + /* string payment_request = 2; */ + if (message.paymentRequest !== "") + writer.tag(2, WireType.LengthDelimited).string(message.paymentRequest); + /* uint64 add_index = 16; */ + if (message.addIndex !== 0n) + writer.tag(16, WireType.Varint).uint64(message.addIndex); + /* bytes payment_addr = 17; */ + if (message.paymentAddr.length) + writer.tag(17, WireType.LengthDelimited).bytes(message.paymentAddr); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.AddInvoiceResponse + */ +export const AddInvoiceResponse = new AddInvoiceResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PaymentHash$Type extends MessageType { + constructor() { + super("lnrpc.PaymentHash", [ + { no: 1, name: "r_hash_str", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "r_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): PaymentHash { + const message = { rHashStr: "", rHash: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PaymentHash): PaymentHash { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string r_hash_str = 1 [deprecated = true];*/ 1: + message.rHashStr = reader.string(); + break; + case /* bytes r_hash */ 2: + message.rHash = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PaymentHash, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string r_hash_str = 1 [deprecated = true]; */ + if (message.rHashStr !== "") + writer.tag(1, WireType.LengthDelimited).string(message.rHashStr); + /* bytes r_hash = 2; */ + if (message.rHash.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.rHash); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PaymentHash + */ +export const PaymentHash = new PaymentHash$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ListInvoiceRequest$Type extends MessageType { + constructor() { + super("lnrpc.ListInvoiceRequest", [ + { no: 1, name: "pending_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 4, name: "index_offset", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "num_max_invoices", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "reversed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 7, name: "creation_date_start", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 8, name: "creation_date_end", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): ListInvoiceRequest { + const message = { pendingOnly: false, indexOffset: 0n, numMaxInvoices: 0n, reversed: false, creationDateStart: 0n, creationDateEnd: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListInvoiceRequest): ListInvoiceRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool pending_only */ 1: + message.pendingOnly = reader.bool(); + break; + case /* uint64 index_offset */ 4: + message.indexOffset = reader.uint64().toBigInt(); + break; + case /* uint64 num_max_invoices */ 5: + message.numMaxInvoices = reader.uint64().toBigInt(); + break; + case /* bool reversed */ 6: + message.reversed = reader.bool(); + break; + case /* uint64 creation_date_start */ 7: + message.creationDateStart = reader.uint64().toBigInt(); + break; + case /* uint64 creation_date_end */ 8: + message.creationDateEnd = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ListInvoiceRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool pending_only = 1; */ + if (message.pendingOnly !== false) + writer.tag(1, WireType.Varint).bool(message.pendingOnly); + /* uint64 index_offset = 4; */ + if (message.indexOffset !== 0n) + writer.tag(4, WireType.Varint).uint64(message.indexOffset); + /* uint64 num_max_invoices = 5; */ + if (message.numMaxInvoices !== 0n) + writer.tag(5, WireType.Varint).uint64(message.numMaxInvoices); + /* bool reversed = 6; */ + if (message.reversed !== false) + writer.tag(6, WireType.Varint).bool(message.reversed); + /* uint64 creation_date_start = 7; */ + if (message.creationDateStart !== 0n) + writer.tag(7, WireType.Varint).uint64(message.creationDateStart); + /* uint64 creation_date_end = 8; */ + if (message.creationDateEnd !== 0n) + writer.tag(8, WireType.Varint).uint64(message.creationDateEnd); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ListInvoiceRequest + */ +export const ListInvoiceRequest = new ListInvoiceRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ListInvoiceResponse$Type extends MessageType { + constructor() { + super("lnrpc.ListInvoiceResponse", [ + { no: 1, name: "invoices", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Invoice }, + { no: 2, name: "last_index_offset", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "first_index_offset", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): ListInvoiceResponse { + const message = { invoices: [], lastIndexOffset: 0n, firstIndexOffset: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListInvoiceResponse): ListInvoiceResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.Invoice invoices */ 1: + message.invoices.push(Invoice.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* uint64 last_index_offset */ 2: + message.lastIndexOffset = reader.uint64().toBigInt(); + break; + case /* uint64 first_index_offset */ 3: + message.firstIndexOffset = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ListInvoiceResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.Invoice invoices = 1; */ + for (let i = 0; i < message.invoices.length; i++) + Invoice.internalBinaryWrite(message.invoices[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* uint64 last_index_offset = 2; */ + if (message.lastIndexOffset !== 0n) + writer.tag(2, WireType.Varint).uint64(message.lastIndexOffset); + /* uint64 first_index_offset = 3; */ + if (message.firstIndexOffset !== 0n) + writer.tag(3, WireType.Varint).uint64(message.firstIndexOffset); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ListInvoiceResponse + */ +export const ListInvoiceResponse = new ListInvoiceResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class InvoiceSubscription$Type extends MessageType { + constructor() { + super("lnrpc.InvoiceSubscription", [ + { no: 1, name: "add_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "settle_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): InvoiceSubscription { + const message = { addIndex: 0n, settleIndex: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: InvoiceSubscription): InvoiceSubscription { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 add_index */ 1: + message.addIndex = reader.uint64().toBigInt(); + break; + case /* uint64 settle_index */ 2: + message.settleIndex = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: InvoiceSubscription, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 add_index = 1; */ + if (message.addIndex !== 0n) + writer.tag(1, WireType.Varint).uint64(message.addIndex); + /* uint64 settle_index = 2; */ + if (message.settleIndex !== 0n) + writer.tag(2, WireType.Varint).uint64(message.settleIndex); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.InvoiceSubscription + */ +export const InvoiceSubscription = new InvoiceSubscription$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class Payment$Type extends MessageType { + constructor() { + super("lnrpc.Payment", [ + { no: 1, name: "payment_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "value", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "creation_date", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "fee", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "payment_preimage", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 7, name: "value_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 8, name: "value_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 9, name: "payment_request", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 10, name: "status", kind: "enum", T: () => ["lnrpc.Payment.PaymentStatus", Payment_PaymentStatus] }, + { no: 11, name: "fee_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 12, name: "fee_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 13, name: "creation_time_ns", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 14, name: "htlcs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => HTLCAttempt }, + { no: 15, name: "payment_index", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 16, name: "failure_reason", kind: "enum", T: () => ["lnrpc.PaymentFailureReason", PaymentFailureReason] } + ]); + } + create(value?: PartialMessage): Payment { + const message = { paymentHash: "", value: 0n, creationDate: 0n, fee: 0n, paymentPreimage: "", valueSat: 0n, valueMsat: 0n, paymentRequest: "", status: 0, feeSat: 0n, feeMsat: 0n, creationTimeNs: 0n, htlcs: [], paymentIndex: 0n, failureReason: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Payment): Payment { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string payment_hash */ 1: + message.paymentHash = reader.string(); + break; + case /* int64 value = 2 [deprecated = true];*/ 2: + message.value = reader.int64().toBigInt(); + break; + case /* int64 creation_date = 3 [deprecated = true];*/ 3: + message.creationDate = reader.int64().toBigInt(); + break; + case /* int64 fee = 5 [deprecated = true];*/ 5: + message.fee = reader.int64().toBigInt(); + break; + case /* string payment_preimage */ 6: + message.paymentPreimage = reader.string(); + break; + case /* int64 value_sat */ 7: + message.valueSat = reader.int64().toBigInt(); + break; + case /* int64 value_msat */ 8: + message.valueMsat = reader.int64().toBigInt(); + break; + case /* string payment_request */ 9: + message.paymentRequest = reader.string(); + break; + case /* lnrpc.Payment.PaymentStatus status */ 10: + message.status = reader.int32(); + break; + case /* int64 fee_sat */ 11: + message.feeSat = reader.int64().toBigInt(); + break; + case /* int64 fee_msat */ 12: + message.feeMsat = reader.int64().toBigInt(); + break; + case /* int64 creation_time_ns */ 13: + message.creationTimeNs = reader.int64().toBigInt(); + break; + case /* repeated lnrpc.HTLCAttempt htlcs */ 14: + message.htlcs.push(HTLCAttempt.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* uint64 payment_index */ 15: + message.paymentIndex = reader.uint64().toBigInt(); + break; + case /* lnrpc.PaymentFailureReason failure_reason */ 16: + message.failureReason = reader.int32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: Payment, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string payment_hash = 1; */ + if (message.paymentHash !== "") + writer.tag(1, WireType.LengthDelimited).string(message.paymentHash); + /* int64 value = 2 [deprecated = true]; */ + if (message.value !== 0n) + writer.tag(2, WireType.Varint).int64(message.value); + /* int64 creation_date = 3 [deprecated = true]; */ + if (message.creationDate !== 0n) + writer.tag(3, WireType.Varint).int64(message.creationDate); + /* int64 fee = 5 [deprecated = true]; */ + if (message.fee !== 0n) + writer.tag(5, WireType.Varint).int64(message.fee); + /* string payment_preimage = 6; */ + if (message.paymentPreimage !== "") + writer.tag(6, WireType.LengthDelimited).string(message.paymentPreimage); + /* int64 value_sat = 7; */ + if (message.valueSat !== 0n) + writer.tag(7, WireType.Varint).int64(message.valueSat); + /* int64 value_msat = 8; */ + if (message.valueMsat !== 0n) + writer.tag(8, WireType.Varint).int64(message.valueMsat); + /* string payment_request = 9; */ + if (message.paymentRequest !== "") + writer.tag(9, WireType.LengthDelimited).string(message.paymentRequest); + /* lnrpc.Payment.PaymentStatus status = 10; */ + if (message.status !== 0) + writer.tag(10, WireType.Varint).int32(message.status); + /* int64 fee_sat = 11; */ + if (message.feeSat !== 0n) + writer.tag(11, WireType.Varint).int64(message.feeSat); + /* int64 fee_msat = 12; */ + if (message.feeMsat !== 0n) + writer.tag(12, WireType.Varint).int64(message.feeMsat); + /* int64 creation_time_ns = 13; */ + if (message.creationTimeNs !== 0n) + writer.tag(13, WireType.Varint).int64(message.creationTimeNs); + /* repeated lnrpc.HTLCAttempt htlcs = 14; */ + for (let i = 0; i < message.htlcs.length; i++) + HTLCAttempt.internalBinaryWrite(message.htlcs[i], writer.tag(14, WireType.LengthDelimited).fork(), options).join(); + /* uint64 payment_index = 15; */ + if (message.paymentIndex !== 0n) + writer.tag(15, WireType.Varint).uint64(message.paymentIndex); + /* lnrpc.PaymentFailureReason failure_reason = 16; */ + if (message.failureReason !== 0) + writer.tag(16, WireType.Varint).int32(message.failureReason); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.Payment + */ +export const Payment = new Payment$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class HTLCAttempt$Type extends MessageType { + constructor() { + super("lnrpc.HTLCAttempt", [ + { no: 7, name: "attempt_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 1, name: "status", kind: "enum", T: () => ["lnrpc.HTLCAttempt.HTLCStatus", HTLCAttempt_HTLCStatus] }, + { no: 2, name: "route", kind: "message", T: () => Route }, + { no: 3, name: "attempt_time_ns", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "resolve_time_ns", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "failure", kind: "message", T: () => Failure }, + { no: 6, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): HTLCAttempt { + const message = { attemptId: 0n, status: 0, attemptTimeNs: 0n, resolveTimeNs: 0n, preimage: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: HTLCAttempt): HTLCAttempt { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 attempt_id */ 7: + message.attemptId = reader.uint64().toBigInt(); + break; + case /* lnrpc.HTLCAttempt.HTLCStatus status */ 1: + message.status = reader.int32(); + break; + case /* lnrpc.Route route */ 2: + message.route = Route.internalBinaryRead(reader, reader.uint32(), options, message.route); + break; + case /* int64 attempt_time_ns */ 3: + message.attemptTimeNs = reader.int64().toBigInt(); + break; + case /* int64 resolve_time_ns */ 4: + message.resolveTimeNs = reader.int64().toBigInt(); + break; + case /* lnrpc.Failure failure */ 5: + message.failure = Failure.internalBinaryRead(reader, reader.uint32(), options, message.failure); + break; + case /* bytes preimage */ 6: + message.preimage = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: HTLCAttempt, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 attempt_id = 7; */ + if (message.attemptId !== 0n) + writer.tag(7, WireType.Varint).uint64(message.attemptId); + /* lnrpc.HTLCAttempt.HTLCStatus status = 1; */ + if (message.status !== 0) + writer.tag(1, WireType.Varint).int32(message.status); + /* lnrpc.Route route = 2; */ + if (message.route) + Route.internalBinaryWrite(message.route, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + /* int64 attempt_time_ns = 3; */ + if (message.attemptTimeNs !== 0n) + writer.tag(3, WireType.Varint).int64(message.attemptTimeNs); + /* int64 resolve_time_ns = 4; */ + if (message.resolveTimeNs !== 0n) + writer.tag(4, WireType.Varint).int64(message.resolveTimeNs); + /* lnrpc.Failure failure = 5; */ + if (message.failure) + Failure.internalBinaryWrite(message.failure, writer.tag(5, WireType.LengthDelimited).fork(), options).join(); + /* bytes preimage = 6; */ + if (message.preimage.length) + writer.tag(6, WireType.LengthDelimited).bytes(message.preimage); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.HTLCAttempt + */ +export const HTLCAttempt = new HTLCAttempt$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ListPaymentsRequest$Type extends MessageType { + constructor() { + super("lnrpc.ListPaymentsRequest", [ + { no: 1, name: "include_incomplete", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 2, name: "index_offset", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "max_payments", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "reversed", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 5, name: "count_total_payments", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 6, name: "creation_date_start", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "creation_date_end", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): ListPaymentsRequest { + const message = { includeIncomplete: false, indexOffset: 0n, maxPayments: 0n, reversed: false, countTotalPayments: false, creationDateStart: 0n, creationDateEnd: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListPaymentsRequest): ListPaymentsRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool include_incomplete */ 1: + message.includeIncomplete = reader.bool(); + break; + case /* uint64 index_offset */ 2: + message.indexOffset = reader.uint64().toBigInt(); + break; + case /* uint64 max_payments */ 3: + message.maxPayments = reader.uint64().toBigInt(); + break; + case /* bool reversed */ 4: + message.reversed = reader.bool(); + break; + case /* bool count_total_payments */ 5: + message.countTotalPayments = reader.bool(); + break; + case /* uint64 creation_date_start */ 6: + message.creationDateStart = reader.uint64().toBigInt(); + break; + case /* uint64 creation_date_end */ 7: + message.creationDateEnd = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ListPaymentsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool include_incomplete = 1; */ + if (message.includeIncomplete !== false) + writer.tag(1, WireType.Varint).bool(message.includeIncomplete); + /* uint64 index_offset = 2; */ + if (message.indexOffset !== 0n) + writer.tag(2, WireType.Varint).uint64(message.indexOffset); + /* uint64 max_payments = 3; */ + if (message.maxPayments !== 0n) + writer.tag(3, WireType.Varint).uint64(message.maxPayments); + /* bool reversed = 4; */ + if (message.reversed !== false) + writer.tag(4, WireType.Varint).bool(message.reversed); + /* bool count_total_payments = 5; */ + if (message.countTotalPayments !== false) + writer.tag(5, WireType.Varint).bool(message.countTotalPayments); + /* uint64 creation_date_start = 6; */ + if (message.creationDateStart !== 0n) + writer.tag(6, WireType.Varint).uint64(message.creationDateStart); + /* uint64 creation_date_end = 7; */ + if (message.creationDateEnd !== 0n) + writer.tag(7, WireType.Varint).uint64(message.creationDateEnd); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ListPaymentsRequest + */ +export const ListPaymentsRequest = new ListPaymentsRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ListPaymentsResponse$Type extends MessageType { + constructor() { + super("lnrpc.ListPaymentsResponse", [ + { no: 1, name: "payments", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Payment }, + { no: 2, name: "first_index_offset", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "last_index_offset", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "total_num_payments", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): ListPaymentsResponse { + const message = { payments: [], firstIndexOffset: 0n, lastIndexOffset: 0n, totalNumPayments: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListPaymentsResponse): ListPaymentsResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.Payment payments */ 1: + message.payments.push(Payment.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* uint64 first_index_offset */ 2: + message.firstIndexOffset = reader.uint64().toBigInt(); + break; + case /* uint64 last_index_offset */ 3: + message.lastIndexOffset = reader.uint64().toBigInt(); + break; + case /* uint64 total_num_payments */ 4: + message.totalNumPayments = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ListPaymentsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.Payment payments = 1; */ + for (let i = 0; i < message.payments.length; i++) + Payment.internalBinaryWrite(message.payments[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* uint64 first_index_offset = 2; */ + if (message.firstIndexOffset !== 0n) + writer.tag(2, WireType.Varint).uint64(message.firstIndexOffset); + /* uint64 last_index_offset = 3; */ + if (message.lastIndexOffset !== 0n) + writer.tag(3, WireType.Varint).uint64(message.lastIndexOffset); + /* uint64 total_num_payments = 4; */ + if (message.totalNumPayments !== 0n) + writer.tag(4, WireType.Varint).uint64(message.totalNumPayments); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ListPaymentsResponse + */ +export const ListPaymentsResponse = new ListPaymentsResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class DeletePaymentRequest$Type extends MessageType { + constructor() { + super("lnrpc.DeletePaymentRequest", [ + { no: 1, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "failed_htlcs_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): DeletePaymentRequest { + const message = { paymentHash: new Uint8Array(0), failedHtlcsOnly: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeletePaymentRequest): DeletePaymentRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes payment_hash */ 1: + message.paymentHash = reader.bytes(); + break; + case /* bool failed_htlcs_only */ 2: + message.failedHtlcsOnly = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: DeletePaymentRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes payment_hash = 1; */ + if (message.paymentHash.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.paymentHash); + /* bool failed_htlcs_only = 2; */ + if (message.failedHtlcsOnly !== false) + writer.tag(2, WireType.Varint).bool(message.failedHtlcsOnly); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.DeletePaymentRequest + */ +export const DeletePaymentRequest = new DeletePaymentRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class DeleteAllPaymentsRequest$Type extends MessageType { + constructor() { + super("lnrpc.DeleteAllPaymentsRequest", [ + { no: 1, name: "failed_payments_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 2, name: "failed_htlcs_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 3, name: "all_payments", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): DeleteAllPaymentsRequest { + const message = { failedPaymentsOnly: false, failedHtlcsOnly: false, allPayments: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeleteAllPaymentsRequest): DeleteAllPaymentsRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool failed_payments_only */ 1: + message.failedPaymentsOnly = reader.bool(); + break; + case /* bool failed_htlcs_only */ 2: + message.failedHtlcsOnly = reader.bool(); + break; + case /* bool all_payments */ 3: + message.allPayments = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: DeleteAllPaymentsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool failed_payments_only = 1; */ + if (message.failedPaymentsOnly !== false) + writer.tag(1, WireType.Varint).bool(message.failedPaymentsOnly); + /* bool failed_htlcs_only = 2; */ + if (message.failedHtlcsOnly !== false) + writer.tag(2, WireType.Varint).bool(message.failedHtlcsOnly); + /* bool all_payments = 3; */ + if (message.allPayments !== false) + writer.tag(3, WireType.Varint).bool(message.allPayments); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.DeleteAllPaymentsRequest + */ +export const DeleteAllPaymentsRequest = new DeleteAllPaymentsRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class DeletePaymentResponse$Type extends MessageType { + constructor() { + super("lnrpc.DeletePaymentResponse", []); + } + create(value?: PartialMessage): DeletePaymentResponse { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeletePaymentResponse): DeletePaymentResponse { + return target ?? this.create(); + } + internalBinaryWrite(message: DeletePaymentResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.DeletePaymentResponse + */ +export const DeletePaymentResponse = new DeletePaymentResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class DeleteAllPaymentsResponse$Type extends MessageType { + constructor() { + super("lnrpc.DeleteAllPaymentsResponse", []); + } + create(value?: PartialMessage): DeleteAllPaymentsResponse { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeleteAllPaymentsResponse): DeleteAllPaymentsResponse { + return target ?? this.create(); + } + internalBinaryWrite(message: DeleteAllPaymentsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.DeleteAllPaymentsResponse + */ +export const DeleteAllPaymentsResponse = new DeleteAllPaymentsResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class AbandonChannelRequest$Type extends MessageType { + constructor() { + super("lnrpc.AbandonChannelRequest", [ + { no: 1, name: "channel_point", kind: "message", T: () => ChannelPoint }, + { no: 2, name: "pending_funding_shim_only", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 3, name: "i_know_what_i_am_doing", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): AbandonChannelRequest { + const message = { pendingFundingShimOnly: false, iKnowWhatIAmDoing: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AbandonChannelRequest): AbandonChannelRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.ChannelPoint channel_point */ 1: + message.channelPoint = ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.channelPoint); + break; + case /* bool pending_funding_shim_only */ 2: + message.pendingFundingShimOnly = reader.bool(); + break; + case /* bool i_know_what_i_am_doing */ 3: + message.iKnowWhatIAmDoing = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: AbandonChannelRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.ChannelPoint channel_point = 1; */ + if (message.channelPoint) + ChannelPoint.internalBinaryWrite(message.channelPoint, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* bool pending_funding_shim_only = 2; */ + if (message.pendingFundingShimOnly !== false) + writer.tag(2, WireType.Varint).bool(message.pendingFundingShimOnly); + /* bool i_know_what_i_am_doing = 3; */ + if (message.iKnowWhatIAmDoing !== false) + writer.tag(3, WireType.Varint).bool(message.iKnowWhatIAmDoing); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.AbandonChannelRequest + */ +export const AbandonChannelRequest = new AbandonChannelRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class AbandonChannelResponse$Type extends MessageType { + constructor() { + super("lnrpc.AbandonChannelResponse", []); + } + create(value?: PartialMessage): AbandonChannelResponse { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AbandonChannelResponse): AbandonChannelResponse { + return target ?? this.create(); + } + internalBinaryWrite(message: AbandonChannelResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.AbandonChannelResponse + */ +export const AbandonChannelResponse = new AbandonChannelResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class DebugLevelRequest$Type extends MessageType { + constructor() { + super("lnrpc.DebugLevelRequest", [ + { no: 1, name: "show", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 2, name: "level_spec", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): DebugLevelRequest { + const message = { show: false, levelSpec: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DebugLevelRequest): DebugLevelRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool show */ 1: + message.show = reader.bool(); + break; + case /* string level_spec */ 2: + message.levelSpec = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: DebugLevelRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool show = 1; */ + if (message.show !== false) + writer.tag(1, WireType.Varint).bool(message.show); + /* string level_spec = 2; */ + if (message.levelSpec !== "") + writer.tag(2, WireType.LengthDelimited).string(message.levelSpec); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.DebugLevelRequest + */ +export const DebugLevelRequest = new DebugLevelRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class DebugLevelResponse$Type extends MessageType { + constructor() { + super("lnrpc.DebugLevelResponse", [ + { no: 1, name: "sub_systems", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): DebugLevelResponse { + const message = { subSystems: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DebugLevelResponse): DebugLevelResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string sub_systems */ 1: + message.subSystems = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: DebugLevelResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string sub_systems = 1; */ + if (message.subSystems !== "") + writer.tag(1, WireType.LengthDelimited).string(message.subSystems); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.DebugLevelResponse + */ +export const DebugLevelResponse = new DebugLevelResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PayReqString$Type extends MessageType { + constructor() { + super("lnrpc.PayReqString", [ + { no: 1, name: "pay_req", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): PayReqString { + const message = { payReq: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PayReqString): PayReqString { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string pay_req */ 1: + message.payReq = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PayReqString, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string pay_req = 1; */ + if (message.payReq !== "") + writer.tag(1, WireType.LengthDelimited).string(message.payReq); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PayReqString + */ +export const PayReqString = new PayReqString$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PayReq$Type extends MessageType { + constructor() { + super("lnrpc.PayReq", [ + { no: 1, name: "destination", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "payment_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 3, name: "num_satoshis", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "timestamp", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "expiry", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "description", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 7, name: "description_hash", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 8, name: "fallback_addr", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 9, name: "cltv_expiry", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 10, name: "route_hints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => RouteHint }, + { no: 11, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 12, name: "num_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 13, name: "features", kind: "map", K: 13 /*ScalarType.UINT32*/, V: { kind: "message", T: () => Feature } }, + { no: 14, name: "blinded_paths", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => BlindedPaymentPath } + ]); + } + create(value?: PartialMessage): PayReq { + const message = { destination: "", paymentHash: "", numSatoshis: 0n, timestamp: 0n, expiry: 0n, description: "", descriptionHash: "", fallbackAddr: "", cltvExpiry: 0n, routeHints: [], paymentAddr: new Uint8Array(0), numMsat: 0n, features: {}, blindedPaths: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PayReq): PayReq { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string destination */ 1: + message.destination = reader.string(); + break; + case /* string payment_hash */ 2: + message.paymentHash = reader.string(); + break; + case /* int64 num_satoshis */ 3: + message.numSatoshis = reader.int64().toBigInt(); + break; + case /* int64 timestamp */ 4: + message.timestamp = reader.int64().toBigInt(); + break; + case /* int64 expiry */ 5: + message.expiry = reader.int64().toBigInt(); + break; + case /* string description */ 6: + message.description = reader.string(); + break; + case /* string description_hash */ 7: + message.descriptionHash = reader.string(); + break; + case /* string fallback_addr */ 8: + message.fallbackAddr = reader.string(); + break; + case /* int64 cltv_expiry */ 9: + message.cltvExpiry = reader.int64().toBigInt(); + break; + case /* repeated lnrpc.RouteHint route_hints */ 10: + message.routeHints.push(RouteHint.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* bytes payment_addr */ 11: + message.paymentAddr = reader.bytes(); + break; + case /* int64 num_msat */ 12: + message.numMsat = reader.int64().toBigInt(); + break; + case /* map features */ 13: + this.binaryReadMap13(message.features, reader, options); + break; + case /* repeated lnrpc.BlindedPaymentPath blinded_paths */ 14: + message.blindedPaths.push(BlindedPaymentPath.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap13(map: PayReq["features"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof PayReq["features"] | undefined, val: PayReq["features"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.uint32(); + break; + case 2: + val = Feature.internalBinaryRead(reader, reader.uint32(), options); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.PayReq.features"); + } + } + map[key ?? 0] = val ?? Feature.create(); + } + internalBinaryWrite(message: PayReq, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string destination = 1; */ + if (message.destination !== "") + writer.tag(1, WireType.LengthDelimited).string(message.destination); + /* string payment_hash = 2; */ + if (message.paymentHash !== "") + writer.tag(2, WireType.LengthDelimited).string(message.paymentHash); + /* int64 num_satoshis = 3; */ + if (message.numSatoshis !== 0n) + writer.tag(3, WireType.Varint).int64(message.numSatoshis); + /* int64 timestamp = 4; */ + if (message.timestamp !== 0n) + writer.tag(4, WireType.Varint).int64(message.timestamp); + /* int64 expiry = 5; */ + if (message.expiry !== 0n) + writer.tag(5, WireType.Varint).int64(message.expiry); + /* string description = 6; */ + if (message.description !== "") + writer.tag(6, WireType.LengthDelimited).string(message.description); + /* string description_hash = 7; */ + if (message.descriptionHash !== "") + writer.tag(7, WireType.LengthDelimited).string(message.descriptionHash); + /* string fallback_addr = 8; */ + if (message.fallbackAddr !== "") + writer.tag(8, WireType.LengthDelimited).string(message.fallbackAddr); + /* int64 cltv_expiry = 9; */ + if (message.cltvExpiry !== 0n) + writer.tag(9, WireType.Varint).int64(message.cltvExpiry); + /* repeated lnrpc.RouteHint route_hints = 10; */ + for (let i = 0; i < message.routeHints.length; i++) + RouteHint.internalBinaryWrite(message.routeHints[i], writer.tag(10, WireType.LengthDelimited).fork(), options).join(); + /* bytes payment_addr = 11; */ + if (message.paymentAddr.length) + writer.tag(11, WireType.LengthDelimited).bytes(message.paymentAddr); + /* int64 num_msat = 12; */ + if (message.numMsat !== 0n) + writer.tag(12, WireType.Varint).int64(message.numMsat); + /* map features = 13; */ + for (let k of Object.keys(message.features)) { + writer.tag(13, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint32(parseInt(k)); + writer.tag(2, WireType.LengthDelimited).fork(); + Feature.internalBinaryWrite(message.features[k as any], writer, options); + writer.join().join(); + } + /* repeated lnrpc.BlindedPaymentPath blinded_paths = 14; */ + for (let i = 0; i < message.blindedPaths.length; i++) + BlindedPaymentPath.internalBinaryWrite(message.blindedPaths[i], writer.tag(14, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PayReq + */ +export const PayReq = new PayReq$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class Feature$Type extends MessageType { + constructor() { + super("lnrpc.Feature", [ + { no: 2, name: "name", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 3, name: "is_required", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 4, name: "is_known", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): Feature { + const message = { name: "", isRequired: false, isKnown: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Feature): Feature { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string name */ 2: + message.name = reader.string(); + break; + case /* bool is_required */ 3: + message.isRequired = reader.bool(); + break; + case /* bool is_known */ 4: + message.isKnown = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: Feature, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string name = 2; */ + if (message.name !== "") + writer.tag(2, WireType.LengthDelimited).string(message.name); + /* bool is_required = 3; */ + if (message.isRequired !== false) + writer.tag(3, WireType.Varint).bool(message.isRequired); + /* bool is_known = 4; */ + if (message.isKnown !== false) + writer.tag(4, WireType.Varint).bool(message.isKnown); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.Feature + */ +export const Feature = new Feature$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class FeeReportRequest$Type extends MessageType { + constructor() { + super("lnrpc.FeeReportRequest", []); + } + create(value?: PartialMessage): FeeReportRequest { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FeeReportRequest): FeeReportRequest { + return target ?? this.create(); + } + internalBinaryWrite(message: FeeReportRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.FeeReportRequest + */ +export const FeeReportRequest = new FeeReportRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelFeeReport$Type extends MessageType { + constructor() { + super("lnrpc.ChannelFeeReport", [ + { no: 5, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 1, name: "channel_point", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "base_fee_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "fee_per_mil", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "fee_rate", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ }, + { no: 6, name: "inbound_base_fee_msat", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 7, name: "inbound_fee_per_mil", kind: "scalar", T: 5 /*ScalarType.INT32*/ } + ]); + } + create(value?: PartialMessage): ChannelFeeReport { + const message = { chanId: "0", channelPoint: "", baseFeeMsat: 0n, feePerMil: 0n, feeRate: 0, inboundBaseFeeMsat: 0, inboundFeePerMil: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelFeeReport): ChannelFeeReport { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 chan_id = 5 [jstype = JS_STRING];*/ 5: + message.chanId = reader.uint64().toString(); + break; + case /* string channel_point */ 1: + message.channelPoint = reader.string(); + break; + case /* int64 base_fee_msat */ 2: + message.baseFeeMsat = reader.int64().toBigInt(); + break; + case /* int64 fee_per_mil */ 3: + message.feePerMil = reader.int64().toBigInt(); + break; + case /* double fee_rate */ 4: + message.feeRate = reader.double(); + break; + case /* int32 inbound_base_fee_msat */ 6: + message.inboundBaseFeeMsat = reader.int32(); + break; + case /* int32 inbound_fee_per_mil */ 7: + message.inboundFeePerMil = reader.int32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChannelFeeReport, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 chan_id = 5 [jstype = JS_STRING]; */ + if (message.chanId !== "0") + writer.tag(5, WireType.Varint).uint64(message.chanId); + /* string channel_point = 1; */ + if (message.channelPoint !== "") + writer.tag(1, WireType.LengthDelimited).string(message.channelPoint); + /* int64 base_fee_msat = 2; */ + if (message.baseFeeMsat !== 0n) + writer.tag(2, WireType.Varint).int64(message.baseFeeMsat); + /* int64 fee_per_mil = 3; */ + if (message.feePerMil !== 0n) + writer.tag(3, WireType.Varint).int64(message.feePerMil); + /* double fee_rate = 4; */ + if (message.feeRate !== 0) + writer.tag(4, WireType.Bit64).double(message.feeRate); + /* int32 inbound_base_fee_msat = 6; */ + if (message.inboundBaseFeeMsat !== 0) + writer.tag(6, WireType.Varint).int32(message.inboundBaseFeeMsat); + /* int32 inbound_fee_per_mil = 7; */ + if (message.inboundFeePerMil !== 0) + writer.tag(7, WireType.Varint).int32(message.inboundFeePerMil); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelFeeReport + */ +export const ChannelFeeReport = new ChannelFeeReport$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class FeeReportResponse$Type extends MessageType { + constructor() { + super("lnrpc.FeeReportResponse", [ + { no: 1, name: "channel_fees", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => ChannelFeeReport }, + { no: 2, name: "day_fee_sum", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "week_fee_sum", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "month_fee_sum", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): FeeReportResponse { + const message = { channelFees: [], dayFeeSum: 0n, weekFeeSum: 0n, monthFeeSum: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FeeReportResponse): FeeReportResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.ChannelFeeReport channel_fees */ 1: + message.channelFees.push(ChannelFeeReport.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* uint64 day_fee_sum */ 2: + message.dayFeeSum = reader.uint64().toBigInt(); + break; + case /* uint64 week_fee_sum */ 3: + message.weekFeeSum = reader.uint64().toBigInt(); + break; + case /* uint64 month_fee_sum */ 4: + message.monthFeeSum = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: FeeReportResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.ChannelFeeReport channel_fees = 1; */ + for (let i = 0; i < message.channelFees.length; i++) + ChannelFeeReport.internalBinaryWrite(message.channelFees[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* uint64 day_fee_sum = 2; */ + if (message.dayFeeSum !== 0n) + writer.tag(2, WireType.Varint).uint64(message.dayFeeSum); + /* uint64 week_fee_sum = 3; */ + if (message.weekFeeSum !== 0n) + writer.tag(3, WireType.Varint).uint64(message.weekFeeSum); + /* uint64 month_fee_sum = 4; */ + if (message.monthFeeSum !== 0n) + writer.tag(4, WireType.Varint).uint64(message.monthFeeSum); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.FeeReportResponse + */ +export const FeeReportResponse = new FeeReportResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class InboundFee$Type extends MessageType { + constructor() { + super("lnrpc.InboundFee", [ + { no: 1, name: "base_fee_msat", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 2, name: "fee_rate_ppm", kind: "scalar", T: 5 /*ScalarType.INT32*/ } + ]); + } + create(value?: PartialMessage): InboundFee { + const message = { baseFeeMsat: 0, feeRatePpm: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: InboundFee): InboundFee { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* int32 base_fee_msat */ 1: + message.baseFeeMsat = reader.int32(); + break; + case /* int32 fee_rate_ppm */ 2: + message.feeRatePpm = reader.int32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: InboundFee, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* int32 base_fee_msat = 1; */ + if (message.baseFeeMsat !== 0) + writer.tag(1, WireType.Varint).int32(message.baseFeeMsat); + /* int32 fee_rate_ppm = 2; */ + if (message.feeRatePpm !== 0) + writer.tag(2, WireType.Varint).int32(message.feeRatePpm); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.InboundFee + */ +export const InboundFee = new InboundFee$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PolicyUpdateRequest$Type extends MessageType { + constructor() { + super("lnrpc.PolicyUpdateRequest", [ + { no: 1, name: "global", kind: "scalar", oneof: "scope", T: 8 /*ScalarType.BOOL*/ }, + { no: 2, name: "chan_point", kind: "message", oneof: "scope", T: () => ChannelPoint }, + { no: 3, name: "base_fee_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "fee_rate", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ }, + { no: 9, name: "fee_rate_ppm", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 5, name: "time_lock_delta", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 6, name: "max_htlc_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "min_htlc_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 8, name: "min_htlc_msat_specified", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 10, name: "inbound_fee", kind: "message", T: () => InboundFee } + ]); + } + create(value?: PartialMessage): PolicyUpdateRequest { + const message = { scope: { oneofKind: undefined }, baseFeeMsat: 0n, feeRate: 0, feeRatePpm: 0, timeLockDelta: 0, maxHtlcMsat: 0n, minHtlcMsat: 0n, minHtlcMsatSpecified: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PolicyUpdateRequest): PolicyUpdateRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool global */ 1: + message.scope = { + oneofKind: "global", + global: reader.bool() + }; + break; + case /* lnrpc.ChannelPoint chan_point */ 2: + message.scope = { + oneofKind: "chanPoint", + chanPoint: ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, (message.scope as any).chanPoint) + }; + break; + case /* int64 base_fee_msat */ 3: + message.baseFeeMsat = reader.int64().toBigInt(); + break; + case /* double fee_rate */ 4: + message.feeRate = reader.double(); + break; + case /* uint32 fee_rate_ppm */ 9: + message.feeRatePpm = reader.uint32(); + break; + case /* uint32 time_lock_delta */ 5: + message.timeLockDelta = reader.uint32(); + break; + case /* uint64 max_htlc_msat */ 6: + message.maxHtlcMsat = reader.uint64().toBigInt(); + break; + case /* uint64 min_htlc_msat */ 7: + message.minHtlcMsat = reader.uint64().toBigInt(); + break; + case /* bool min_htlc_msat_specified */ 8: + message.minHtlcMsatSpecified = reader.bool(); + break; + case /* lnrpc.InboundFee inbound_fee */ 10: + message.inboundFee = InboundFee.internalBinaryRead(reader, reader.uint32(), options, message.inboundFee); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PolicyUpdateRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool global = 1; */ + if (message.scope.oneofKind === "global") + writer.tag(1, WireType.Varint).bool(message.scope.global); + /* lnrpc.ChannelPoint chan_point = 2; */ + if (message.scope.oneofKind === "chanPoint") + ChannelPoint.internalBinaryWrite(message.scope.chanPoint, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + /* int64 base_fee_msat = 3; */ + if (message.baseFeeMsat !== 0n) + writer.tag(3, WireType.Varint).int64(message.baseFeeMsat); + /* double fee_rate = 4; */ + if (message.feeRate !== 0) + writer.tag(4, WireType.Bit64).double(message.feeRate); + /* uint32 fee_rate_ppm = 9; */ + if (message.feeRatePpm !== 0) + writer.tag(9, WireType.Varint).uint32(message.feeRatePpm); + /* uint32 time_lock_delta = 5; */ + if (message.timeLockDelta !== 0) + writer.tag(5, WireType.Varint).uint32(message.timeLockDelta); + /* uint64 max_htlc_msat = 6; */ + if (message.maxHtlcMsat !== 0n) + writer.tag(6, WireType.Varint).uint64(message.maxHtlcMsat); + /* uint64 min_htlc_msat = 7; */ + if (message.minHtlcMsat !== 0n) + writer.tag(7, WireType.Varint).uint64(message.minHtlcMsat); + /* bool min_htlc_msat_specified = 8; */ + if (message.minHtlcMsatSpecified !== false) + writer.tag(8, WireType.Varint).bool(message.minHtlcMsatSpecified); + /* lnrpc.InboundFee inbound_fee = 10; */ + if (message.inboundFee) + InboundFee.internalBinaryWrite(message.inboundFee, writer.tag(10, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PolicyUpdateRequest + */ +export const PolicyUpdateRequest = new PolicyUpdateRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class FailedUpdate$Type extends MessageType { + constructor() { + super("lnrpc.FailedUpdate", [ + { no: 1, name: "outpoint", kind: "message", T: () => OutPoint }, + { no: 2, name: "reason", kind: "enum", T: () => ["lnrpc.UpdateFailure", UpdateFailure, "UPDATE_FAILURE_"] }, + { no: 3, name: "update_error", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): FailedUpdate { + const message = { reason: 0, updateError: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FailedUpdate): FailedUpdate { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.OutPoint outpoint */ 1: + message.outpoint = OutPoint.internalBinaryRead(reader, reader.uint32(), options, message.outpoint); + break; + case /* lnrpc.UpdateFailure reason */ 2: + message.reason = reader.int32(); + break; + case /* string update_error */ 3: + message.updateError = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: FailedUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.OutPoint outpoint = 1; */ + if (message.outpoint) + OutPoint.internalBinaryWrite(message.outpoint, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.UpdateFailure reason = 2; */ + if (message.reason !== 0) + writer.tag(2, WireType.Varint).int32(message.reason); + /* string update_error = 3; */ + if (message.updateError !== "") + writer.tag(3, WireType.LengthDelimited).string(message.updateError); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.FailedUpdate + */ +export const FailedUpdate = new FailedUpdate$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PolicyUpdateResponse$Type extends MessageType { + constructor() { + super("lnrpc.PolicyUpdateResponse", [ + { no: 1, name: "failed_updates", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => FailedUpdate } + ]); + } + create(value?: PartialMessage): PolicyUpdateResponse { + const message = { failedUpdates: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PolicyUpdateResponse): PolicyUpdateResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.FailedUpdate failed_updates */ 1: + message.failedUpdates.push(FailedUpdate.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PolicyUpdateResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.FailedUpdate failed_updates = 1; */ + for (let i = 0; i < message.failedUpdates.length; i++) + FailedUpdate.internalBinaryWrite(message.failedUpdates[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.PolicyUpdateResponse + */ +export const PolicyUpdateResponse = new PolicyUpdateResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ForwardingHistoryRequest$Type extends MessageType { + constructor() { + super("lnrpc.ForwardingHistoryRequest", [ + { no: 1, name: "start_time", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "end_time", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "index_offset", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 4, name: "num_max_events", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 5, name: "peer_alias_lookup", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): ForwardingHistoryRequest { + const message = { startTime: 0n, endTime: 0n, indexOffset: 0, numMaxEvents: 0, peerAliasLookup: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ForwardingHistoryRequest): ForwardingHistoryRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 start_time */ 1: + message.startTime = reader.uint64().toBigInt(); + break; + case /* uint64 end_time */ 2: + message.endTime = reader.uint64().toBigInt(); + break; + case /* uint32 index_offset */ 3: + message.indexOffset = reader.uint32(); + break; + case /* uint32 num_max_events */ 4: + message.numMaxEvents = reader.uint32(); + break; + case /* bool peer_alias_lookup */ 5: + message.peerAliasLookup = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ForwardingHistoryRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 start_time = 1; */ + if (message.startTime !== 0n) + writer.tag(1, WireType.Varint).uint64(message.startTime); + /* uint64 end_time = 2; */ + if (message.endTime !== 0n) + writer.tag(2, WireType.Varint).uint64(message.endTime); + /* uint32 index_offset = 3; */ + if (message.indexOffset !== 0) + writer.tag(3, WireType.Varint).uint32(message.indexOffset); + /* uint32 num_max_events = 4; */ + if (message.numMaxEvents !== 0) + writer.tag(4, WireType.Varint).uint32(message.numMaxEvents); + /* bool peer_alias_lookup = 5; */ + if (message.peerAliasLookup !== false) + writer.tag(5, WireType.Varint).bool(message.peerAliasLookup); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ForwardingHistoryRequest + */ +export const ForwardingHistoryRequest = new ForwardingHistoryRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ForwardingEvent$Type extends MessageType { + constructor() { + super("lnrpc.ForwardingEvent", [ + { no: 1, name: "timestamp", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "chan_id_in", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 4, name: "chan_id_out", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 5, name: "amt_in", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "amt_out", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "fee", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 8, name: "fee_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 9, name: "amt_in_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 10, name: "amt_out_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 11, name: "timestamp_ns", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 12, name: "peer_alias_in", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 13, name: "peer_alias_out", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): ForwardingEvent { + const message = { timestamp: 0n, chanIdIn: "0", chanIdOut: "0", amtIn: 0n, amtOut: 0n, fee: 0n, feeMsat: 0n, amtInMsat: 0n, amtOutMsat: 0n, timestampNs: 0n, peerAliasIn: "", peerAliasOut: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ForwardingEvent): ForwardingEvent { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 timestamp = 1 [deprecated = true];*/ 1: + message.timestamp = reader.uint64().toBigInt(); + break; + case /* uint64 chan_id_in = 2 [jstype = JS_STRING];*/ 2: + message.chanIdIn = reader.uint64().toString(); + break; + case /* uint64 chan_id_out = 4 [jstype = JS_STRING];*/ 4: + message.chanIdOut = reader.uint64().toString(); + break; + case /* uint64 amt_in */ 5: + message.amtIn = reader.uint64().toBigInt(); + break; + case /* uint64 amt_out */ 6: + message.amtOut = reader.uint64().toBigInt(); + break; + case /* uint64 fee */ 7: + message.fee = reader.uint64().toBigInt(); + break; + case /* uint64 fee_msat */ 8: + message.feeMsat = reader.uint64().toBigInt(); + break; + case /* uint64 amt_in_msat */ 9: + message.amtInMsat = reader.uint64().toBigInt(); + break; + case /* uint64 amt_out_msat */ 10: + message.amtOutMsat = reader.uint64().toBigInt(); + break; + case /* uint64 timestamp_ns */ 11: + message.timestampNs = reader.uint64().toBigInt(); + break; + case /* string peer_alias_in */ 12: + message.peerAliasIn = reader.string(); + break; + case /* string peer_alias_out */ 13: + message.peerAliasOut = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ForwardingEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 timestamp = 1 [deprecated = true]; */ + if (message.timestamp !== 0n) + writer.tag(1, WireType.Varint).uint64(message.timestamp); + /* uint64 chan_id_in = 2 [jstype = JS_STRING]; */ + if (message.chanIdIn !== "0") + writer.tag(2, WireType.Varint).uint64(message.chanIdIn); + /* uint64 chan_id_out = 4 [jstype = JS_STRING]; */ + if (message.chanIdOut !== "0") + writer.tag(4, WireType.Varint).uint64(message.chanIdOut); + /* uint64 amt_in = 5; */ + if (message.amtIn !== 0n) + writer.tag(5, WireType.Varint).uint64(message.amtIn); + /* uint64 amt_out = 6; */ + if (message.amtOut !== 0n) + writer.tag(6, WireType.Varint).uint64(message.amtOut); + /* uint64 fee = 7; */ + if (message.fee !== 0n) + writer.tag(7, WireType.Varint).uint64(message.fee); + /* uint64 fee_msat = 8; */ + if (message.feeMsat !== 0n) + writer.tag(8, WireType.Varint).uint64(message.feeMsat); + /* uint64 amt_in_msat = 9; */ + if (message.amtInMsat !== 0n) + writer.tag(9, WireType.Varint).uint64(message.amtInMsat); + /* uint64 amt_out_msat = 10; */ + if (message.amtOutMsat !== 0n) + writer.tag(10, WireType.Varint).uint64(message.amtOutMsat); + /* uint64 timestamp_ns = 11; */ + if (message.timestampNs !== 0n) + writer.tag(11, WireType.Varint).uint64(message.timestampNs); + /* string peer_alias_in = 12; */ + if (message.peerAliasIn !== "") + writer.tag(12, WireType.LengthDelimited).string(message.peerAliasIn); + /* string peer_alias_out = 13; */ + if (message.peerAliasOut !== "") + writer.tag(13, WireType.LengthDelimited).string(message.peerAliasOut); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ForwardingEvent + */ +export const ForwardingEvent = new ForwardingEvent$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ForwardingHistoryResponse$Type extends MessageType { + constructor() { + super("lnrpc.ForwardingHistoryResponse", [ + { no: 1, name: "forwarding_events", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => ForwardingEvent }, + { no: 2, name: "last_offset_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } + ]); + } + create(value?: PartialMessage): ForwardingHistoryResponse { + const message = { forwardingEvents: [], lastOffsetIndex: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ForwardingHistoryResponse): ForwardingHistoryResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.ForwardingEvent forwarding_events */ 1: + message.forwardingEvents.push(ForwardingEvent.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* uint32 last_offset_index */ 2: + message.lastOffsetIndex = reader.uint32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ForwardingHistoryResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.ForwardingEvent forwarding_events = 1; */ + for (let i = 0; i < message.forwardingEvents.length; i++) + ForwardingEvent.internalBinaryWrite(message.forwardingEvents[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* uint32 last_offset_index = 2; */ + if (message.lastOffsetIndex !== 0) + writer.tag(2, WireType.Varint).uint32(message.lastOffsetIndex); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ForwardingHistoryResponse + */ +export const ForwardingHistoryResponse = new ForwardingHistoryResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ExportChannelBackupRequest$Type extends MessageType { + constructor() { + super("lnrpc.ExportChannelBackupRequest", [ + { no: 1, name: "chan_point", kind: "message", T: () => ChannelPoint } + ]); + } + create(value?: PartialMessage): ExportChannelBackupRequest { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ExportChannelBackupRequest): ExportChannelBackupRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.ChannelPoint chan_point */ 1: + message.chanPoint = ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.chanPoint); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ExportChannelBackupRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.ChannelPoint chan_point = 1; */ + if (message.chanPoint) + ChannelPoint.internalBinaryWrite(message.chanPoint, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ExportChannelBackupRequest + */ +export const ExportChannelBackupRequest = new ExportChannelBackupRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelBackup$Type extends MessageType { + constructor() { + super("lnrpc.ChannelBackup", [ + { no: 1, name: "chan_point", kind: "message", T: () => ChannelPoint }, + { no: 2, name: "chan_backup", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): ChannelBackup { + const message = { chanBackup: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelBackup): ChannelBackup { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.ChannelPoint chan_point */ 1: + message.chanPoint = ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.chanPoint); + break; + case /* bytes chan_backup */ 2: + message.chanBackup = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChannelBackup, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.ChannelPoint chan_point = 1; */ + if (message.chanPoint) + ChannelPoint.internalBinaryWrite(message.chanPoint, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* bytes chan_backup = 2; */ + if (message.chanBackup.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.chanBackup); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelBackup + */ +export const ChannelBackup = new ChannelBackup$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class MultiChanBackup$Type extends MessageType { + constructor() { + super("lnrpc.MultiChanBackup", [ + { no: 1, name: "chan_points", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => ChannelPoint }, + { no: 2, name: "multi_chan_backup", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): MultiChanBackup { + const message = { chanPoints: [], multiChanBackup: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MultiChanBackup): MultiChanBackup { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.ChannelPoint chan_points */ 1: + message.chanPoints.push(ChannelPoint.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* bytes multi_chan_backup */ 2: + message.multiChanBackup = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: MultiChanBackup, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.ChannelPoint chan_points = 1; */ + for (let i = 0; i < message.chanPoints.length; i++) + ChannelPoint.internalBinaryWrite(message.chanPoints[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* bytes multi_chan_backup = 2; */ + if (message.multiChanBackup.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.multiChanBackup); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.MultiChanBackup + */ +export const MultiChanBackup = new MultiChanBackup$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChanBackupExportRequest$Type extends MessageType { + constructor() { + super("lnrpc.ChanBackupExportRequest", []); + } + create(value?: PartialMessage): ChanBackupExportRequest { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChanBackupExportRequest): ChanBackupExportRequest { + return target ?? this.create(); + } + internalBinaryWrite(message: ChanBackupExportRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChanBackupExportRequest + */ +export const ChanBackupExportRequest = new ChanBackupExportRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChanBackupSnapshot$Type extends MessageType { + constructor() { + super("lnrpc.ChanBackupSnapshot", [ + { no: 1, name: "single_chan_backups", kind: "message", T: () => ChannelBackups }, + { no: 2, name: "multi_chan_backup", kind: "message", T: () => MultiChanBackup } + ]); + } + create(value?: PartialMessage): ChanBackupSnapshot { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChanBackupSnapshot): ChanBackupSnapshot { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.ChannelBackups single_chan_backups */ 1: + message.singleChanBackups = ChannelBackups.internalBinaryRead(reader, reader.uint32(), options, message.singleChanBackups); + break; + case /* lnrpc.MultiChanBackup multi_chan_backup */ 2: + message.multiChanBackup = MultiChanBackup.internalBinaryRead(reader, reader.uint32(), options, message.multiChanBackup); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChanBackupSnapshot, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.ChannelBackups single_chan_backups = 1; */ + if (message.singleChanBackups) + ChannelBackups.internalBinaryWrite(message.singleChanBackups, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.MultiChanBackup multi_chan_backup = 2; */ + if (message.multiChanBackup) + MultiChanBackup.internalBinaryWrite(message.multiChanBackup, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChanBackupSnapshot + */ +export const ChanBackupSnapshot = new ChanBackupSnapshot$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelBackups$Type extends MessageType { + constructor() { + super("lnrpc.ChannelBackups", [ + { no: 1, name: "chan_backups", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => ChannelBackup } + ]); + } + create(value?: PartialMessage): ChannelBackups { + const message = { chanBackups: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelBackups): ChannelBackups { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.ChannelBackup chan_backups */ 1: + message.chanBackups.push(ChannelBackup.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChannelBackups, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.ChannelBackup chan_backups = 1; */ + for (let i = 0; i < message.chanBackups.length; i++) + ChannelBackup.internalBinaryWrite(message.chanBackups[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelBackups + */ +export const ChannelBackups = new ChannelBackups$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class RestoreChanBackupRequest$Type extends MessageType { + constructor() { + super("lnrpc.RestoreChanBackupRequest", [ + { no: 1, name: "chan_backups", kind: "message", oneof: "backup", T: () => ChannelBackups }, + { no: 2, name: "multi_chan_backup", kind: "scalar", oneof: "backup", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): RestoreChanBackupRequest { + const message = { backup: { oneofKind: undefined } }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RestoreChanBackupRequest): RestoreChanBackupRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.ChannelBackups chan_backups */ 1: + message.backup = { + oneofKind: "chanBackups", + chanBackups: ChannelBackups.internalBinaryRead(reader, reader.uint32(), options, (message.backup as any).chanBackups) + }; + break; + case /* bytes multi_chan_backup */ 2: + message.backup = { + oneofKind: "multiChanBackup", + multiChanBackup: reader.bytes() + }; + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: RestoreChanBackupRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.ChannelBackups chan_backups = 1; */ + if (message.backup.oneofKind === "chanBackups") + ChannelBackups.internalBinaryWrite(message.backup.chanBackups, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* bytes multi_chan_backup = 2; */ + if (message.backup.oneofKind === "multiChanBackup") + writer.tag(2, WireType.LengthDelimited).bytes(message.backup.multiChanBackup); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.RestoreChanBackupRequest + */ +export const RestoreChanBackupRequest = new RestoreChanBackupRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class RestoreBackupResponse$Type extends MessageType { + constructor() { + super("lnrpc.RestoreBackupResponse", []); + } + create(value?: PartialMessage): RestoreBackupResponse { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RestoreBackupResponse): RestoreBackupResponse { + return target ?? this.create(); + } + internalBinaryWrite(message: RestoreBackupResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.RestoreBackupResponse + */ +export const RestoreBackupResponse = new RestoreBackupResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelBackupSubscription$Type extends MessageType { + constructor() { + super("lnrpc.ChannelBackupSubscription", []); + } + create(value?: PartialMessage): ChannelBackupSubscription { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelBackupSubscription): ChannelBackupSubscription { + return target ?? this.create(); + } + internalBinaryWrite(message: ChannelBackupSubscription, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelBackupSubscription + */ +export const ChannelBackupSubscription = new ChannelBackupSubscription$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class VerifyChanBackupResponse$Type extends MessageType { + constructor() { + super("lnrpc.VerifyChanBackupResponse", []); + } + create(value?: PartialMessage): VerifyChanBackupResponse { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: VerifyChanBackupResponse): VerifyChanBackupResponse { + return target ?? this.create(); + } + internalBinaryWrite(message: VerifyChanBackupResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.VerifyChanBackupResponse + */ +export const VerifyChanBackupResponse = new VerifyChanBackupResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class MacaroonPermission$Type extends MessageType { + constructor() { + super("lnrpc.MacaroonPermission", [ + { no: 1, name: "entity", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "action", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): MacaroonPermission { + const message = { entity: "", action: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MacaroonPermission): MacaroonPermission { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string entity */ 1: + message.entity = reader.string(); + break; + case /* string action */ 2: + message.action = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: MacaroonPermission, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string entity = 1; */ + if (message.entity !== "") + writer.tag(1, WireType.LengthDelimited).string(message.entity); + /* string action = 2; */ + if (message.action !== "") + writer.tag(2, WireType.LengthDelimited).string(message.action); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.MacaroonPermission + */ +export const MacaroonPermission = new MacaroonPermission$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class BakeMacaroonRequest$Type extends MessageType { + constructor() { + super("lnrpc.BakeMacaroonRequest", [ + { no: 1, name: "permissions", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => MacaroonPermission }, + { no: 2, name: "root_key_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "allow_external_permissions", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): BakeMacaroonRequest { + const message = { permissions: [], rootKeyId: 0n, allowExternalPermissions: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BakeMacaroonRequest): BakeMacaroonRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.MacaroonPermission permissions */ 1: + message.permissions.push(MacaroonPermission.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* uint64 root_key_id */ 2: + message.rootKeyId = reader.uint64().toBigInt(); + break; + case /* bool allow_external_permissions */ 3: + message.allowExternalPermissions = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: BakeMacaroonRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.MacaroonPermission permissions = 1; */ + for (let i = 0; i < message.permissions.length; i++) + MacaroonPermission.internalBinaryWrite(message.permissions[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* uint64 root_key_id = 2; */ + if (message.rootKeyId !== 0n) + writer.tag(2, WireType.Varint).uint64(message.rootKeyId); + /* bool allow_external_permissions = 3; */ + if (message.allowExternalPermissions !== false) + writer.tag(3, WireType.Varint).bool(message.allowExternalPermissions); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.BakeMacaroonRequest + */ +export const BakeMacaroonRequest = new BakeMacaroonRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class BakeMacaroonResponse$Type extends MessageType { + constructor() { + super("lnrpc.BakeMacaroonResponse", [ + { no: 1, name: "macaroon", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): BakeMacaroonResponse { + const message = { macaroon: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BakeMacaroonResponse): BakeMacaroonResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string macaroon */ 1: + message.macaroon = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: BakeMacaroonResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string macaroon = 1; */ + if (message.macaroon !== "") + writer.tag(1, WireType.LengthDelimited).string(message.macaroon); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.BakeMacaroonResponse + */ +export const BakeMacaroonResponse = new BakeMacaroonResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ListMacaroonIDsRequest$Type extends MessageType { + constructor() { + super("lnrpc.ListMacaroonIDsRequest", []); + } + create(value?: PartialMessage): ListMacaroonIDsRequest { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListMacaroonIDsRequest): ListMacaroonIDsRequest { + return target ?? this.create(); + } + internalBinaryWrite(message: ListMacaroonIDsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ListMacaroonIDsRequest + */ +export const ListMacaroonIDsRequest = new ListMacaroonIDsRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ListMacaroonIDsResponse$Type extends MessageType { + constructor() { + super("lnrpc.ListMacaroonIDsResponse", [ + { no: 1, name: "root_key_ids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): ListMacaroonIDsResponse { + const message = { rootKeyIds: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListMacaroonIDsResponse): ListMacaroonIDsResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated uint64 root_key_ids */ 1: + if (wireType === WireType.LengthDelimited) + for (let e = reader.int32() + reader.pos; reader.pos < e;) + message.rootKeyIds.push(reader.uint64().toBigInt()); + else + message.rootKeyIds.push(reader.uint64().toBigInt()); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ListMacaroonIDsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated uint64 root_key_ids = 1; */ + if (message.rootKeyIds.length) { + writer.tag(1, WireType.LengthDelimited).fork(); + for (let i = 0; i < message.rootKeyIds.length; i++) + writer.uint64(message.rootKeyIds[i]); + writer.join(); + } + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ListMacaroonIDsResponse + */ +export const ListMacaroonIDsResponse = new ListMacaroonIDsResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class DeleteMacaroonIDRequest$Type extends MessageType { + constructor() { + super("lnrpc.DeleteMacaroonIDRequest", [ + { no: 1, name: "root_key_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): DeleteMacaroonIDRequest { + const message = { rootKeyId: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeleteMacaroonIDRequest): DeleteMacaroonIDRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 root_key_id */ 1: + message.rootKeyId = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: DeleteMacaroonIDRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 root_key_id = 1; */ + if (message.rootKeyId !== 0n) + writer.tag(1, WireType.Varint).uint64(message.rootKeyId); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.DeleteMacaroonIDRequest + */ +export const DeleteMacaroonIDRequest = new DeleteMacaroonIDRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class DeleteMacaroonIDResponse$Type extends MessageType { + constructor() { + super("lnrpc.DeleteMacaroonIDResponse", [ + { no: 1, name: "deleted", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): DeleteMacaroonIDResponse { + const message = { deleted: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeleteMacaroonIDResponse): DeleteMacaroonIDResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool deleted */ 1: + message.deleted = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: DeleteMacaroonIDResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool deleted = 1; */ + if (message.deleted !== false) + writer.tag(1, WireType.Varint).bool(message.deleted); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.DeleteMacaroonIDResponse + */ +export const DeleteMacaroonIDResponse = new DeleteMacaroonIDResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class MacaroonPermissionList$Type extends MessageType { + constructor() { + super("lnrpc.MacaroonPermissionList", [ + { no: 1, name: "permissions", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => MacaroonPermission } + ]); + } + create(value?: PartialMessage): MacaroonPermissionList { + const message = { permissions: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MacaroonPermissionList): MacaroonPermissionList { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated lnrpc.MacaroonPermission permissions */ 1: + message.permissions.push(MacaroonPermission.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: MacaroonPermissionList, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated lnrpc.MacaroonPermission permissions = 1; */ + for (let i = 0; i < message.permissions.length; i++) + MacaroonPermission.internalBinaryWrite(message.permissions[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.MacaroonPermissionList + */ +export const MacaroonPermissionList = new MacaroonPermissionList$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ListPermissionsRequest$Type extends MessageType { + constructor() { + super("lnrpc.ListPermissionsRequest", []); + } + create(value?: PartialMessage): ListPermissionsRequest { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListPermissionsRequest): ListPermissionsRequest { + return target ?? this.create(); + } + internalBinaryWrite(message: ListPermissionsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ListPermissionsRequest + */ +export const ListPermissionsRequest = new ListPermissionsRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ListPermissionsResponse$Type extends MessageType { + constructor() { + super("lnrpc.ListPermissionsResponse", [ + { no: 1, name: "method_permissions", kind: "map", K: 9 /*ScalarType.STRING*/, V: { kind: "message", T: () => MacaroonPermissionList } } + ]); + } + create(value?: PartialMessage): ListPermissionsResponse { + const message = { methodPermissions: {} }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListPermissionsResponse): ListPermissionsResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* map method_permissions */ 1: + this.binaryReadMap1(message.methodPermissions, reader, options); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap1(map: ListPermissionsResponse["methodPermissions"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof ListPermissionsResponse["methodPermissions"] | undefined, val: ListPermissionsResponse["methodPermissions"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.string(); + break; + case 2: + val = MacaroonPermissionList.internalBinaryRead(reader, reader.uint32(), options); + break; + default: throw new globalThis.Error("unknown map entry field for field lnrpc.ListPermissionsResponse.method_permissions"); + } + } + map[key ?? ""] = val ?? MacaroonPermissionList.create(); + } + internalBinaryWrite(message: ListPermissionsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* map method_permissions = 1; */ + for (let k of Object.keys(message.methodPermissions)) { + writer.tag(1, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k); + writer.tag(2, WireType.LengthDelimited).fork(); + MacaroonPermissionList.internalBinaryWrite(message.methodPermissions[k], writer, options); + writer.join().join(); + } + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ListPermissionsResponse + */ +export const ListPermissionsResponse = new ListPermissionsResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class Failure$Type extends MessageType { + constructor() { + super("lnrpc.Failure", [ + { no: 1, name: "code", kind: "enum", T: () => ["lnrpc.Failure.FailureCode", Failure_FailureCode] }, + { no: 3, name: "channel_update", kind: "message", T: () => ChannelUpdate }, + { no: 4, name: "htlc_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "onion_sha_256", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 6, name: "cltv_expiry", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 7, name: "flags", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 8, name: "failure_source_index", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 9, name: "height", kind: "scalar", T: 13 /*ScalarType.UINT32*/ } + ]); + } + create(value?: PartialMessage): Failure { + const message = { code: 0, htlcMsat: 0n, onionSha256: new Uint8Array(0), cltvExpiry: 0, flags: 0, failureSourceIndex: 0, height: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Failure): Failure { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.Failure.FailureCode code */ 1: + message.code = reader.int32(); + break; + case /* lnrpc.ChannelUpdate channel_update */ 3: + message.channelUpdate = ChannelUpdate.internalBinaryRead(reader, reader.uint32(), options, message.channelUpdate); + break; + case /* uint64 htlc_msat */ 4: + message.htlcMsat = reader.uint64().toBigInt(); + break; + case /* bytes onion_sha_256 */ 5: + message.onionSha256 = reader.bytes(); + break; + case /* uint32 cltv_expiry */ 6: + message.cltvExpiry = reader.uint32(); + break; + case /* uint32 flags */ 7: + message.flags = reader.uint32(); + break; + case /* uint32 failure_source_index */ 8: + message.failureSourceIndex = reader.uint32(); + break; + case /* uint32 height */ 9: + message.height = reader.uint32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: Failure, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.Failure.FailureCode code = 1; */ + if (message.code !== 0) + writer.tag(1, WireType.Varint).int32(message.code); + /* lnrpc.ChannelUpdate channel_update = 3; */ + if (message.channelUpdate) + ChannelUpdate.internalBinaryWrite(message.channelUpdate, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); + /* uint64 htlc_msat = 4; */ + if (message.htlcMsat !== 0n) + writer.tag(4, WireType.Varint).uint64(message.htlcMsat); + /* bytes onion_sha_256 = 5; */ + if (message.onionSha256.length) + writer.tag(5, WireType.LengthDelimited).bytes(message.onionSha256); + /* uint32 cltv_expiry = 6; */ + if (message.cltvExpiry !== 0) + writer.tag(6, WireType.Varint).uint32(message.cltvExpiry); + /* uint32 flags = 7; */ + if (message.flags !== 0) + writer.tag(7, WireType.Varint).uint32(message.flags); + /* uint32 failure_source_index = 8; */ + if (message.failureSourceIndex !== 0) + writer.tag(8, WireType.Varint).uint32(message.failureSourceIndex); + /* uint32 height = 9; */ + if (message.height !== 0) + writer.tag(9, WireType.Varint).uint32(message.height); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.Failure + */ +export const Failure = new Failure$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ChannelUpdate$Type extends MessageType { + constructor() { + super("lnrpc.ChannelUpdate", [ + { no: 1, name: "signature", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "chain_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 4, name: "timestamp", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 10, name: "message_flags", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 5, name: "channel_flags", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 6, name: "time_lock_delta", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 7, name: "htlc_minimum_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 8, name: "base_fee", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 9, name: "fee_rate", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 11, name: "htlc_maximum_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 12, name: "extra_opaque_data", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): ChannelUpdate { + const message = { signature: new Uint8Array(0), chainHash: new Uint8Array(0), chanId: "0", timestamp: 0, messageFlags: 0, channelFlags: 0, timeLockDelta: 0, htlcMinimumMsat: 0n, baseFee: 0, feeRate: 0, htlcMaximumMsat: 0n, extraOpaqueData: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ChannelUpdate): ChannelUpdate { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes signature */ 1: + message.signature = reader.bytes(); + break; + case /* bytes chain_hash */ 2: + message.chainHash = reader.bytes(); + break; + case /* uint64 chan_id = 3 [jstype = JS_STRING];*/ 3: + message.chanId = reader.uint64().toString(); + break; + case /* uint32 timestamp */ 4: + message.timestamp = reader.uint32(); + break; + case /* uint32 message_flags */ 10: + message.messageFlags = reader.uint32(); + break; + case /* uint32 channel_flags */ 5: + message.channelFlags = reader.uint32(); + break; + case /* uint32 time_lock_delta */ 6: + message.timeLockDelta = reader.uint32(); + break; + case /* uint64 htlc_minimum_msat */ 7: + message.htlcMinimumMsat = reader.uint64().toBigInt(); + break; + case /* uint32 base_fee */ 8: + message.baseFee = reader.uint32(); + break; + case /* uint32 fee_rate */ 9: + message.feeRate = reader.uint32(); + break; + case /* uint64 htlc_maximum_msat */ 11: + message.htlcMaximumMsat = reader.uint64().toBigInt(); + break; + case /* bytes extra_opaque_data */ 12: + message.extraOpaqueData = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ChannelUpdate, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes signature = 1; */ + if (message.signature.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.signature); + /* bytes chain_hash = 2; */ + if (message.chainHash.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.chainHash); + /* uint64 chan_id = 3 [jstype = JS_STRING]; */ + if (message.chanId !== "0") + writer.tag(3, WireType.Varint).uint64(message.chanId); + /* uint32 timestamp = 4; */ + if (message.timestamp !== 0) + writer.tag(4, WireType.Varint).uint32(message.timestamp); + /* uint32 message_flags = 10; */ + if (message.messageFlags !== 0) + writer.tag(10, WireType.Varint).uint32(message.messageFlags); + /* uint32 channel_flags = 5; */ + if (message.channelFlags !== 0) + writer.tag(5, WireType.Varint).uint32(message.channelFlags); + /* uint32 time_lock_delta = 6; */ + if (message.timeLockDelta !== 0) + writer.tag(6, WireType.Varint).uint32(message.timeLockDelta); + /* uint64 htlc_minimum_msat = 7; */ + if (message.htlcMinimumMsat !== 0n) + writer.tag(7, WireType.Varint).uint64(message.htlcMinimumMsat); + /* uint32 base_fee = 8; */ + if (message.baseFee !== 0) + writer.tag(8, WireType.Varint).uint32(message.baseFee); + /* uint32 fee_rate = 9; */ + if (message.feeRate !== 0) + writer.tag(9, WireType.Varint).uint32(message.feeRate); + /* uint64 htlc_maximum_msat = 11; */ + if (message.htlcMaximumMsat !== 0n) + writer.tag(11, WireType.Varint).uint64(message.htlcMaximumMsat); + /* bytes extra_opaque_data = 12; */ + if (message.extraOpaqueData.length) + writer.tag(12, WireType.LengthDelimited).bytes(message.extraOpaqueData); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.ChannelUpdate + */ +export const ChannelUpdate = new ChannelUpdate$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class MacaroonId$Type extends MessageType { + constructor() { + super("lnrpc.MacaroonId", [ + { no: 1, name: "nonce", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "storageId", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "ops", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => Op } + ]); + } + create(value?: PartialMessage): MacaroonId { + const message = { nonce: new Uint8Array(0), storageId: new Uint8Array(0), ops: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MacaroonId): MacaroonId { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes nonce */ 1: + message.nonce = reader.bytes(); + break; + case /* bytes storageId */ 2: + message.storageId = reader.bytes(); + break; + case /* repeated lnrpc.Op ops */ 3: + message.ops.push(Op.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: MacaroonId, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes nonce = 1; */ + if (message.nonce.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.nonce); + /* bytes storageId = 2; */ + if (message.storageId.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.storageId); + /* repeated lnrpc.Op ops = 3; */ + for (let i = 0; i < message.ops.length; i++) + Op.internalBinaryWrite(message.ops[i], writer.tag(3, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.MacaroonId + */ +export const MacaroonId = new MacaroonId$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class Op$Type extends MessageType { + constructor() { + super("lnrpc.Op", [ + { no: 1, name: "entity", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "actions", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): Op { + const message = { entity: "", actions: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Op): Op { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string entity */ 1: + message.entity = reader.string(); + break; + case /* repeated string actions */ 2: + message.actions.push(reader.string()); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: Op, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string entity = 1; */ + if (message.entity !== "") + writer.tag(1, WireType.LengthDelimited).string(message.entity); + /* repeated string actions = 2; */ + for (let i = 0; i < message.actions.length; i++) + writer.tag(2, WireType.LengthDelimited).string(message.actions[i]); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.Op + */ +export const Op = new Op$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class CheckMacPermRequest$Type extends MessageType { + constructor() { + super("lnrpc.CheckMacPermRequest", [ + { no: 1, name: "macaroon", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "permissions", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => MacaroonPermission }, + { no: 3, name: "fullMethod", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): CheckMacPermRequest { + const message = { macaroon: new Uint8Array(0), permissions: [], fullMethod: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CheckMacPermRequest): CheckMacPermRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes macaroon */ 1: + message.macaroon = reader.bytes(); + break; + case /* repeated lnrpc.MacaroonPermission permissions */ 2: + message.permissions.push(MacaroonPermission.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* string fullMethod */ 3: + message.fullMethod = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: CheckMacPermRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes macaroon = 1; */ + if (message.macaroon.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.macaroon); + /* repeated lnrpc.MacaroonPermission permissions = 2; */ + for (let i = 0; i < message.permissions.length; i++) + MacaroonPermission.internalBinaryWrite(message.permissions[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + /* string fullMethod = 3; */ + if (message.fullMethod !== "") + writer.tag(3, WireType.LengthDelimited).string(message.fullMethod); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.CheckMacPermRequest + */ +export const CheckMacPermRequest = new CheckMacPermRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class CheckMacPermResponse$Type extends MessageType { + constructor() { + super("lnrpc.CheckMacPermResponse", [ + { no: 1, name: "valid", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): CheckMacPermResponse { + const message = { valid: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CheckMacPermResponse): CheckMacPermResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool valid */ 1: + message.valid = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: CheckMacPermResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool valid = 1; */ + if (message.valid !== false) + writer.tag(1, WireType.Varint).bool(message.valid); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.CheckMacPermResponse + */ +export const CheckMacPermResponse = new CheckMacPermResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class RPCMiddlewareRequest$Type extends MessageType { + constructor() { + super("lnrpc.RPCMiddlewareRequest", [ + { no: 1, name: "request_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "raw_macaroon", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "custom_caveat_condition", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 4, name: "stream_auth", kind: "message", oneof: "interceptType", T: () => StreamAuth }, + { no: 5, name: "request", kind: "message", oneof: "interceptType", T: () => RPCMessage }, + { no: 6, name: "response", kind: "message", oneof: "interceptType", T: () => RPCMessage }, + { no: 8, name: "reg_complete", kind: "scalar", oneof: "interceptType", T: 8 /*ScalarType.BOOL*/ }, + { no: 7, name: "msg_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): RPCMiddlewareRequest { + const message = { requestId: 0n, rawMacaroon: new Uint8Array(0), customCaveatCondition: "", interceptType: { oneofKind: undefined }, msgId: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RPCMiddlewareRequest): RPCMiddlewareRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 request_id */ 1: + message.requestId = reader.uint64().toBigInt(); + break; + case /* bytes raw_macaroon */ 2: + message.rawMacaroon = reader.bytes(); + break; + case /* string custom_caveat_condition */ 3: + message.customCaveatCondition = reader.string(); + break; + case /* lnrpc.StreamAuth stream_auth */ 4: + message.interceptType = { + oneofKind: "streamAuth", + streamAuth: StreamAuth.internalBinaryRead(reader, reader.uint32(), options, (message.interceptType as any).streamAuth) + }; + break; + case /* lnrpc.RPCMessage request */ 5: + message.interceptType = { + oneofKind: "request", + request: RPCMessage.internalBinaryRead(reader, reader.uint32(), options, (message.interceptType as any).request) + }; + break; + case /* lnrpc.RPCMessage response */ 6: + message.interceptType = { + oneofKind: "response", + response: RPCMessage.internalBinaryRead(reader, reader.uint32(), options, (message.interceptType as any).response) + }; + break; + case /* bool reg_complete */ 8: + message.interceptType = { + oneofKind: "regComplete", + regComplete: reader.bool() + }; + break; + case /* uint64 msg_id */ 7: + message.msgId = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: RPCMiddlewareRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 request_id = 1; */ + if (message.requestId !== 0n) + writer.tag(1, WireType.Varint).uint64(message.requestId); + /* bytes raw_macaroon = 2; */ + if (message.rawMacaroon.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.rawMacaroon); + /* string custom_caveat_condition = 3; */ + if (message.customCaveatCondition !== "") + writer.tag(3, WireType.LengthDelimited).string(message.customCaveatCondition); + /* lnrpc.StreamAuth stream_auth = 4; */ + if (message.interceptType.oneofKind === "streamAuth") + StreamAuth.internalBinaryWrite(message.interceptType.streamAuth, writer.tag(4, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.RPCMessage request = 5; */ + if (message.interceptType.oneofKind === "request") + RPCMessage.internalBinaryWrite(message.interceptType.request, writer.tag(5, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.RPCMessage response = 6; */ + if (message.interceptType.oneofKind === "response") + RPCMessage.internalBinaryWrite(message.interceptType.response, writer.tag(6, WireType.LengthDelimited).fork(), options).join(); + /* bool reg_complete = 8; */ + if (message.interceptType.oneofKind === "regComplete") + writer.tag(8, WireType.Varint).bool(message.interceptType.regComplete); + /* uint64 msg_id = 7; */ + if (message.msgId !== 0n) + writer.tag(7, WireType.Varint).uint64(message.msgId); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.RPCMiddlewareRequest + */ +export const RPCMiddlewareRequest = new RPCMiddlewareRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class StreamAuth$Type extends MessageType { + constructor() { + super("lnrpc.StreamAuth", [ + { no: 1, name: "method_full_uri", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): StreamAuth { + const message = { methodFullUri: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StreamAuth): StreamAuth { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string method_full_uri */ 1: + message.methodFullUri = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: StreamAuth, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string method_full_uri = 1; */ + if (message.methodFullUri !== "") + writer.tag(1, WireType.LengthDelimited).string(message.methodFullUri); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.StreamAuth + */ +export const StreamAuth = new StreamAuth$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class RPCMessage$Type extends MessageType { + constructor() { + super("lnrpc.RPCMessage", [ + { no: 1, name: "method_full_uri", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "stream_rpc", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 3, name: "type_name", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 4, name: "serialized", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 5, name: "is_error", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): RPCMessage { + const message = { methodFullUri: "", streamRpc: false, typeName: "", serialized: new Uint8Array(0), isError: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RPCMessage): RPCMessage { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string method_full_uri */ 1: + message.methodFullUri = reader.string(); + break; + case /* bool stream_rpc */ 2: + message.streamRpc = reader.bool(); + break; + case /* string type_name */ 3: + message.typeName = reader.string(); + break; + case /* bytes serialized */ 4: + message.serialized = reader.bytes(); + break; + case /* bool is_error */ 5: + message.isError = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: RPCMessage, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string method_full_uri = 1; */ + if (message.methodFullUri !== "") + writer.tag(1, WireType.LengthDelimited).string(message.methodFullUri); + /* bool stream_rpc = 2; */ + if (message.streamRpc !== false) + writer.tag(2, WireType.Varint).bool(message.streamRpc); + /* string type_name = 3; */ + if (message.typeName !== "") + writer.tag(3, WireType.LengthDelimited).string(message.typeName); + /* bytes serialized = 4; */ + if (message.serialized.length) + writer.tag(4, WireType.LengthDelimited).bytes(message.serialized); + /* bool is_error = 5; */ + if (message.isError !== false) + writer.tag(5, WireType.Varint).bool(message.isError); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.RPCMessage + */ +export const RPCMessage = new RPCMessage$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class RPCMiddlewareResponse$Type extends MessageType { + constructor() { + super("lnrpc.RPCMiddlewareResponse", [ + { no: 1, name: "ref_msg_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "register", kind: "message", oneof: "middlewareMessage", T: () => MiddlewareRegistration }, + { no: 3, name: "feedback", kind: "message", oneof: "middlewareMessage", T: () => InterceptFeedback } + ]); + } + create(value?: PartialMessage): RPCMiddlewareResponse { + const message = { refMsgId: 0n, middlewareMessage: { oneofKind: undefined } }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RPCMiddlewareResponse): RPCMiddlewareResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 ref_msg_id */ 1: + message.refMsgId = reader.uint64().toBigInt(); + break; + case /* lnrpc.MiddlewareRegistration register */ 2: + message.middlewareMessage = { + oneofKind: "register", + register: MiddlewareRegistration.internalBinaryRead(reader, reader.uint32(), options, (message.middlewareMessage as any).register) + }; + break; + case /* lnrpc.InterceptFeedback feedback */ 3: + message.middlewareMessage = { + oneofKind: "feedback", + feedback: InterceptFeedback.internalBinaryRead(reader, reader.uint32(), options, (message.middlewareMessage as any).feedback) + }; + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: RPCMiddlewareResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 ref_msg_id = 1; */ + if (message.refMsgId !== 0n) + writer.tag(1, WireType.Varint).uint64(message.refMsgId); + /* lnrpc.MiddlewareRegistration register = 2; */ + if (message.middlewareMessage.oneofKind === "register") + MiddlewareRegistration.internalBinaryWrite(message.middlewareMessage.register, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.InterceptFeedback feedback = 3; */ + if (message.middlewareMessage.oneofKind === "feedback") + InterceptFeedback.internalBinaryWrite(message.middlewareMessage.feedback, writer.tag(3, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.RPCMiddlewareResponse + */ +export const RPCMiddlewareResponse = new RPCMiddlewareResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class MiddlewareRegistration$Type extends MessageType { + constructor() { + super("lnrpc.MiddlewareRegistration", [ + { no: 1, name: "middleware_name", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "custom_macaroon_caveat_name", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 3, name: "read_only_mode", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): MiddlewareRegistration { + const message = { middlewareName: "", customMacaroonCaveatName: "", readOnlyMode: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MiddlewareRegistration): MiddlewareRegistration { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string middleware_name */ 1: + message.middlewareName = reader.string(); + break; + case /* string custom_macaroon_caveat_name */ 2: + message.customMacaroonCaveatName = reader.string(); + break; + case /* bool read_only_mode */ 3: + message.readOnlyMode = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: MiddlewareRegistration, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string middleware_name = 1; */ + if (message.middlewareName !== "") + writer.tag(1, WireType.LengthDelimited).string(message.middlewareName); + /* string custom_macaroon_caveat_name = 2; */ + if (message.customMacaroonCaveatName !== "") + writer.tag(2, WireType.LengthDelimited).string(message.customMacaroonCaveatName); + /* bool read_only_mode = 3; */ + if (message.readOnlyMode !== false) + writer.tag(3, WireType.Varint).bool(message.readOnlyMode); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.MiddlewareRegistration + */ +export const MiddlewareRegistration = new MiddlewareRegistration$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class InterceptFeedback$Type extends MessageType { + constructor() { + super("lnrpc.InterceptFeedback", [ + { no: 1, name: "error", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 2, name: "replace_response", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 3, name: "replacement_serialized", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): InterceptFeedback { + const message = { error: "", replaceResponse: false, replacementSerialized: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: InterceptFeedback): InterceptFeedback { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* string error */ 1: + message.error = reader.string(); + break; + case /* bool replace_response */ 2: + message.replaceResponse = reader.bool(); + break; + case /* bytes replacement_serialized */ 3: + message.replacementSerialized = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: InterceptFeedback, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* string error = 1; */ + if (message.error !== "") + writer.tag(1, WireType.LengthDelimited).string(message.error); + /* bool replace_response = 2; */ + if (message.replaceResponse !== false) + writer.tag(2, WireType.Varint).bool(message.replaceResponse); + /* bytes replacement_serialized = 3; */ + if (message.replacementSerialized.length) + writer.tag(3, WireType.LengthDelimited).bytes(message.replacementSerialized); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message lnrpc.InterceptFeedback + */ +export const InterceptFeedback = new InterceptFeedback$Type(); +/** + * @generated ServiceType for protobuf service lnrpc.Lightning + */ +export const Lightning = new ServiceType("lnrpc.Lightning", [ + { name: "WalletBalance", options: {}, I: WalletBalanceRequest, O: WalletBalanceResponse }, + { name: "ChannelBalance", options: {}, I: ChannelBalanceRequest, O: ChannelBalanceResponse }, + { name: "GetTransactions", options: {}, I: GetTransactionsRequest, O: TransactionDetails }, + { name: "EstimateFee", options: {}, I: EstimateFeeRequest, O: EstimateFeeResponse }, + { name: "SendCoins", options: {}, I: SendCoinsRequest, O: SendCoinsResponse }, + { name: "ListUnspent", options: {}, I: ListUnspentRequest, O: ListUnspentResponse }, + { name: "SubscribeTransactions", serverStreaming: true, options: {}, I: GetTransactionsRequest, O: Transaction }, + { name: "SendMany", options: {}, I: SendManyRequest, O: SendManyResponse }, + { name: "NewAddress", options: {}, I: NewAddressRequest, O: NewAddressResponse }, + { name: "SignMessage", options: {}, I: SignMessageRequest, O: SignMessageResponse }, + { name: "VerifyMessage", options: {}, I: VerifyMessageRequest, O: VerifyMessageResponse }, + { name: "ConnectPeer", options: {}, I: ConnectPeerRequest, O: ConnectPeerResponse }, + { name: "DisconnectPeer", options: {}, I: DisconnectPeerRequest, O: DisconnectPeerResponse }, + { name: "ListPeers", options: {}, I: ListPeersRequest, O: ListPeersResponse }, + { name: "SubscribePeerEvents", serverStreaming: true, options: {}, I: PeerEventSubscription, O: PeerEvent }, + { name: "GetInfo", options: {}, I: GetInfoRequest, O: GetInfoResponse }, + { name: "GetDebugInfo", options: {}, I: GetDebugInfoRequest, O: GetDebugInfoResponse }, + { name: "GetRecoveryInfo", options: {}, I: GetRecoveryInfoRequest, O: GetRecoveryInfoResponse }, + { name: "PendingChannels", options: {}, I: PendingChannelsRequest, O: PendingChannelsResponse }, + { name: "ListChannels", options: {}, I: ListChannelsRequest, O: ListChannelsResponse }, + { name: "SubscribeChannelEvents", serverStreaming: true, options: {}, I: ChannelEventSubscription, O: ChannelEventUpdate }, + { name: "ClosedChannels", options: {}, I: ClosedChannelsRequest, O: ClosedChannelsResponse }, + { name: "OpenChannelSync", options: {}, I: OpenChannelRequest, O: ChannelPoint }, + { name: "OpenChannel", serverStreaming: true, options: {}, I: OpenChannelRequest, O: OpenStatusUpdate }, + { name: "BatchOpenChannel", options: {}, I: BatchOpenChannelRequest, O: BatchOpenChannelResponse }, + { name: "FundingStateStep", options: {}, I: FundingTransitionMsg, O: FundingStateStepResp }, + { name: "ChannelAcceptor", serverStreaming: true, clientStreaming: true, options: {}, I: ChannelAcceptResponse, O: ChannelAcceptRequest }, + { name: "CloseChannel", serverStreaming: true, options: {}, I: CloseChannelRequest, O: CloseStatusUpdate }, + { name: "AbandonChannel", options: {}, I: AbandonChannelRequest, O: AbandonChannelResponse }, + { name: "SendPayment", serverStreaming: true, clientStreaming: true, options: {}, I: SendRequest, O: SendResponse }, + { name: "SendPaymentSync", options: {}, I: SendRequest, O: SendResponse }, + { name: "SendToRoute", serverStreaming: true, clientStreaming: true, options: {}, I: SendToRouteRequest, O: SendResponse }, + { name: "SendToRouteSync", options: {}, I: SendToRouteRequest, O: SendResponse }, + { name: "AddInvoice", options: {}, I: Invoice, O: AddInvoiceResponse }, + { name: "ListInvoices", options: {}, I: ListInvoiceRequest, O: ListInvoiceResponse }, + { name: "LookupInvoice", options: {}, I: PaymentHash, O: Invoice }, + { name: "SubscribeInvoices", serverStreaming: true, options: {}, I: InvoiceSubscription, O: Invoice }, + { name: "DecodePayReq", options: {}, I: PayReqString, O: PayReq }, + { name: "ListPayments", options: {}, I: ListPaymentsRequest, O: ListPaymentsResponse }, + { name: "DeletePayment", options: {}, I: DeletePaymentRequest, O: DeletePaymentResponse }, + { name: "DeleteAllPayments", options: {}, I: DeleteAllPaymentsRequest, O: DeleteAllPaymentsResponse }, + { name: "DescribeGraph", options: {}, I: ChannelGraphRequest, O: ChannelGraph }, + { name: "GetNodeMetrics", options: {}, I: NodeMetricsRequest, O: NodeMetricsResponse }, + { name: "GetChanInfo", options: {}, I: ChanInfoRequest, O: ChannelEdge }, + { name: "GetNodeInfo", options: {}, I: NodeInfoRequest, O: NodeInfo }, + { name: "QueryRoutes", options: {}, I: QueryRoutesRequest, O: QueryRoutesResponse }, + { name: "GetNetworkInfo", options: {}, I: NetworkInfoRequest, O: NetworkInfo }, + { name: "StopDaemon", options: {}, I: StopRequest, O: StopResponse }, + { name: "SubscribeChannelGraph", serverStreaming: true, options: {}, I: GraphTopologySubscription, O: GraphTopologyUpdate }, + { name: "DebugLevel", options: {}, I: DebugLevelRequest, O: DebugLevelResponse }, + { name: "FeeReport", options: {}, I: FeeReportRequest, O: FeeReportResponse }, + { name: "UpdateChannelPolicy", options: {}, I: PolicyUpdateRequest, O: PolicyUpdateResponse }, + { name: "ForwardingHistory", options: {}, I: ForwardingHistoryRequest, O: ForwardingHistoryResponse }, + { name: "ExportChannelBackup", options: {}, I: ExportChannelBackupRequest, O: ChannelBackup }, + { name: "ExportAllChannelBackups", options: {}, I: ChanBackupExportRequest, O: ChanBackupSnapshot }, + { name: "VerifyChanBackup", options: {}, I: ChanBackupSnapshot, O: VerifyChanBackupResponse }, + { name: "RestoreChannelBackups", options: {}, I: RestoreChanBackupRequest, O: RestoreBackupResponse }, + { name: "SubscribeChannelBackups", serverStreaming: true, options: {}, I: ChannelBackupSubscription, O: ChanBackupSnapshot }, + { name: "BakeMacaroon", options: {}, I: BakeMacaroonRequest, O: BakeMacaroonResponse }, + { name: "ListMacaroonIDs", options: {}, I: ListMacaroonIDsRequest, O: ListMacaroonIDsResponse }, + { name: "DeleteMacaroonID", options: {}, I: DeleteMacaroonIDRequest, O: DeleteMacaroonIDResponse }, + { name: "ListPermissions", options: {}, I: ListPermissionsRequest, O: ListPermissionsResponse }, + { name: "CheckMacaroonPermissions", options: {}, I: CheckMacPermRequest, O: CheckMacPermResponse }, + { name: "RegisterRPCMiddleware", serverStreaming: true, clientStreaming: true, options: {}, I: RPCMiddlewareResponse, O: RPCMiddlewareRequest }, + { name: "SendCustomMessage", options: {}, I: SendCustomMessageRequest, O: SendCustomMessageResponse }, + { name: "SubscribeCustomMessages", serverStreaming: true, options: {}, I: SubscribeCustomMessagesRequest, O: CustomMessage }, + { name: "ListAliases", options: {}, I: ListAliasesRequest, O: ListAliasesResponse }, + { name: "LookupHtlcResolution", options: {}, I: LookupHtlcResolutionRequest, O: LookupHtlcResolutionResponse } +]); diff --git a/proto/lnd/router.client.ts b/proto/lnd/router.client.ts index ccca4170..27722e38 100644 --- a/proto/lnd/router.client.ts +++ b/proto/lnd/router.client.ts @@ -1,446 +1,446 @@ -// @generated by protobuf-ts 2.8.1 -// @generated from protobuf file "router.proto" (package "routerrpc", syntax proto3) -// tslint:disable -import type { RpcTransport } from "@protobuf-ts/runtime-rpc"; -import type { ServiceInfo } from "@protobuf-ts/runtime-rpc"; -import { Router } from "./router.js"; -import type { UpdateChanStatusResponse } from "./router.js"; -import type { UpdateChanStatusRequest } from "./router.js"; -import type { ForwardHtlcInterceptRequest } from "./router.js"; -import type { ForwardHtlcInterceptResponse } from "./router.js"; -import type { DuplexStreamingCall } from "@protobuf-ts/runtime-rpc"; -import type { PaymentStatus } from "./router.js"; -import type { HtlcEvent } from "./router.js"; -import type { SubscribeHtlcEventsRequest } from "./router.js"; -import type { BuildRouteResponse } from "./router.js"; -import type { BuildRouteRequest } from "./router.js"; -import type { QueryProbabilityResponse } from "./router.js"; -import type { QueryProbabilityRequest } from "./router.js"; -import type { SetMissionControlConfigResponse } from "./router.js"; -import type { SetMissionControlConfigRequest } from "./router.js"; -import type { GetMissionControlConfigResponse } from "./router.js"; -import type { GetMissionControlConfigRequest } from "./router.js"; -import type { XImportMissionControlResponse } from "./router.js"; -import type { XImportMissionControlRequest } from "./router.js"; -import type { QueryMissionControlResponse } from "./router.js"; -import type { QueryMissionControlRequest } from "./router.js"; -import type { ResetMissionControlResponse } from "./router.js"; -import type { ResetMissionControlRequest } from "./router.js"; -import type { HTLCAttempt } from "./lightning.js"; -import type { SendToRouteResponse } from "./router.js"; -import type { SendToRouteRequest } from "./router.js"; -import type { RouteFeeResponse } from "./router.js"; -import type { RouteFeeRequest } from "./router.js"; -import type { UnaryCall } from "@protobuf-ts/runtime-rpc"; -import type { TrackPaymentsRequest } from "./router.js"; -import type { TrackPaymentRequest } from "./router.js"; -import { stackIntercept } from "@protobuf-ts/runtime-rpc"; -import type { Payment } from "./lightning.js"; -import type { SendPaymentRequest } from "./router.js"; -import type { ServerStreamingCall } from "@protobuf-ts/runtime-rpc"; -import type { RpcOptions } from "@protobuf-ts/runtime-rpc"; -/** - * Router is a service that offers advanced interaction with the router - * subsystem of the daemon. - * - * @generated from protobuf service routerrpc.Router - */ -export interface IRouterClient { - /** - * - * SendPaymentV2 attempts to route a payment described by the passed - * PaymentRequest to the final destination. The call returns a stream of - * payment updates. - * - * @generated from protobuf rpc: SendPaymentV2(routerrpc.SendPaymentRequest) returns (stream lnrpc.Payment); - */ - sendPaymentV2(input: SendPaymentRequest, options?: RpcOptions): ServerStreamingCall; - /** - * - * TrackPaymentV2 returns an update stream for the payment identified by the - * payment hash. - * - * @generated from protobuf rpc: TrackPaymentV2(routerrpc.TrackPaymentRequest) returns (stream lnrpc.Payment); - */ - trackPaymentV2(input: TrackPaymentRequest, options?: RpcOptions): ServerStreamingCall; - /** - * - * TrackPayments returns an update stream for every payment that is not in a - * terminal state. Note that if payments are in-flight while starting a new - * subscription, the start of the payment stream could produce out-of-order - * and/or duplicate events. In order to get updates for every in-flight - * payment attempt make sure to subscribe to this method before initiating any - * payments. - * - * @generated from protobuf rpc: TrackPayments(routerrpc.TrackPaymentsRequest) returns (stream lnrpc.Payment); - */ - trackPayments(input: TrackPaymentsRequest, options?: RpcOptions): ServerStreamingCall; - /** - * - * EstimateRouteFee allows callers to obtain a lower bound w.r.t how much it - * may cost to send an HTLC to the target end destination. - * - * @generated from protobuf rpc: EstimateRouteFee(routerrpc.RouteFeeRequest) returns (routerrpc.RouteFeeResponse); - */ - estimateRouteFee(input: RouteFeeRequest, options?: RpcOptions): UnaryCall; - /** - * - * Deprecated, use SendToRouteV2. SendToRoute attempts to make a payment via - * the specified route. 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. It differs from the newer - * SendToRouteV2 in that it doesn't return the full HTLC information. - * - * @deprecated - * @generated from protobuf rpc: SendToRoute(routerrpc.SendToRouteRequest) returns (routerrpc.SendToRouteResponse); - */ - sendToRoute(input: SendToRouteRequest, options?: RpcOptions): UnaryCall; - /** - * - * SendToRouteV2 attempts to make a payment via the specified route. 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. - * - * @generated from protobuf rpc: SendToRouteV2(routerrpc.SendToRouteRequest) returns (lnrpc.HTLCAttempt); - */ - sendToRouteV2(input: SendToRouteRequest, options?: RpcOptions): UnaryCall; - /** - * - * ResetMissionControl clears all mission control state and starts with a clean - * slate. - * - * @generated from protobuf rpc: ResetMissionControl(routerrpc.ResetMissionControlRequest) returns (routerrpc.ResetMissionControlResponse); - */ - resetMissionControl(input: ResetMissionControlRequest, options?: RpcOptions): UnaryCall; - /** - * - * QueryMissionControl exposes the internal mission control state to callers. - * It is a development feature. - * - * @generated from protobuf rpc: QueryMissionControl(routerrpc.QueryMissionControlRequest) returns (routerrpc.QueryMissionControlResponse); - */ - queryMissionControl(input: QueryMissionControlRequest, options?: RpcOptions): UnaryCall; - /** - * - * XImportMissionControl is an experimental API that imports the state provided - * to the internal mission control's state, using all results which are more - * recent than our existing values. These values will only be imported - * in-memory, and will not be persisted across restarts. - * - * @generated from protobuf rpc: XImportMissionControl(routerrpc.XImportMissionControlRequest) returns (routerrpc.XImportMissionControlResponse); - */ - xImportMissionControl(input: XImportMissionControlRequest, options?: RpcOptions): UnaryCall; - /** - * - * GetMissionControlConfig returns mission control's current config. - * - * @generated from protobuf rpc: GetMissionControlConfig(routerrpc.GetMissionControlConfigRequest) returns (routerrpc.GetMissionControlConfigResponse); - */ - getMissionControlConfig(input: GetMissionControlConfigRequest, options?: RpcOptions): UnaryCall; - /** - * - * SetMissionControlConfig will set mission control's config, if the config - * provided is valid. - * - * @generated from protobuf rpc: SetMissionControlConfig(routerrpc.SetMissionControlConfigRequest) returns (routerrpc.SetMissionControlConfigResponse); - */ - setMissionControlConfig(input: SetMissionControlConfigRequest, options?: RpcOptions): UnaryCall; - /** - * - * QueryProbability returns the current success probability estimate for a - * given node pair and amount. - * - * @generated from protobuf rpc: QueryProbability(routerrpc.QueryProbabilityRequest) returns (routerrpc.QueryProbabilityResponse); - */ - queryProbability(input: QueryProbabilityRequest, options?: RpcOptions): UnaryCall; - /** - * - * BuildRoute builds a fully specified route based on a list of hop public - * keys. It retrieves the relevant channel policies from the graph in order to - * calculate the correct fees and time locks. - * - * @generated from protobuf rpc: BuildRoute(routerrpc.BuildRouteRequest) returns (routerrpc.BuildRouteResponse); - */ - buildRoute(input: BuildRouteRequest, options?: RpcOptions): UnaryCall; - /** - * - * SubscribeHtlcEvents creates a uni-directional stream from the server to - * the client which delivers a stream of htlc events. - * - * @generated from protobuf rpc: SubscribeHtlcEvents(routerrpc.SubscribeHtlcEventsRequest) returns (stream routerrpc.HtlcEvent); - */ - subscribeHtlcEvents(input: SubscribeHtlcEventsRequest, options?: RpcOptions): ServerStreamingCall; - /** - * - * Deprecated, use SendPaymentV2. SendPayment attempts to route a payment - * described by the passed PaymentRequest to the final destination. The call - * returns a stream of payment status updates. - * - * @deprecated - * @generated from protobuf rpc: SendPayment(routerrpc.SendPaymentRequest) returns (stream routerrpc.PaymentStatus); - */ - sendPayment(input: SendPaymentRequest, options?: RpcOptions): ServerStreamingCall; - /** - * - * Deprecated, use TrackPaymentV2. TrackPayment returns an update stream for - * the payment identified by the payment hash. - * - * @deprecated - * @generated from protobuf rpc: TrackPayment(routerrpc.TrackPaymentRequest) returns (stream routerrpc.PaymentStatus); - */ - trackPayment(input: TrackPaymentRequest, options?: RpcOptions): ServerStreamingCall; - /** - * * - * HtlcInterceptor dispatches a bi-directional streaming RPC in which - * Forwarded HTLC requests are sent to the client and the client responds with - * a boolean that tells LND if this htlc should be intercepted. - * In case of interception, the htlc can be either settled, cancelled or - * resumed later by using the ResolveHoldForward endpoint. - * - * @generated from protobuf rpc: HtlcInterceptor(stream routerrpc.ForwardHtlcInterceptResponse) returns (stream routerrpc.ForwardHtlcInterceptRequest); - */ - htlcInterceptor(options?: RpcOptions): DuplexStreamingCall; - /** - * - * UpdateChanStatus attempts to manually set the state of a channel - * (enabled, disabled, or auto). A manual "disable" request will cause the - * channel to stay disabled until a subsequent manual request of either - * "enable" or "auto". - * - * @generated from protobuf rpc: UpdateChanStatus(routerrpc.UpdateChanStatusRequest) returns (routerrpc.UpdateChanStatusResponse); - */ - updateChanStatus(input: UpdateChanStatusRequest, options?: RpcOptions): UnaryCall; -} -/** - * Router is a service that offers advanced interaction with the router - * subsystem of the daemon. - * - * @generated from protobuf service routerrpc.Router - */ -export class RouterClient implements IRouterClient, ServiceInfo { - typeName = Router.typeName; - methods = Router.methods; - options = Router.options; - constructor(private readonly _transport: RpcTransport) { - } - /** - * - * SendPaymentV2 attempts to route a payment described by the passed - * PaymentRequest to the final destination. The call returns a stream of - * payment updates. - * - * @generated from protobuf rpc: SendPaymentV2(routerrpc.SendPaymentRequest) returns (stream lnrpc.Payment); - */ - sendPaymentV2(input: SendPaymentRequest, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[0], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } - /** - * - * TrackPaymentV2 returns an update stream for the payment identified by the - * payment hash. - * - * @generated from protobuf rpc: TrackPaymentV2(routerrpc.TrackPaymentRequest) returns (stream lnrpc.Payment); - */ - trackPaymentV2(input: TrackPaymentRequest, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[1], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } - /** - * - * TrackPayments returns an update stream for every payment that is not in a - * terminal state. Note that if payments are in-flight while starting a new - * subscription, the start of the payment stream could produce out-of-order - * and/or duplicate events. In order to get updates for every in-flight - * payment attempt make sure to subscribe to this method before initiating any - * payments. - * - * @generated from protobuf rpc: TrackPayments(routerrpc.TrackPaymentsRequest) returns (stream lnrpc.Payment); - */ - trackPayments(input: TrackPaymentsRequest, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[2], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } - /** - * - * EstimateRouteFee allows callers to obtain a lower bound w.r.t how much it - * may cost to send an HTLC to the target end destination. - * - * @generated from protobuf rpc: EstimateRouteFee(routerrpc.RouteFeeRequest) returns (routerrpc.RouteFeeResponse); - */ - estimateRouteFee(input: RouteFeeRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[3], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * Deprecated, use SendToRouteV2. SendToRoute attempts to make a payment via - * the specified route. 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. It differs from the newer - * SendToRouteV2 in that it doesn't return the full HTLC information. - * - * @deprecated - * @generated from protobuf rpc: SendToRoute(routerrpc.SendToRouteRequest) returns (routerrpc.SendToRouteResponse); - */ - sendToRoute(input: SendToRouteRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[4], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * SendToRouteV2 attempts to make a payment via the specified route. 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. - * - * @generated from protobuf rpc: SendToRouteV2(routerrpc.SendToRouteRequest) returns (lnrpc.HTLCAttempt); - */ - sendToRouteV2(input: SendToRouteRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[5], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * ResetMissionControl clears all mission control state and starts with a clean - * slate. - * - * @generated from protobuf rpc: ResetMissionControl(routerrpc.ResetMissionControlRequest) returns (routerrpc.ResetMissionControlResponse); - */ - resetMissionControl(input: ResetMissionControlRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[6], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * QueryMissionControl exposes the internal mission control state to callers. - * It is a development feature. - * - * @generated from protobuf rpc: QueryMissionControl(routerrpc.QueryMissionControlRequest) returns (routerrpc.QueryMissionControlResponse); - */ - queryMissionControl(input: QueryMissionControlRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[7], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * XImportMissionControl is an experimental API that imports the state provided - * to the internal mission control's state, using all results which are more - * recent than our existing values. These values will only be imported - * in-memory, and will not be persisted across restarts. - * - * @generated from protobuf rpc: XImportMissionControl(routerrpc.XImportMissionControlRequest) returns (routerrpc.XImportMissionControlResponse); - */ - xImportMissionControl(input: XImportMissionControlRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[8], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * GetMissionControlConfig returns mission control's current config. - * - * @generated from protobuf rpc: GetMissionControlConfig(routerrpc.GetMissionControlConfigRequest) returns (routerrpc.GetMissionControlConfigResponse); - */ - getMissionControlConfig(input: GetMissionControlConfigRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[9], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * SetMissionControlConfig will set mission control's config, if the config - * provided is valid. - * - * @generated from protobuf rpc: SetMissionControlConfig(routerrpc.SetMissionControlConfigRequest) returns (routerrpc.SetMissionControlConfigResponse); - */ - setMissionControlConfig(input: SetMissionControlConfigRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[10], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * QueryProbability returns the current success probability estimate for a - * given node pair and amount. - * - * @generated from protobuf rpc: QueryProbability(routerrpc.QueryProbabilityRequest) returns (routerrpc.QueryProbabilityResponse); - */ - queryProbability(input: QueryProbabilityRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[11], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * BuildRoute builds a fully specified route based on a list of hop public - * keys. It retrieves the relevant channel policies from the graph in order to - * calculate the correct fees and time locks. - * - * @generated from protobuf rpc: BuildRoute(routerrpc.BuildRouteRequest) returns (routerrpc.BuildRouteResponse); - */ - buildRoute(input: BuildRouteRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[12], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } - /** - * - * SubscribeHtlcEvents creates a uni-directional stream from the server to - * the client which delivers a stream of htlc events. - * - * @generated from protobuf rpc: SubscribeHtlcEvents(routerrpc.SubscribeHtlcEventsRequest) returns (stream routerrpc.HtlcEvent); - */ - subscribeHtlcEvents(input: SubscribeHtlcEventsRequest, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[13], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } - /** - * - * Deprecated, use SendPaymentV2. SendPayment attempts to route a payment - * described by the passed PaymentRequest to the final destination. The call - * returns a stream of payment status updates. - * - * @deprecated - * @generated from protobuf rpc: SendPayment(routerrpc.SendPaymentRequest) returns (stream routerrpc.PaymentStatus); - */ - sendPayment(input: SendPaymentRequest, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[14], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } - /** - * - * Deprecated, use TrackPaymentV2. TrackPayment returns an update stream for - * the payment identified by the payment hash. - * - * @deprecated - * @generated from protobuf rpc: TrackPayment(routerrpc.TrackPaymentRequest) returns (stream routerrpc.PaymentStatus); - */ - trackPayment(input: TrackPaymentRequest, options?: RpcOptions): ServerStreamingCall { - const method = this.methods[15], opt = this._transport.mergeOptions(options); - return stackIntercept("serverStreaming", this._transport, method, opt, input); - } - /** - * * - * HtlcInterceptor dispatches a bi-directional streaming RPC in which - * Forwarded HTLC requests are sent to the client and the client responds with - * a boolean that tells LND if this htlc should be intercepted. - * In case of interception, the htlc can be either settled, cancelled or - * resumed later by using the ResolveHoldForward endpoint. - * - * @generated from protobuf rpc: HtlcInterceptor(stream routerrpc.ForwardHtlcInterceptResponse) returns (stream routerrpc.ForwardHtlcInterceptRequest); - */ - htlcInterceptor(options?: RpcOptions): DuplexStreamingCall { - const method = this.methods[16], opt = this._transport.mergeOptions(options); - return stackIntercept("duplex", this._transport, method, opt); - } - /** - * - * UpdateChanStatus attempts to manually set the state of a channel - * (enabled, disabled, or auto). A manual "disable" request will cause the - * channel to stay disabled until a subsequent manual request of either - * "enable" or "auto". - * - * @generated from protobuf rpc: UpdateChanStatus(routerrpc.UpdateChanStatusRequest) returns (routerrpc.UpdateChanStatusResponse); - */ - updateChanStatus(input: UpdateChanStatusRequest, options?: RpcOptions): UnaryCall { - const method = this.methods[17], opt = this._transport.mergeOptions(options); - return stackIntercept("unary", this._transport, method, opt, input); - } -} +// @generated by protobuf-ts 2.8.1 +// @generated from protobuf file "router.proto" (package "routerrpc", syntax proto3) +// tslint:disable +import type { RpcTransport } from "@protobuf-ts/runtime-rpc"; +import type { ServiceInfo } from "@protobuf-ts/runtime-rpc"; +import { Router } from "./router.js"; +import type { UpdateChanStatusResponse } from "./router.js"; +import type { UpdateChanStatusRequest } from "./router.js"; +import type { ForwardHtlcInterceptRequest } from "./router.js"; +import type { ForwardHtlcInterceptResponse } from "./router.js"; +import type { DuplexStreamingCall } from "@protobuf-ts/runtime-rpc"; +import type { PaymentStatus } from "./router.js"; +import type { HtlcEvent } from "./router.js"; +import type { SubscribeHtlcEventsRequest } from "./router.js"; +import type { BuildRouteResponse } from "./router.js"; +import type { BuildRouteRequest } from "./router.js"; +import type { QueryProbabilityResponse } from "./router.js"; +import type { QueryProbabilityRequest } from "./router.js"; +import type { SetMissionControlConfigResponse } from "./router.js"; +import type { SetMissionControlConfigRequest } from "./router.js"; +import type { GetMissionControlConfigResponse } from "./router.js"; +import type { GetMissionControlConfigRequest } from "./router.js"; +import type { XImportMissionControlResponse } from "./router.js"; +import type { XImportMissionControlRequest } from "./router.js"; +import type { QueryMissionControlResponse } from "./router.js"; +import type { QueryMissionControlRequest } from "./router.js"; +import type { ResetMissionControlResponse } from "./router.js"; +import type { ResetMissionControlRequest } from "./router.js"; +import type { HTLCAttempt } from "./lightning.js"; +import type { SendToRouteResponse } from "./router.js"; +import type { SendToRouteRequest } from "./router.js"; +import type { RouteFeeResponse } from "./router.js"; +import type { RouteFeeRequest } from "./router.js"; +import type { UnaryCall } from "@protobuf-ts/runtime-rpc"; +import type { TrackPaymentsRequest } from "./router.js"; +import type { TrackPaymentRequest } from "./router.js"; +import { stackIntercept } from "@protobuf-ts/runtime-rpc"; +import type { Payment } from "./lightning.js"; +import type { SendPaymentRequest } from "./router.js"; +import type { ServerStreamingCall } from "@protobuf-ts/runtime-rpc"; +import type { RpcOptions } from "@protobuf-ts/runtime-rpc"; +/** + * Router is a service that offers advanced interaction with the router + * subsystem of the daemon. + * + * @generated from protobuf service routerrpc.Router + */ +export interface IRouterClient { + /** + * + * SendPaymentV2 attempts to route a payment described by the passed + * PaymentRequest to the final destination. The call returns a stream of + * payment updates. + * + * @generated from protobuf rpc: SendPaymentV2(routerrpc.SendPaymentRequest) returns (stream lnrpc.Payment); + */ + sendPaymentV2(input: SendPaymentRequest, options?: RpcOptions): ServerStreamingCall; + /** + * + * TrackPaymentV2 returns an update stream for the payment identified by the + * payment hash. + * + * @generated from protobuf rpc: TrackPaymentV2(routerrpc.TrackPaymentRequest) returns (stream lnrpc.Payment); + */ + trackPaymentV2(input: TrackPaymentRequest, options?: RpcOptions): ServerStreamingCall; + /** + * + * TrackPayments returns an update stream for every payment that is not in a + * terminal state. Note that if payments are in-flight while starting a new + * subscription, the start of the payment stream could produce out-of-order + * and/or duplicate events. In order to get updates for every in-flight + * payment attempt make sure to subscribe to this method before initiating any + * payments. + * + * @generated from protobuf rpc: TrackPayments(routerrpc.TrackPaymentsRequest) returns (stream lnrpc.Payment); + */ + trackPayments(input: TrackPaymentsRequest, options?: RpcOptions): ServerStreamingCall; + /** + * + * EstimateRouteFee allows callers to obtain a lower bound w.r.t how much it + * may cost to send an HTLC to the target end destination. + * + * @generated from protobuf rpc: EstimateRouteFee(routerrpc.RouteFeeRequest) returns (routerrpc.RouteFeeResponse); + */ + estimateRouteFee(input: RouteFeeRequest, options?: RpcOptions): UnaryCall; + /** + * + * Deprecated, use SendToRouteV2. SendToRoute attempts to make a payment via + * the specified route. 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. It differs from the newer + * SendToRouteV2 in that it doesn't return the full HTLC information. + * + * @deprecated + * @generated from protobuf rpc: SendToRoute(routerrpc.SendToRouteRequest) returns (routerrpc.SendToRouteResponse); + */ + sendToRoute(input: SendToRouteRequest, options?: RpcOptions): UnaryCall; + /** + * + * SendToRouteV2 attempts to make a payment via the specified route. 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. + * + * @generated from protobuf rpc: SendToRouteV2(routerrpc.SendToRouteRequest) returns (lnrpc.HTLCAttempt); + */ + sendToRouteV2(input: SendToRouteRequest, options?: RpcOptions): UnaryCall; + /** + * + * ResetMissionControl clears all mission control state and starts with a clean + * slate. + * + * @generated from protobuf rpc: ResetMissionControl(routerrpc.ResetMissionControlRequest) returns (routerrpc.ResetMissionControlResponse); + */ + resetMissionControl(input: ResetMissionControlRequest, options?: RpcOptions): UnaryCall; + /** + * + * QueryMissionControl exposes the internal mission control state to callers. + * It is a development feature. + * + * @generated from protobuf rpc: QueryMissionControl(routerrpc.QueryMissionControlRequest) returns (routerrpc.QueryMissionControlResponse); + */ + queryMissionControl(input: QueryMissionControlRequest, options?: RpcOptions): UnaryCall; + /** + * + * XImportMissionControl is an experimental API that imports the state provided + * to the internal mission control's state, using all results which are more + * recent than our existing values. These values will only be imported + * in-memory, and will not be persisted across restarts. + * + * @generated from protobuf rpc: XImportMissionControl(routerrpc.XImportMissionControlRequest) returns (routerrpc.XImportMissionControlResponse); + */ + xImportMissionControl(input: XImportMissionControlRequest, options?: RpcOptions): UnaryCall; + /** + * + * GetMissionControlConfig returns mission control's current config. + * + * @generated from protobuf rpc: GetMissionControlConfig(routerrpc.GetMissionControlConfigRequest) returns (routerrpc.GetMissionControlConfigResponse); + */ + getMissionControlConfig(input: GetMissionControlConfigRequest, options?: RpcOptions): UnaryCall; + /** + * + * SetMissionControlConfig will set mission control's config, if the config + * provided is valid. + * + * @generated from protobuf rpc: SetMissionControlConfig(routerrpc.SetMissionControlConfigRequest) returns (routerrpc.SetMissionControlConfigResponse); + */ + setMissionControlConfig(input: SetMissionControlConfigRequest, options?: RpcOptions): UnaryCall; + /** + * + * QueryProbability returns the current success probability estimate for a + * given node pair and amount. + * + * @generated from protobuf rpc: QueryProbability(routerrpc.QueryProbabilityRequest) returns (routerrpc.QueryProbabilityResponse); + */ + queryProbability(input: QueryProbabilityRequest, options?: RpcOptions): UnaryCall; + /** + * + * BuildRoute builds a fully specified route based on a list of hop public + * keys. It retrieves the relevant channel policies from the graph in order to + * calculate the correct fees and time locks. + * + * @generated from protobuf rpc: BuildRoute(routerrpc.BuildRouteRequest) returns (routerrpc.BuildRouteResponse); + */ + buildRoute(input: BuildRouteRequest, options?: RpcOptions): UnaryCall; + /** + * + * SubscribeHtlcEvents creates a uni-directional stream from the server to + * the client which delivers a stream of htlc events. + * + * @generated from protobuf rpc: SubscribeHtlcEvents(routerrpc.SubscribeHtlcEventsRequest) returns (stream routerrpc.HtlcEvent); + */ + subscribeHtlcEvents(input: SubscribeHtlcEventsRequest, options?: RpcOptions): ServerStreamingCall; + /** + * + * Deprecated, use SendPaymentV2. SendPayment attempts to route a payment + * described by the passed PaymentRequest to the final destination. The call + * returns a stream of payment status updates. + * + * @deprecated + * @generated from protobuf rpc: SendPayment(routerrpc.SendPaymentRequest) returns (stream routerrpc.PaymentStatus); + */ + sendPayment(input: SendPaymentRequest, options?: RpcOptions): ServerStreamingCall; + /** + * + * Deprecated, use TrackPaymentV2. TrackPayment returns an update stream for + * the payment identified by the payment hash. + * + * @deprecated + * @generated from protobuf rpc: TrackPayment(routerrpc.TrackPaymentRequest) returns (stream routerrpc.PaymentStatus); + */ + trackPayment(input: TrackPaymentRequest, options?: RpcOptions): ServerStreamingCall; + /** + * * + * HtlcInterceptor dispatches a bi-directional streaming RPC in which + * Forwarded HTLC requests are sent to the client and the client responds with + * a boolean that tells LND if this htlc should be intercepted. + * In case of interception, the htlc can be either settled, cancelled or + * resumed later by using the ResolveHoldForward endpoint. + * + * @generated from protobuf rpc: HtlcInterceptor(stream routerrpc.ForwardHtlcInterceptResponse) returns (stream routerrpc.ForwardHtlcInterceptRequest); + */ + htlcInterceptor(options?: RpcOptions): DuplexStreamingCall; + /** + * + * UpdateChanStatus attempts to manually set the state of a channel + * (enabled, disabled, or auto). A manual "disable" request will cause the + * channel to stay disabled until a subsequent manual request of either + * "enable" or "auto". + * + * @generated from protobuf rpc: UpdateChanStatus(routerrpc.UpdateChanStatusRequest) returns (routerrpc.UpdateChanStatusResponse); + */ + updateChanStatus(input: UpdateChanStatusRequest, options?: RpcOptions): UnaryCall; +} +/** + * Router is a service that offers advanced interaction with the router + * subsystem of the daemon. + * + * @generated from protobuf service routerrpc.Router + */ +export class RouterClient implements IRouterClient, ServiceInfo { + typeName = Router.typeName; + methods = Router.methods; + options = Router.options; + constructor(private readonly _transport: RpcTransport) { + } + /** + * + * SendPaymentV2 attempts to route a payment described by the passed + * PaymentRequest to the final destination. The call returns a stream of + * payment updates. + * + * @generated from protobuf rpc: SendPaymentV2(routerrpc.SendPaymentRequest) returns (stream lnrpc.Payment); + */ + sendPaymentV2(input: SendPaymentRequest, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[0], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } + /** + * + * TrackPaymentV2 returns an update stream for the payment identified by the + * payment hash. + * + * @generated from protobuf rpc: TrackPaymentV2(routerrpc.TrackPaymentRequest) returns (stream lnrpc.Payment); + */ + trackPaymentV2(input: TrackPaymentRequest, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[1], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } + /** + * + * TrackPayments returns an update stream for every payment that is not in a + * terminal state. Note that if payments are in-flight while starting a new + * subscription, the start of the payment stream could produce out-of-order + * and/or duplicate events. In order to get updates for every in-flight + * payment attempt make sure to subscribe to this method before initiating any + * payments. + * + * @generated from protobuf rpc: TrackPayments(routerrpc.TrackPaymentsRequest) returns (stream lnrpc.Payment); + */ + trackPayments(input: TrackPaymentsRequest, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[2], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } + /** + * + * EstimateRouteFee allows callers to obtain a lower bound w.r.t how much it + * may cost to send an HTLC to the target end destination. + * + * @generated from protobuf rpc: EstimateRouteFee(routerrpc.RouteFeeRequest) returns (routerrpc.RouteFeeResponse); + */ + estimateRouteFee(input: RouteFeeRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[3], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * Deprecated, use SendToRouteV2. SendToRoute attempts to make a payment via + * the specified route. 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. It differs from the newer + * SendToRouteV2 in that it doesn't return the full HTLC information. + * + * @deprecated + * @generated from protobuf rpc: SendToRoute(routerrpc.SendToRouteRequest) returns (routerrpc.SendToRouteResponse); + */ + sendToRoute(input: SendToRouteRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[4], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * SendToRouteV2 attempts to make a payment via the specified route. 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. + * + * @generated from protobuf rpc: SendToRouteV2(routerrpc.SendToRouteRequest) returns (lnrpc.HTLCAttempt); + */ + sendToRouteV2(input: SendToRouteRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[5], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * ResetMissionControl clears all mission control state and starts with a clean + * slate. + * + * @generated from protobuf rpc: ResetMissionControl(routerrpc.ResetMissionControlRequest) returns (routerrpc.ResetMissionControlResponse); + */ + resetMissionControl(input: ResetMissionControlRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[6], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * QueryMissionControl exposes the internal mission control state to callers. + * It is a development feature. + * + * @generated from protobuf rpc: QueryMissionControl(routerrpc.QueryMissionControlRequest) returns (routerrpc.QueryMissionControlResponse); + */ + queryMissionControl(input: QueryMissionControlRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[7], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * XImportMissionControl is an experimental API that imports the state provided + * to the internal mission control's state, using all results which are more + * recent than our existing values. These values will only be imported + * in-memory, and will not be persisted across restarts. + * + * @generated from protobuf rpc: XImportMissionControl(routerrpc.XImportMissionControlRequest) returns (routerrpc.XImportMissionControlResponse); + */ + xImportMissionControl(input: XImportMissionControlRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[8], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * GetMissionControlConfig returns mission control's current config. + * + * @generated from protobuf rpc: GetMissionControlConfig(routerrpc.GetMissionControlConfigRequest) returns (routerrpc.GetMissionControlConfigResponse); + */ + getMissionControlConfig(input: GetMissionControlConfigRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[9], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * SetMissionControlConfig will set mission control's config, if the config + * provided is valid. + * + * @generated from protobuf rpc: SetMissionControlConfig(routerrpc.SetMissionControlConfigRequest) returns (routerrpc.SetMissionControlConfigResponse); + */ + setMissionControlConfig(input: SetMissionControlConfigRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[10], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * QueryProbability returns the current success probability estimate for a + * given node pair and amount. + * + * @generated from protobuf rpc: QueryProbability(routerrpc.QueryProbabilityRequest) returns (routerrpc.QueryProbabilityResponse); + */ + queryProbability(input: QueryProbabilityRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[11], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * BuildRoute builds a fully specified route based on a list of hop public + * keys. It retrieves the relevant channel policies from the graph in order to + * calculate the correct fees and time locks. + * + * @generated from protobuf rpc: BuildRoute(routerrpc.BuildRouteRequest) returns (routerrpc.BuildRouteResponse); + */ + buildRoute(input: BuildRouteRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[12], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } + /** + * + * SubscribeHtlcEvents creates a uni-directional stream from the server to + * the client which delivers a stream of htlc events. + * + * @generated from protobuf rpc: SubscribeHtlcEvents(routerrpc.SubscribeHtlcEventsRequest) returns (stream routerrpc.HtlcEvent); + */ + subscribeHtlcEvents(input: SubscribeHtlcEventsRequest, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[13], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } + /** + * + * Deprecated, use SendPaymentV2. SendPayment attempts to route a payment + * described by the passed PaymentRequest to the final destination. The call + * returns a stream of payment status updates. + * + * @deprecated + * @generated from protobuf rpc: SendPayment(routerrpc.SendPaymentRequest) returns (stream routerrpc.PaymentStatus); + */ + sendPayment(input: SendPaymentRequest, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[14], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } + /** + * + * Deprecated, use TrackPaymentV2. TrackPayment returns an update stream for + * the payment identified by the payment hash. + * + * @deprecated + * @generated from protobuf rpc: TrackPayment(routerrpc.TrackPaymentRequest) returns (stream routerrpc.PaymentStatus); + */ + trackPayment(input: TrackPaymentRequest, options?: RpcOptions): ServerStreamingCall { + const method = this.methods[15], opt = this._transport.mergeOptions(options); + return stackIntercept("serverStreaming", this._transport, method, opt, input); + } + /** + * * + * HtlcInterceptor dispatches a bi-directional streaming RPC in which + * Forwarded HTLC requests are sent to the client and the client responds with + * a boolean that tells LND if this htlc should be intercepted. + * In case of interception, the htlc can be either settled, cancelled or + * resumed later by using the ResolveHoldForward endpoint. + * + * @generated from protobuf rpc: HtlcInterceptor(stream routerrpc.ForwardHtlcInterceptResponse) returns (stream routerrpc.ForwardHtlcInterceptRequest); + */ + htlcInterceptor(options?: RpcOptions): DuplexStreamingCall { + const method = this.methods[16], opt = this._transport.mergeOptions(options); + return stackIntercept("duplex", this._transport, method, opt); + } + /** + * + * UpdateChanStatus attempts to manually set the state of a channel + * (enabled, disabled, or auto). A manual "disable" request will cause the + * channel to stay disabled until a subsequent manual request of either + * "enable" or "auto". + * + * @generated from protobuf rpc: UpdateChanStatus(routerrpc.UpdateChanStatusRequest) returns (routerrpc.UpdateChanStatusResponse); + */ + updateChanStatus(input: UpdateChanStatusRequest, options?: RpcOptions): UnaryCall { + const method = this.methods[17], opt = this._transport.mergeOptions(options); + return stackIntercept("unary", this._transport, method, opt, input); + } +} diff --git a/proto/lnd/router.ts b/proto/lnd/router.ts index 199b1fc1..edb624cd 100644 --- a/proto/lnd/router.ts +++ b/proto/lnd/router.ts @@ -1,3544 +1,3544 @@ -// @generated by protobuf-ts 2.8.1 -// @generated from protobuf file "router.proto" (package "routerrpc", syntax proto3) -// tslint:disable -import { Payment } from "./lightning.js"; -import { ServiceType } from "@protobuf-ts/runtime-rpc"; -import type { BinaryWriteOptions } from "@protobuf-ts/runtime"; -import type { IBinaryWriter } from "@protobuf-ts/runtime"; -import type { BinaryReadOptions } from "@protobuf-ts/runtime"; -import type { IBinaryReader } from "@protobuf-ts/runtime"; -import { UnknownFieldHandler } from "@protobuf-ts/runtime"; -import { WireType } from "@protobuf-ts/runtime"; -import type { PartialMessage } from "@protobuf-ts/runtime"; -import { reflectionMergePartial } from "@protobuf-ts/runtime"; -import { MESSAGE_TYPE } from "@protobuf-ts/runtime"; -import { MessageType } from "@protobuf-ts/runtime"; -import { ChannelPoint } from "./lightning.js"; -import { HTLCAttempt } from "./lightning.js"; -import { Failure_FailureCode } from "./lightning.js"; -import { Failure } from "./lightning.js"; -import { Route } from "./lightning.js"; -import { FeatureBit } from "./lightning.js"; -import { RouteHint } from "./lightning.js"; -/** - * @generated from protobuf message routerrpc.SendPaymentRequest - */ -export interface SendPaymentRequest { - /** - * The identity pubkey of the payment recipient - * - * @generated from protobuf field: bytes dest = 1; - */ - dest: Uint8Array; - /** - * - * Number of satoshis to send. - * - * The fields amt and amt_msat are mutually exclusive. - * - * @generated from protobuf field: int64 amt = 2; - */ - amt: bigint; - /** - * - * Number of millisatoshis to send. - * - * The fields amt and amt_msat are mutually exclusive. - * - * @generated from protobuf field: int64 amt_msat = 12; - */ - amtMsat: bigint; - /** - * The hash to use within the payment's HTLC - * - * @generated from protobuf field: bytes payment_hash = 3; - */ - paymentHash: Uint8Array; - /** - * - * The CLTV delta from the current height that should be used to set the - * timelock for the final hop. - * - * @generated from protobuf field: int32 final_cltv_delta = 4; - */ - finalCltvDelta: number; - /** - * An optional payment addr to be included within the last hop of the route. - * - * @generated from protobuf field: bytes payment_addr = 20; - */ - paymentAddr: Uint8Array; - /** - * - * 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. The amount in the payment request may be zero. In - * that case it is required to set the amt field as well. If no payment request - * is specified, the following fields are required: dest, amt and payment_hash. - * - * @generated from protobuf field: string payment_request = 5; - */ - paymentRequest: string; - /** - * - * An upper limit on the amount of time we should spend when attempting to - * fulfill the payment. This is expressed in seconds. If we cannot make a - * successful payment within this time frame, an error will be returned. - * This field must be non-zero. - * - * @generated from protobuf field: int32 timeout_seconds = 6; - */ - timeoutSeconds: number; - /** - * - * The maximum number of satoshis that will be paid as a fee of the payment. - * If this field is left to the default value of 0, only zero-fee routes will - * be considered. This usually means single hop routes connecting directly to - * the destination. To send the payment without a fee limit, use max int here. - * - * The fields fee_limit_sat and fee_limit_msat are mutually exclusive. - * - * @generated from protobuf field: int64 fee_limit_sat = 7; - */ - feeLimitSat: bigint; - /** - * - * The maximum number of millisatoshis that will be paid as a fee of the - * payment. If this field is left to the default value of 0, only zero-fee - * routes will be considered. This usually means single hop routes connecting - * directly to the destination. To send the payment without a fee limit, use - * max int here. - * - * The fields fee_limit_sat and fee_limit_msat are mutually exclusive. - * - * @generated from protobuf field: int64 fee_limit_msat = 13; - */ - feeLimitMsat: bigint; - /** - * - * Deprecated, use outgoing_chan_ids. The channel id of the channel that must - * be taken to the first hop. If zero, any channel may be used (unless - * outgoing_chan_ids are set). - * - * @deprecated - * @generated from protobuf field: uint64 outgoing_chan_id = 8 [deprecated = true, jstype = JS_STRING]; - */ - outgoingChanId: string; - /** - * - * The channel ids of the channels are allowed for the first hop. If empty, - * any channel may be used. - * - * @generated from protobuf field: repeated uint64 outgoing_chan_ids = 19; - */ - outgoingChanIds: bigint[]; - /** - * - * The pubkey of the last hop of the route. If empty, any hop may be used. - * - * @generated from protobuf field: bytes last_hop_pubkey = 14; - */ - lastHopPubkey: Uint8Array; - /** - * - * 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. - * - * @generated from protobuf field: int32 cltv_limit = 9; - */ - cltvLimit: number; - /** - * - * Optional route hints to reach the destination through private channels. - * - * @generated from protobuf field: repeated lnrpc.RouteHint route_hints = 10; - */ - routeHints: RouteHint[]; - /** - * - * 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. - * - * @generated from protobuf field: map dest_custom_records = 11; - */ - destCustomRecords: { - [key: string]: Uint8Array; - }; - /** - * If set, circular payments to self are permitted. - * - * @generated from protobuf field: bool allow_self_payment = 15; - */ - allowSelfPayment: boolean; - /** - * - * 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. - * - * @generated from protobuf field: repeated lnrpc.FeatureBit dest_features = 16; - */ - destFeatures: FeatureBit[]; - /** - * - * The maximum number of partial payments that may be use to complete the full - * amount. - * - * @generated from protobuf field: uint32 max_parts = 17; - */ - maxParts: number; - /** - * - * If set, only the final payment update is streamed back. Intermediate updates - * that show which htlcs are still in flight are suppressed. - * - * @generated from protobuf field: bool no_inflight_updates = 18; - */ - noInflightUpdates: boolean; - /** - * - * The largest payment split that should be attempted when making a payment if - * splitting is necessary. Setting this value will effectively cause lnd to - * split more aggressively, vs only when it thinks it needs to. Note that this - * value is in milli-satoshis. - * - * @generated from protobuf field: uint64 max_shard_size_msat = 21; - */ - maxShardSizeMsat: bigint; - /** - * - * If set, an AMP-payment will be attempted. - * - * @generated from protobuf field: bool amp = 22; - */ - amp: boolean; - /** - * - * The time preference for this payment. Set to -1 to optimize for fees - * only, to 1 to optimize for reliability only or a value inbetween for a mix. - * - * @generated from protobuf field: double time_pref = 23; - */ - timePref: number; -} -/** - * @generated from protobuf message routerrpc.TrackPaymentRequest - */ -export interface TrackPaymentRequest { - /** - * The hash of the payment to look up. - * - * @generated from protobuf field: bytes payment_hash = 1; - */ - paymentHash: Uint8Array; - /** - * - * If set, only the final payment update is streamed back. Intermediate updates - * that show which htlcs are still in flight are suppressed. - * - * @generated from protobuf field: bool no_inflight_updates = 2; - */ - noInflightUpdates: boolean; -} -/** - * @generated from protobuf message routerrpc.TrackPaymentsRequest - */ -export interface TrackPaymentsRequest { - /** - * - * If set, only the final payment updates are streamed back. Intermediate - * updates that show which htlcs are still in flight are suppressed. - * - * @generated from protobuf field: bool no_inflight_updates = 1; - */ - noInflightUpdates: boolean; -} -/** - * @generated from protobuf message routerrpc.RouteFeeRequest - */ -export interface RouteFeeRequest { - /** - * - * The destination once wishes to obtain a routing fee quote to. - * - * @generated from protobuf field: bytes dest = 1; - */ - dest: Uint8Array; - /** - * - * The amount one wishes to send to the target destination. - * - * @generated from protobuf field: int64 amt_sat = 2; - */ - amtSat: bigint; -} -/** - * @generated from protobuf message routerrpc.RouteFeeResponse - */ -export interface RouteFeeResponse { - /** - * - * A lower bound of the estimated fee to the target destination within the - * network, expressed in milli-satoshis. - * - * @generated from protobuf field: int64 routing_fee_msat = 1; - */ - routingFeeMsat: bigint; - /** - * - * An estimate of the worst case time delay that can occur. Note that callers - * will still need to factor in the final CLTV delta of the last hop into this - * value. - * - * @generated from protobuf field: int64 time_lock_delay = 2; - */ - timeLockDelay: bigint; -} -/** - * @generated from protobuf message routerrpc.SendToRouteRequest - */ -export interface SendToRouteRequest { - /** - * The payment hash to use for the HTLC. - * - * @generated from protobuf field: bytes payment_hash = 1; - */ - paymentHash: Uint8Array; - /** - * Route that should be used to attempt to complete the payment. - * - * @generated from protobuf field: lnrpc.Route route = 2; - */ - route?: Route; - /** - * - * Whether the payment should be marked as failed when a temporary error is - * returned from the given route. Set it to true so the payment won't be - * failed unless a terminal error is occurred, such as payment timeout, no - * routes, incorrect payment details, or insufficient funds. - * - * @generated from protobuf field: bool skip_temp_err = 3; - */ - skipTempErr: boolean; -} -/** - * @generated from protobuf message routerrpc.SendToRouteResponse - */ -export interface SendToRouteResponse { - /** - * The preimage obtained by making the payment. - * - * @generated from protobuf field: bytes preimage = 1; - */ - preimage: Uint8Array; - /** - * The failure message in case the payment failed. - * - * @generated from protobuf field: lnrpc.Failure failure = 2; - */ - failure?: Failure; -} -/** - * @generated from protobuf message routerrpc.ResetMissionControlRequest - */ -export interface ResetMissionControlRequest { -} -/** - * @generated from protobuf message routerrpc.ResetMissionControlResponse - */ -export interface ResetMissionControlResponse { -} -/** - * @generated from protobuf message routerrpc.QueryMissionControlRequest - */ -export interface QueryMissionControlRequest { -} -/** - * QueryMissionControlResponse contains mission control state. - * - * @generated from protobuf message routerrpc.QueryMissionControlResponse - */ -export interface QueryMissionControlResponse { - /** - * Node pair-level mission control state. - * - * @generated from protobuf field: repeated routerrpc.PairHistory pairs = 2; - */ - pairs: PairHistory[]; -} -/** - * @generated from protobuf message routerrpc.XImportMissionControlRequest - */ -export interface XImportMissionControlRequest { - /** - * Node pair-level mission control state to be imported. - * - * @generated from protobuf field: repeated routerrpc.PairHistory pairs = 1; - */ - pairs: PairHistory[]; - /** - * Whether to force override MC pair history. Note that even with force - * override the failure pair is imported before the success pair and both - * still clamp existing failure/success amounts. - * - * @generated from protobuf field: bool force = 2; - */ - force: boolean; -} -/** - * @generated from protobuf message routerrpc.XImportMissionControlResponse - */ -export interface XImportMissionControlResponse { -} -/** - * PairHistory contains the mission control state for a particular node pair. - * - * @generated from protobuf message routerrpc.PairHistory - */ -export interface PairHistory { - /** - * The source node pubkey of the pair. - * - * @generated from protobuf field: bytes node_from = 1; - */ - nodeFrom: Uint8Array; - /** - * The destination node pubkey of the pair. - * - * @generated from protobuf field: bytes node_to = 2; - */ - nodeTo: Uint8Array; - /** - * @generated from protobuf field: routerrpc.PairData history = 7; - */ - history?: PairData; -} -/** - * @generated from protobuf message routerrpc.PairData - */ -export interface PairData { - /** - * Time of last failure. - * - * @generated from protobuf field: int64 fail_time = 1; - */ - failTime: bigint; - /** - * - * Lowest amount that failed to forward rounded to whole sats. This may be - * set to zero if the failure is independent of amount. - * - * @generated from protobuf field: int64 fail_amt_sat = 2; - */ - failAmtSat: bigint; - /** - * - * Lowest amount that failed to forward in millisats. This may be - * set to zero if the failure is independent of amount. - * - * @generated from protobuf field: int64 fail_amt_msat = 4; - */ - failAmtMsat: bigint; - /** - * Time of last success. - * - * @generated from protobuf field: int64 success_time = 5; - */ - successTime: bigint; - /** - * Highest amount that we could successfully forward rounded to whole sats. - * - * @generated from protobuf field: int64 success_amt_sat = 6; - */ - successAmtSat: bigint; - /** - * Highest amount that we could successfully forward in millisats. - * - * @generated from protobuf field: int64 success_amt_msat = 7; - */ - successAmtMsat: bigint; -} -/** - * @generated from protobuf message routerrpc.GetMissionControlConfigRequest - */ -export interface GetMissionControlConfigRequest { -} -/** - * @generated from protobuf message routerrpc.GetMissionControlConfigResponse - */ -export interface GetMissionControlConfigResponse { - /** - * - * Mission control's currently active config. - * - * @generated from protobuf field: routerrpc.MissionControlConfig config = 1; - */ - config?: MissionControlConfig; -} -/** - * @generated from protobuf message routerrpc.SetMissionControlConfigRequest - */ -export interface SetMissionControlConfigRequest { - /** - * - * The config to set for mission control. Note that all values *must* be set, - * because the full config will be applied. - * - * @generated from protobuf field: routerrpc.MissionControlConfig config = 1; - */ - config?: MissionControlConfig; -} -/** - * @generated from protobuf message routerrpc.SetMissionControlConfigResponse - */ -export interface SetMissionControlConfigResponse { -} -/** - * @generated from protobuf message routerrpc.MissionControlConfig - */ -export interface MissionControlConfig { - /** - * - * The amount of time mission control will take to restore a penalized node - * or channel back to 50% success probability, expressed in seconds. Setting - * this value to a higher value will penalize failures for longer, making - * mission control less likely to route through nodes and channels that we - * have previously recorded failures for. - * - * @generated from protobuf field: uint64 half_life_seconds = 1; - */ - halfLifeSeconds: bigint; - /** - * - * The probability of success mission control should assign to hop in a route - * where it has no other information available. Higher values will make mission - * control more willing to try hops that we have no information about, lower - * values will discourage trying these hops. - * - * @generated from protobuf field: float hop_probability = 2; - */ - hopProbability: number; - /** - * - * The importance that mission control should place on historical results, - * expressed as a value in [0;1]. Setting this value to 1 will ignore all - * historical payments and just use the hop probability to assess the - * probability of success for each hop. A zero value ignores hop probability - * completely and relies entirely on historical results, unless none are - * available. - * - * @generated from protobuf field: float weight = 3; - */ - weight: number; - /** - * - * The maximum number of payment results that mission control will store. - * - * @generated from protobuf field: uint32 maximum_payment_results = 4; - */ - maximumPaymentResults: number; - /** - * - * The minimum time that must have passed since the previously recorded failure - * before we raise the failure amount. - * - * @generated from protobuf field: uint64 minimum_failure_relax_interval = 5; - */ - minimumFailureRelaxInterval: bigint; -} -/** - * @generated from protobuf message routerrpc.QueryProbabilityRequest - */ -export interface QueryProbabilityRequest { - /** - * The source node pubkey of the pair. - * - * @generated from protobuf field: bytes from_node = 1; - */ - fromNode: Uint8Array; - /** - * The destination node pubkey of the pair. - * - * @generated from protobuf field: bytes to_node = 2; - */ - toNode: Uint8Array; - /** - * The amount for which to calculate a probability. - * - * @generated from protobuf field: int64 amt_msat = 3; - */ - amtMsat: bigint; -} -/** - * @generated from protobuf message routerrpc.QueryProbabilityResponse - */ -export interface QueryProbabilityResponse { - /** - * The success probability for the requested pair. - * - * @generated from protobuf field: double probability = 1; - */ - probability: number; - /** - * The historical data for the requested pair. - * - * @generated from protobuf field: routerrpc.PairData history = 2; - */ - history?: PairData; -} -/** - * @generated from protobuf message routerrpc.BuildRouteRequest - */ -export interface BuildRouteRequest { - /** - * - * The amount to send expressed in msat. If set to zero, the minimum routable - * amount is used. - * - * @generated from protobuf field: int64 amt_msat = 1; - */ - amtMsat: bigint; - /** - * - * CLTV delta from the current height that should be used for the timelock - * of the final hop - * - * @generated from protobuf field: int32 final_cltv_delta = 2; - */ - finalCltvDelta: number; - /** - * - * The channel id of the channel that must be taken to the first hop. If zero, - * any channel may be used. - * - * @generated from protobuf field: uint64 outgoing_chan_id = 3 [jstype = JS_STRING]; - */ - outgoingChanId: string; - /** - * - * A list of hops that defines the route. This does not include the source hop - * pubkey. - * - * @generated from protobuf field: repeated bytes hop_pubkeys = 4; - */ - hopPubkeys: Uint8Array[]; - /** - * An optional payment addr to be included within the last hop of the route. - * - * @generated from protobuf field: bytes payment_addr = 5; - */ - paymentAddr: Uint8Array; -} -/** - * @generated from protobuf message routerrpc.BuildRouteResponse - */ -export interface BuildRouteResponse { - /** - * - * Fully specified route that can be used to execute the payment. - * - * @generated from protobuf field: lnrpc.Route route = 1; - */ - route?: Route; -} -/** - * @generated from protobuf message routerrpc.SubscribeHtlcEventsRequest - */ -export interface SubscribeHtlcEventsRequest { -} -/** - * - * HtlcEvent contains the htlc event that was processed. These are served on a - * best-effort basis; events are not persisted, delivery is not guaranteed - * (in the event of a crash in the switch, forward events may be lost) and - * some events may be replayed upon restart. Events consumed from this package - * should be de-duplicated by the htlc's unique combination of incoming and - * outgoing channel id and htlc id. [EXPERIMENTAL] - * - * @generated from protobuf message routerrpc.HtlcEvent - */ -export interface HtlcEvent { - /** - * - * The short channel id that the incoming htlc arrived at our node on. This - * value is zero for sends. - * - * @generated from protobuf field: uint64 incoming_channel_id = 1; - */ - incomingChannelId: bigint; - /** - * - * The short channel id that the outgoing htlc left our node on. This value - * is zero for receives. - * - * @generated from protobuf field: uint64 outgoing_channel_id = 2; - */ - outgoingChannelId: bigint; - /** - * - * Incoming id is the index of the incoming htlc in the incoming channel. - * This value is zero for sends. - * - * @generated from protobuf field: uint64 incoming_htlc_id = 3; - */ - incomingHtlcId: bigint; - /** - * - * Outgoing id is the index of the outgoing htlc in the outgoing channel. - * This value is zero for receives. - * - * @generated from protobuf field: uint64 outgoing_htlc_id = 4; - */ - outgoingHtlcId: bigint; - /** - * - * The time in unix nanoseconds that the event occurred. - * - * @generated from protobuf field: uint64 timestamp_ns = 5; - */ - timestampNs: bigint; - /** - * - * The event type indicates whether the htlc was part of a send, receive or - * forward. - * - * @generated from protobuf field: routerrpc.HtlcEvent.EventType event_type = 6; - */ - eventType: HtlcEvent_EventType; - /** - * @generated from protobuf oneof: event - */ - event: { - oneofKind: "forwardEvent"; - /** - * @generated from protobuf field: routerrpc.ForwardEvent forward_event = 7; - */ - forwardEvent: ForwardEvent; - } | { - oneofKind: "forwardFailEvent"; - /** - * @generated from protobuf field: routerrpc.ForwardFailEvent forward_fail_event = 8; - */ - forwardFailEvent: ForwardFailEvent; - } | { - oneofKind: "settleEvent"; - /** - * @generated from protobuf field: routerrpc.SettleEvent settle_event = 9; - */ - settleEvent: SettleEvent; - } | { - oneofKind: "linkFailEvent"; - /** - * @generated from protobuf field: routerrpc.LinkFailEvent link_fail_event = 10; - */ - linkFailEvent: LinkFailEvent; - } | { - oneofKind: "subscribedEvent"; - /** - * @generated from protobuf field: routerrpc.SubscribedEvent subscribed_event = 11; - */ - subscribedEvent: SubscribedEvent; - } | { - oneofKind: "finalHtlcEvent"; - /** - * @generated from protobuf field: routerrpc.FinalHtlcEvent final_htlc_event = 12; - */ - finalHtlcEvent: FinalHtlcEvent; - } | { - oneofKind: undefined; - }; -} -/** - * @generated from protobuf enum routerrpc.HtlcEvent.EventType - */ -export enum HtlcEvent_EventType { - /** - * @generated from protobuf enum value: UNKNOWN = 0; - */ - UNKNOWN = 0, - /** - * @generated from protobuf enum value: SEND = 1; - */ - SEND = 1, - /** - * @generated from protobuf enum value: RECEIVE = 2; - */ - RECEIVE = 2, - /** - * @generated from protobuf enum value: FORWARD = 3; - */ - FORWARD = 3 -} -/** - * @generated from protobuf message routerrpc.HtlcInfo - */ -export interface HtlcInfo { - /** - * The timelock on the incoming htlc. - * - * @generated from protobuf field: uint32 incoming_timelock = 1; - */ - incomingTimelock: number; - /** - * The timelock on the outgoing htlc. - * - * @generated from protobuf field: uint32 outgoing_timelock = 2; - */ - outgoingTimelock: number; - /** - * The amount of the incoming htlc. - * - * @generated from protobuf field: uint64 incoming_amt_msat = 3; - */ - incomingAmtMsat: bigint; - /** - * The amount of the outgoing htlc. - * - * @generated from protobuf field: uint64 outgoing_amt_msat = 4; - */ - outgoingAmtMsat: bigint; -} -/** - * @generated from protobuf message routerrpc.ForwardEvent - */ -export interface ForwardEvent { - /** - * Info contains details about the htlc that was forwarded. - * - * @generated from protobuf field: routerrpc.HtlcInfo info = 1; - */ - info?: HtlcInfo; -} -/** - * @generated from protobuf message routerrpc.ForwardFailEvent - */ -export interface ForwardFailEvent { -} -/** - * @generated from protobuf message routerrpc.SettleEvent - */ -export interface SettleEvent { - /** - * The revealed preimage. - * - * @generated from protobuf field: bytes preimage = 1; - */ - preimage: Uint8Array; -} -/** - * @generated from protobuf message routerrpc.FinalHtlcEvent - */ -export interface FinalHtlcEvent { - /** - * @generated from protobuf field: bool settled = 1; - */ - settled: boolean; - /** - * @generated from protobuf field: bool offchain = 2; - */ - offchain: boolean; -} -/** - * @generated from protobuf message routerrpc.SubscribedEvent - */ -export interface SubscribedEvent { -} -/** - * @generated from protobuf message routerrpc.LinkFailEvent - */ -export interface LinkFailEvent { - /** - * Info contains details about the htlc that we failed. - * - * @generated from protobuf field: routerrpc.HtlcInfo info = 1; - */ - info?: HtlcInfo; - /** - * FailureCode is the BOLT error code for the failure. - * - * @generated from protobuf field: lnrpc.Failure.FailureCode wire_failure = 2; - */ - wireFailure: Failure_FailureCode; - /** - * - * FailureDetail provides additional information about the reason for the - * failure. This detail enriches the information provided by the wire message - * and may be 'no detail' if the wire message requires no additional metadata. - * - * @generated from protobuf field: routerrpc.FailureDetail failure_detail = 3; - */ - failureDetail: FailureDetail; - /** - * A string representation of the link failure. - * - * @generated from protobuf field: string failure_string = 4; - */ - failureString: string; -} -/** - * @generated from protobuf message routerrpc.PaymentStatus - */ -export interface PaymentStatus { - /** - * Current state the payment is in. - * - * @generated from protobuf field: routerrpc.PaymentState state = 1; - */ - state: PaymentState; - /** - * - * The pre-image of the payment when state is SUCCEEDED. - * - * @generated from protobuf field: bytes preimage = 2; - */ - preimage: Uint8Array; - /** - * - * The HTLCs made in attempt to settle the payment [EXPERIMENTAL]. - * - * @generated from protobuf field: repeated lnrpc.HTLCAttempt htlcs = 4; - */ - htlcs: HTLCAttempt[]; -} -/** - * @generated from protobuf message routerrpc.CircuitKey - */ -export interface CircuitKey { - /** - * / The id of the channel that the is part of this circuit. - * - * @generated from protobuf field: uint64 chan_id = 1; - */ - chanId: bigint; - /** - * / The index of the incoming htlc in the incoming channel. - * - * @generated from protobuf field: uint64 htlc_id = 2; - */ - htlcId: bigint; -} -/** - * @generated from protobuf message routerrpc.ForwardHtlcInterceptRequest - */ -export interface ForwardHtlcInterceptRequest { - /** - * - * The key of this forwarded htlc. It defines the incoming channel id and - * the index in this channel. - * - * @generated from protobuf field: routerrpc.CircuitKey incoming_circuit_key = 1; - */ - incomingCircuitKey?: CircuitKey; - /** - * The incoming htlc amount. - * - * @generated from protobuf field: uint64 incoming_amount_msat = 5; - */ - incomingAmountMsat: bigint; - /** - * The incoming htlc expiry. - * - * @generated from protobuf field: uint32 incoming_expiry = 6; - */ - incomingExpiry: number; - /** - * - * The htlc payment hash. This value is not guaranteed to be unique per - * request. - * - * @generated from protobuf field: bytes payment_hash = 2; - */ - paymentHash: Uint8Array; - /** - * The requested outgoing channel id for this forwarded htlc. Because of - * non-strict forwarding, this isn't necessarily the channel over which the - * packet will be forwarded eventually. A different channel to the same peer - * may be selected as well. - * - * @generated from protobuf field: uint64 outgoing_requested_chan_id = 7; - */ - outgoingRequestedChanId: bigint; - /** - * The outgoing htlc amount. - * - * @generated from protobuf field: uint64 outgoing_amount_msat = 3; - */ - outgoingAmountMsat: bigint; - /** - * The outgoing htlc expiry. - * - * @generated from protobuf field: uint32 outgoing_expiry = 4; - */ - outgoingExpiry: number; - /** - * Any custom records that were present in the payload. - * - * @generated from protobuf field: map custom_records = 8; - */ - customRecords: { - [key: string]: Uint8Array; - }; - /** - * The onion blob for the next hop - * - * @generated from protobuf field: bytes onion_blob = 9; - */ - onionBlob: Uint8Array; - /** - * The block height at which this htlc will be auto-failed to prevent the - * channel from force-closing. - * - * @generated from protobuf field: int32 auto_fail_height = 10; - */ - autoFailHeight: number; -} -/** - * * - * ForwardHtlcInterceptResponse enables the caller to resolve a previously hold - * forward. The caller can choose either to: - * - `Resume`: Execute the default behavior (usually forward). - * - `Reject`: Fail the htlc backwards. - * - `Settle`: Settle this htlc with a given preimage. - * - * @generated from protobuf message routerrpc.ForwardHtlcInterceptResponse - */ -export interface ForwardHtlcInterceptResponse { - /** - * * - * The key of this forwarded htlc. It defines the incoming channel id and - * the index in this channel. - * - * @generated from protobuf field: routerrpc.CircuitKey incoming_circuit_key = 1; - */ - incomingCircuitKey?: CircuitKey; - /** - * The resolve action for this intercepted htlc. - * - * @generated from protobuf field: routerrpc.ResolveHoldForwardAction action = 2; - */ - action: ResolveHoldForwardAction; - /** - * The preimage in case the resolve action is Settle. - * - * @generated from protobuf field: bytes preimage = 3; - */ - preimage: Uint8Array; - /** - * Encrypted failure message in case the resolve action is Fail. - * - * If failure_message is specified, the failure_code field must be set - * to zero. - * - * @generated from protobuf field: bytes failure_message = 4; - */ - failureMessage: Uint8Array; - /** - * Return the specified failure code in case the resolve action is Fail. The - * message data fields are populated automatically. - * - * If a non-zero failure_code is specified, failure_message must not be set. - * - * For backwards-compatibility reasons, TEMPORARY_CHANNEL_FAILURE is the - * default value for this field. - * - * @generated from protobuf field: lnrpc.Failure.FailureCode failure_code = 5; - */ - failureCode: Failure_FailureCode; -} -/** - * @generated from protobuf message routerrpc.UpdateChanStatusRequest - */ -export interface UpdateChanStatusRequest { - /** - * @generated from protobuf field: lnrpc.ChannelPoint chan_point = 1; - */ - chanPoint?: ChannelPoint; - /** - * @generated from protobuf field: routerrpc.ChanStatusAction action = 2; - */ - action: ChanStatusAction; -} -/** - * @generated from protobuf message routerrpc.UpdateChanStatusResponse - */ -export interface UpdateChanStatusResponse { -} -/** - * @generated from protobuf enum routerrpc.FailureDetail - */ -export enum FailureDetail { - /** - * @generated from protobuf enum value: UNKNOWN = 0; - */ - UNKNOWN = 0, - /** - * @generated from protobuf enum value: NO_DETAIL = 1; - */ - NO_DETAIL = 1, - /** - * @generated from protobuf enum value: ONION_DECODE = 2; - */ - ONION_DECODE = 2, - /** - * @generated from protobuf enum value: LINK_NOT_ELIGIBLE = 3; - */ - LINK_NOT_ELIGIBLE = 3, - /** - * @generated from protobuf enum value: ON_CHAIN_TIMEOUT = 4; - */ - ON_CHAIN_TIMEOUT = 4, - /** - * @generated from protobuf enum value: HTLC_EXCEEDS_MAX = 5; - */ - HTLC_EXCEEDS_MAX = 5, - /** - * @generated from protobuf enum value: INSUFFICIENT_BALANCE = 6; - */ - INSUFFICIENT_BALANCE = 6, - /** - * @generated from protobuf enum value: INCOMPLETE_FORWARD = 7; - */ - INCOMPLETE_FORWARD = 7, - /** - * @generated from protobuf enum value: HTLC_ADD_FAILED = 8; - */ - HTLC_ADD_FAILED = 8, - /** - * @generated from protobuf enum value: FORWARDS_DISABLED = 9; - */ - FORWARDS_DISABLED = 9, - /** - * @generated from protobuf enum value: INVOICE_CANCELED = 10; - */ - INVOICE_CANCELED = 10, - /** - * @generated from protobuf enum value: INVOICE_UNDERPAID = 11; - */ - INVOICE_UNDERPAID = 11, - /** - * @generated from protobuf enum value: INVOICE_EXPIRY_TOO_SOON = 12; - */ - INVOICE_EXPIRY_TOO_SOON = 12, - /** - * @generated from protobuf enum value: INVOICE_NOT_OPEN = 13; - */ - INVOICE_NOT_OPEN = 13, - /** - * @generated from protobuf enum value: MPP_INVOICE_TIMEOUT = 14; - */ - MPP_INVOICE_TIMEOUT = 14, - /** - * @generated from protobuf enum value: ADDRESS_MISMATCH = 15; - */ - ADDRESS_MISMATCH = 15, - /** - * @generated from protobuf enum value: SET_TOTAL_MISMATCH = 16; - */ - SET_TOTAL_MISMATCH = 16, - /** - * @generated from protobuf enum value: SET_TOTAL_TOO_LOW = 17; - */ - SET_TOTAL_TOO_LOW = 17, - /** - * @generated from protobuf enum value: SET_OVERPAID = 18; - */ - SET_OVERPAID = 18, - /** - * @generated from protobuf enum value: UNKNOWN_INVOICE = 19; - */ - UNKNOWN_INVOICE = 19, - /** - * @generated from protobuf enum value: INVALID_KEYSEND = 20; - */ - INVALID_KEYSEND = 20, - /** - * @generated from protobuf enum value: MPP_IN_PROGRESS = 21; - */ - MPP_IN_PROGRESS = 21, - /** - * @generated from protobuf enum value: CIRCULAR_ROUTE = 22; - */ - CIRCULAR_ROUTE = 22 -} -/** - * @generated from protobuf enum routerrpc.PaymentState - */ -export enum PaymentState { - /** - * - * Payment is still in flight. - * - * @generated from protobuf enum value: IN_FLIGHT = 0; - */ - IN_FLIGHT = 0, - /** - * - * Payment completed successfully. - * - * @generated from protobuf enum value: SUCCEEDED = 1; - */ - SUCCEEDED = 1, - /** - * - * There are more routes to try, but the payment timeout was exceeded. - * - * @generated from protobuf enum value: FAILED_TIMEOUT = 2; - */ - FAILED_TIMEOUT = 2, - /** - * - * All possible routes were tried and failed permanently. Or were no - * routes to the destination at all. - * - * @generated from protobuf enum value: FAILED_NO_ROUTE = 3; - */ - FAILED_NO_ROUTE = 3, - /** - * - * A non-recoverable error has occurred. - * - * @generated from protobuf enum value: FAILED_ERROR = 4; - */ - FAILED_ERROR = 4, - /** - * - * Payment details incorrect (unknown hash, invalid amt or - * invalid final cltv delta) - * - * @generated from protobuf enum value: FAILED_INCORRECT_PAYMENT_DETAILS = 5; - */ - FAILED_INCORRECT_PAYMENT_DETAILS = 5, - /** - * - * Insufficient local balance. - * - * @generated from protobuf enum value: FAILED_INSUFFICIENT_BALANCE = 6; - */ - FAILED_INSUFFICIENT_BALANCE = 6 -} -/** - * @generated from protobuf enum routerrpc.ResolveHoldForwardAction - */ -export enum ResolveHoldForwardAction { - /** - * @generated from protobuf enum value: SETTLE = 0; - */ - SETTLE = 0, - /** - * @generated from protobuf enum value: FAIL = 1; - */ - FAIL = 1, - /** - * @generated from protobuf enum value: RESUME = 2; - */ - RESUME = 2 -} -/** - * @generated from protobuf enum routerrpc.ChanStatusAction - */ -export enum ChanStatusAction { - /** - * @generated from protobuf enum value: ENABLE = 0; - */ - ENABLE = 0, - /** - * @generated from protobuf enum value: DISABLE = 1; - */ - DISABLE = 1, - /** - * @generated from protobuf enum value: AUTO = 2; - */ - AUTO = 2 -} -// @generated message type with reflection information, may provide speed optimized methods -class SendPaymentRequest$Type extends MessageType { - constructor() { - super("routerrpc.SendPaymentRequest", [ - { no: 1, name: "dest", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "amt", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 12, name: "amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 4, name: "final_cltv_delta", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 20, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 5, name: "payment_request", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, - { no: 6, name: "timeout_seconds", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 7, name: "fee_limit_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 13, name: "fee_limit_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 8, name: "outgoing_chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 19, name: "outgoing_chan_ids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 14, name: "last_hop_pubkey", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 9, name: "cltv_limit", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 10, name: "route_hints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => RouteHint }, - { no: 11, name: "dest_custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } }, - { no: 15, name: "allow_self_payment", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 16, name: "dest_features", kind: "enum", repeat: 1 /*RepeatType.PACKED*/, T: () => ["lnrpc.FeatureBit", FeatureBit] }, - { no: 17, name: "max_parts", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 18, name: "no_inflight_updates", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 21, name: "max_shard_size_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 22, name: "amp", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 23, name: "time_pref", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ } - ]); - } - create(value?: PartialMessage): SendPaymentRequest { - const message = { dest: new Uint8Array(0), amt: 0n, amtMsat: 0n, paymentHash: new Uint8Array(0), finalCltvDelta: 0, paymentAddr: new Uint8Array(0), paymentRequest: "", timeoutSeconds: 0, feeLimitSat: 0n, feeLimitMsat: 0n, outgoingChanId: "0", outgoingChanIds: [], lastHopPubkey: new Uint8Array(0), cltvLimit: 0, routeHints: [], destCustomRecords: {}, allowSelfPayment: false, destFeatures: [], maxParts: 0, noInflightUpdates: false, maxShardSizeMsat: 0n, amp: false, timePref: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendPaymentRequest): SendPaymentRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes dest */ 1: - message.dest = reader.bytes(); - break; - case /* int64 amt */ 2: - message.amt = reader.int64().toBigInt(); - break; - case /* int64 amt_msat */ 12: - message.amtMsat = reader.int64().toBigInt(); - break; - case /* bytes payment_hash */ 3: - message.paymentHash = reader.bytes(); - break; - case /* int32 final_cltv_delta */ 4: - message.finalCltvDelta = reader.int32(); - break; - case /* bytes payment_addr */ 20: - message.paymentAddr = reader.bytes(); - break; - case /* string payment_request */ 5: - message.paymentRequest = reader.string(); - break; - case /* int32 timeout_seconds */ 6: - message.timeoutSeconds = reader.int32(); - break; - case /* int64 fee_limit_sat */ 7: - message.feeLimitSat = reader.int64().toBigInt(); - break; - case /* int64 fee_limit_msat */ 13: - message.feeLimitMsat = reader.int64().toBigInt(); - break; - case /* uint64 outgoing_chan_id = 8 [deprecated = true, jstype = JS_STRING];*/ 8: - message.outgoingChanId = reader.uint64().toString(); - break; - case /* repeated uint64 outgoing_chan_ids */ 19: - if (wireType === WireType.LengthDelimited) - for (let e = reader.int32() + reader.pos; reader.pos < e;) - message.outgoingChanIds.push(reader.uint64().toBigInt()); - else - message.outgoingChanIds.push(reader.uint64().toBigInt()); - break; - case /* bytes last_hop_pubkey */ 14: - message.lastHopPubkey = reader.bytes(); - break; - case /* int32 cltv_limit */ 9: - message.cltvLimit = reader.int32(); - break; - case /* repeated lnrpc.RouteHint route_hints */ 10: - message.routeHints.push(RouteHint.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* map dest_custom_records */ 11: - this.binaryReadMap11(message.destCustomRecords, reader, options); - break; - case /* bool allow_self_payment */ 15: - message.allowSelfPayment = reader.bool(); - break; - case /* repeated lnrpc.FeatureBit dest_features */ 16: - if (wireType === WireType.LengthDelimited) - for (let e = reader.int32() + reader.pos; reader.pos < e;) - message.destFeatures.push(reader.int32()); - else - message.destFeatures.push(reader.int32()); - break; - case /* uint32 max_parts */ 17: - message.maxParts = reader.uint32(); - break; - case /* bool no_inflight_updates */ 18: - message.noInflightUpdates = reader.bool(); - break; - case /* uint64 max_shard_size_msat */ 21: - message.maxShardSizeMsat = reader.uint64().toBigInt(); - break; - case /* bool amp */ 22: - message.amp = reader.bool(); - break; - case /* double time_pref */ 23: - message.timePref = reader.double(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap11(map: SendPaymentRequest["destCustomRecords"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof SendPaymentRequest["destCustomRecords"] | undefined, val: SendPaymentRequest["destCustomRecords"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint64().toString(); - break; - case 2: - val = reader.bytes(); - break; - default: throw new globalThis.Error("unknown map entry field for field routerrpc.SendPaymentRequest.dest_custom_records"); - } - } - map[key ?? "0"] = val ?? new Uint8Array(0); - } - internalBinaryWrite(message: SendPaymentRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes dest = 1; */ - if (message.dest.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.dest); - /* int64 amt = 2; */ - if (message.amt !== 0n) - writer.tag(2, WireType.Varint).int64(message.amt); - /* int64 amt_msat = 12; */ - if (message.amtMsat !== 0n) - writer.tag(12, WireType.Varint).int64(message.amtMsat); - /* bytes payment_hash = 3; */ - if (message.paymentHash.length) - writer.tag(3, WireType.LengthDelimited).bytes(message.paymentHash); - /* int32 final_cltv_delta = 4; */ - if (message.finalCltvDelta !== 0) - writer.tag(4, WireType.Varint).int32(message.finalCltvDelta); - /* bytes payment_addr = 20; */ - if (message.paymentAddr.length) - writer.tag(20, WireType.LengthDelimited).bytes(message.paymentAddr); - /* string payment_request = 5; */ - if (message.paymentRequest !== "") - writer.tag(5, WireType.LengthDelimited).string(message.paymentRequest); - /* int32 timeout_seconds = 6; */ - if (message.timeoutSeconds !== 0) - writer.tag(6, WireType.Varint).int32(message.timeoutSeconds); - /* int64 fee_limit_sat = 7; */ - if (message.feeLimitSat !== 0n) - writer.tag(7, WireType.Varint).int64(message.feeLimitSat); - /* int64 fee_limit_msat = 13; */ - if (message.feeLimitMsat !== 0n) - writer.tag(13, WireType.Varint).int64(message.feeLimitMsat); - /* uint64 outgoing_chan_id = 8 [deprecated = true, jstype = JS_STRING]; */ - if (message.outgoingChanId !== "0") - writer.tag(8, WireType.Varint).uint64(message.outgoingChanId); - /* repeated uint64 outgoing_chan_ids = 19; */ - if (message.outgoingChanIds.length) { - writer.tag(19, WireType.LengthDelimited).fork(); - for (let i = 0; i < message.outgoingChanIds.length; i++) - writer.uint64(message.outgoingChanIds[i]); - writer.join(); - } - /* bytes last_hop_pubkey = 14; */ - if (message.lastHopPubkey.length) - writer.tag(14, WireType.LengthDelimited).bytes(message.lastHopPubkey); - /* int32 cltv_limit = 9; */ - if (message.cltvLimit !== 0) - writer.tag(9, WireType.Varint).int32(message.cltvLimit); - /* repeated lnrpc.RouteHint route_hints = 10; */ - for (let i = 0; i < message.routeHints.length; i++) - RouteHint.internalBinaryWrite(message.routeHints[i], writer.tag(10, WireType.LengthDelimited).fork(), options).join(); - /* map dest_custom_records = 11; */ - for (let k of Object.keys(message.destCustomRecords)) - writer.tag(11, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint64(k).tag(2, WireType.LengthDelimited).bytes(message.destCustomRecords[k]).join(); - /* bool allow_self_payment = 15; */ - if (message.allowSelfPayment !== false) - writer.tag(15, WireType.Varint).bool(message.allowSelfPayment); - /* repeated lnrpc.FeatureBit dest_features = 16; */ - if (message.destFeatures.length) { - writer.tag(16, WireType.LengthDelimited).fork(); - for (let i = 0; i < message.destFeatures.length; i++) - writer.int32(message.destFeatures[i]); - writer.join(); - } - /* uint32 max_parts = 17; */ - if (message.maxParts !== 0) - writer.tag(17, WireType.Varint).uint32(message.maxParts); - /* bool no_inflight_updates = 18; */ - if (message.noInflightUpdates !== false) - writer.tag(18, WireType.Varint).bool(message.noInflightUpdates); - /* uint64 max_shard_size_msat = 21; */ - if (message.maxShardSizeMsat !== 0n) - writer.tag(21, WireType.Varint).uint64(message.maxShardSizeMsat); - /* bool amp = 22; */ - if (message.amp !== false) - writer.tag(22, WireType.Varint).bool(message.amp); - /* double time_pref = 23; */ - if (message.timePref !== 0) - writer.tag(23, WireType.Bit64).double(message.timePref); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.SendPaymentRequest - */ -export const SendPaymentRequest = new SendPaymentRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class TrackPaymentRequest$Type extends MessageType { - constructor() { - super("routerrpc.TrackPaymentRequest", [ - { no: 1, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "no_inflight_updates", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): TrackPaymentRequest { - const message = { paymentHash: new Uint8Array(0), noInflightUpdates: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TrackPaymentRequest): TrackPaymentRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes payment_hash */ 1: - message.paymentHash = reader.bytes(); - break; - case /* bool no_inflight_updates */ 2: - message.noInflightUpdates = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: TrackPaymentRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes payment_hash = 1; */ - if (message.paymentHash.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.paymentHash); - /* bool no_inflight_updates = 2; */ - if (message.noInflightUpdates !== false) - writer.tag(2, WireType.Varint).bool(message.noInflightUpdates); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.TrackPaymentRequest - */ -export const TrackPaymentRequest = new TrackPaymentRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class TrackPaymentsRequest$Type extends MessageType { - constructor() { - super("routerrpc.TrackPaymentsRequest", [ - { no: 1, name: "no_inflight_updates", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): TrackPaymentsRequest { - const message = { noInflightUpdates: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TrackPaymentsRequest): TrackPaymentsRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool no_inflight_updates */ 1: - message.noInflightUpdates = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: TrackPaymentsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool no_inflight_updates = 1; */ - if (message.noInflightUpdates !== false) - writer.tag(1, WireType.Varint).bool(message.noInflightUpdates); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.TrackPaymentsRequest - */ -export const TrackPaymentsRequest = new TrackPaymentsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class RouteFeeRequest$Type extends MessageType { - constructor() { - super("routerrpc.RouteFeeRequest", [ - { no: 1, name: "dest", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "amt_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): RouteFeeRequest { - const message = { dest: new Uint8Array(0), amtSat: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RouteFeeRequest): RouteFeeRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes dest */ 1: - message.dest = reader.bytes(); - break; - case /* int64 amt_sat */ 2: - message.amtSat = reader.int64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: RouteFeeRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes dest = 1; */ - if (message.dest.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.dest); - /* int64 amt_sat = 2; */ - if (message.amtSat !== 0n) - writer.tag(2, WireType.Varint).int64(message.amtSat); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.RouteFeeRequest - */ -export const RouteFeeRequest = new RouteFeeRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class RouteFeeResponse$Type extends MessageType { - constructor() { - super("routerrpc.RouteFeeResponse", [ - { no: 1, name: "routing_fee_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "time_lock_delay", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): RouteFeeResponse { - const message = { routingFeeMsat: 0n, timeLockDelay: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RouteFeeResponse): RouteFeeResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 routing_fee_msat */ 1: - message.routingFeeMsat = reader.int64().toBigInt(); - break; - case /* int64 time_lock_delay */ 2: - message.timeLockDelay = reader.int64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: RouteFeeResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* int64 routing_fee_msat = 1; */ - if (message.routingFeeMsat !== 0n) - writer.tag(1, WireType.Varint).int64(message.routingFeeMsat); - /* int64 time_lock_delay = 2; */ - if (message.timeLockDelay !== 0n) - writer.tag(2, WireType.Varint).int64(message.timeLockDelay); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.RouteFeeResponse - */ -export const RouteFeeResponse = new RouteFeeResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendToRouteRequest$Type extends MessageType { - constructor() { - super("routerrpc.SendToRouteRequest", [ - { no: 1, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "route", kind: "message", T: () => Route }, - { no: 3, name: "skip_temp_err", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): SendToRouteRequest { - const message = { paymentHash: new Uint8Array(0), skipTempErr: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendToRouteRequest): SendToRouteRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes payment_hash */ 1: - message.paymentHash = reader.bytes(); - break; - case /* lnrpc.Route route */ 2: - message.route = Route.internalBinaryRead(reader, reader.uint32(), options, message.route); - break; - case /* bool skip_temp_err */ 3: - message.skipTempErr = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: SendToRouteRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes payment_hash = 1; */ - if (message.paymentHash.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.paymentHash); - /* lnrpc.Route route = 2; */ - if (message.route) - Route.internalBinaryWrite(message.route, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - /* bool skip_temp_err = 3; */ - if (message.skipTempErr !== false) - writer.tag(3, WireType.Varint).bool(message.skipTempErr); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.SendToRouteRequest - */ -export const SendToRouteRequest = new SendToRouteRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SendToRouteResponse$Type extends MessageType { - constructor() { - super("routerrpc.SendToRouteResponse", [ - { no: 1, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "failure", kind: "message", T: () => Failure } - ]); - } - create(value?: PartialMessage): SendToRouteResponse { - const message = { preimage: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendToRouteResponse): SendToRouteResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes preimage */ 1: - message.preimage = reader.bytes(); - break; - case /* lnrpc.Failure failure */ 2: - message.failure = Failure.internalBinaryRead(reader, reader.uint32(), options, message.failure); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: SendToRouteResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes preimage = 1; */ - if (message.preimage.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.preimage); - /* lnrpc.Failure failure = 2; */ - if (message.failure) - Failure.internalBinaryWrite(message.failure, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.SendToRouteResponse - */ -export const SendToRouteResponse = new SendToRouteResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ResetMissionControlRequest$Type extends MessageType { - constructor() { - super("routerrpc.ResetMissionControlRequest", []); - } - create(value?: PartialMessage): ResetMissionControlRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ResetMissionControlRequest): ResetMissionControlRequest { - return target ?? this.create(); - } - internalBinaryWrite(message: ResetMissionControlRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.ResetMissionControlRequest - */ -export const ResetMissionControlRequest = new ResetMissionControlRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ResetMissionControlResponse$Type extends MessageType { - constructor() { - super("routerrpc.ResetMissionControlResponse", []); - } - create(value?: PartialMessage): ResetMissionControlResponse { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ResetMissionControlResponse): ResetMissionControlResponse { - return target ?? this.create(); - } - internalBinaryWrite(message: ResetMissionControlResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.ResetMissionControlResponse - */ -export const ResetMissionControlResponse = new ResetMissionControlResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class QueryMissionControlRequest$Type extends MessageType { - constructor() { - super("routerrpc.QueryMissionControlRequest", []); - } - create(value?: PartialMessage): QueryMissionControlRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryMissionControlRequest): QueryMissionControlRequest { - return target ?? this.create(); - } - internalBinaryWrite(message: QueryMissionControlRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.QueryMissionControlRequest - */ -export const QueryMissionControlRequest = new QueryMissionControlRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class QueryMissionControlResponse$Type extends MessageType { - constructor() { - super("routerrpc.QueryMissionControlResponse", [ - { no: 2, name: "pairs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => PairHistory } - ]); - } - create(value?: PartialMessage): QueryMissionControlResponse { - const message = { pairs: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryMissionControlResponse): QueryMissionControlResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated routerrpc.PairHistory pairs */ 2: - message.pairs.push(PairHistory.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: QueryMissionControlResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated routerrpc.PairHistory pairs = 2; */ - for (let i = 0; i < message.pairs.length; i++) - PairHistory.internalBinaryWrite(message.pairs[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.QueryMissionControlResponse - */ -export const QueryMissionControlResponse = new QueryMissionControlResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class XImportMissionControlRequest$Type extends MessageType { - constructor() { - super("routerrpc.XImportMissionControlRequest", [ - { no: 1, name: "pairs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => PairHistory }, - { no: 2, name: "force", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): XImportMissionControlRequest { - const message = { pairs: [], force: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: XImportMissionControlRequest): XImportMissionControlRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* repeated routerrpc.PairHistory pairs */ 1: - message.pairs.push(PairHistory.internalBinaryRead(reader, reader.uint32(), options)); - break; - case /* bool force */ 2: - message.force = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: XImportMissionControlRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* repeated routerrpc.PairHistory pairs = 1; */ - for (let i = 0; i < message.pairs.length; i++) - PairHistory.internalBinaryWrite(message.pairs[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* bool force = 2; */ - if (message.force !== false) - writer.tag(2, WireType.Varint).bool(message.force); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.XImportMissionControlRequest - */ -export const XImportMissionControlRequest = new XImportMissionControlRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class XImportMissionControlResponse$Type extends MessageType { - constructor() { - super("routerrpc.XImportMissionControlResponse", []); - } - create(value?: PartialMessage): XImportMissionControlResponse { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: XImportMissionControlResponse): XImportMissionControlResponse { - return target ?? this.create(); - } - internalBinaryWrite(message: XImportMissionControlResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.XImportMissionControlResponse - */ -export const XImportMissionControlResponse = new XImportMissionControlResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PairHistory$Type extends MessageType { - constructor() { - super("routerrpc.PairHistory", [ - { no: 1, name: "node_from", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "node_to", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 7, name: "history", kind: "message", T: () => PairData } - ]); - } - create(value?: PartialMessage): PairHistory { - const message = { nodeFrom: new Uint8Array(0), nodeTo: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PairHistory): PairHistory { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes node_from */ 1: - message.nodeFrom = reader.bytes(); - break; - case /* bytes node_to */ 2: - message.nodeTo = reader.bytes(); - break; - case /* routerrpc.PairData history */ 7: - message.history = PairData.internalBinaryRead(reader, reader.uint32(), options, message.history); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PairHistory, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes node_from = 1; */ - if (message.nodeFrom.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.nodeFrom); - /* bytes node_to = 2; */ - if (message.nodeTo.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.nodeTo); - /* routerrpc.PairData history = 7; */ - if (message.history) - PairData.internalBinaryWrite(message.history, writer.tag(7, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.PairHistory - */ -export const PairHistory = new PairHistory$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PairData$Type extends MessageType { - constructor() { - super("routerrpc.PairData", [ - { no: 1, name: "fail_time", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "fail_amt_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "fail_amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "success_time", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "success_amt_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 7, name: "success_amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): PairData { - const message = { failTime: 0n, failAmtSat: 0n, failAmtMsat: 0n, successTime: 0n, successAmtSat: 0n, successAmtMsat: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PairData): PairData { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 fail_time */ 1: - message.failTime = reader.int64().toBigInt(); - break; - case /* int64 fail_amt_sat */ 2: - message.failAmtSat = reader.int64().toBigInt(); - break; - case /* int64 fail_amt_msat */ 4: - message.failAmtMsat = reader.int64().toBigInt(); - break; - case /* int64 success_time */ 5: - message.successTime = reader.int64().toBigInt(); - break; - case /* int64 success_amt_sat */ 6: - message.successAmtSat = reader.int64().toBigInt(); - break; - case /* int64 success_amt_msat */ 7: - message.successAmtMsat = reader.int64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PairData, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* int64 fail_time = 1; */ - if (message.failTime !== 0n) - writer.tag(1, WireType.Varint).int64(message.failTime); - /* int64 fail_amt_sat = 2; */ - if (message.failAmtSat !== 0n) - writer.tag(2, WireType.Varint).int64(message.failAmtSat); - /* int64 fail_amt_msat = 4; */ - if (message.failAmtMsat !== 0n) - writer.tag(4, WireType.Varint).int64(message.failAmtMsat); - /* int64 success_time = 5; */ - if (message.successTime !== 0n) - writer.tag(5, WireType.Varint).int64(message.successTime); - /* int64 success_amt_sat = 6; */ - if (message.successAmtSat !== 0n) - writer.tag(6, WireType.Varint).int64(message.successAmtSat); - /* int64 success_amt_msat = 7; */ - if (message.successAmtMsat !== 0n) - writer.tag(7, WireType.Varint).int64(message.successAmtMsat); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.PairData - */ -export const PairData = new PairData$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class GetMissionControlConfigRequest$Type extends MessageType { - constructor() { - super("routerrpc.GetMissionControlConfigRequest", []); - } - create(value?: PartialMessage): GetMissionControlConfigRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetMissionControlConfigRequest): GetMissionControlConfigRequest { - return target ?? this.create(); - } - internalBinaryWrite(message: GetMissionControlConfigRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.GetMissionControlConfigRequest - */ -export const GetMissionControlConfigRequest = new GetMissionControlConfigRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class GetMissionControlConfigResponse$Type extends MessageType { - constructor() { - super("routerrpc.GetMissionControlConfigResponse", [ - { no: 1, name: "config", kind: "message", T: () => MissionControlConfig } - ]); - } - create(value?: PartialMessage): GetMissionControlConfigResponse { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetMissionControlConfigResponse): GetMissionControlConfigResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* routerrpc.MissionControlConfig config */ 1: - message.config = MissionControlConfig.internalBinaryRead(reader, reader.uint32(), options, message.config); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: GetMissionControlConfigResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* routerrpc.MissionControlConfig config = 1; */ - if (message.config) - MissionControlConfig.internalBinaryWrite(message.config, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.GetMissionControlConfigResponse - */ -export const GetMissionControlConfigResponse = new GetMissionControlConfigResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SetMissionControlConfigRequest$Type extends MessageType { - constructor() { - super("routerrpc.SetMissionControlConfigRequest", [ - { no: 1, name: "config", kind: "message", T: () => MissionControlConfig } - ]); - } - create(value?: PartialMessage): SetMissionControlConfigRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SetMissionControlConfigRequest): SetMissionControlConfigRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* routerrpc.MissionControlConfig config */ 1: - message.config = MissionControlConfig.internalBinaryRead(reader, reader.uint32(), options, message.config); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: SetMissionControlConfigRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* routerrpc.MissionControlConfig config = 1; */ - if (message.config) - MissionControlConfig.internalBinaryWrite(message.config, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.SetMissionControlConfigRequest - */ -export const SetMissionControlConfigRequest = new SetMissionControlConfigRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SetMissionControlConfigResponse$Type extends MessageType { - constructor() { - super("routerrpc.SetMissionControlConfigResponse", []); - } - create(value?: PartialMessage): SetMissionControlConfigResponse { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SetMissionControlConfigResponse): SetMissionControlConfigResponse { - return target ?? this.create(); - } - internalBinaryWrite(message: SetMissionControlConfigResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.SetMissionControlConfigResponse - */ -export const SetMissionControlConfigResponse = new SetMissionControlConfigResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class MissionControlConfig$Type extends MessageType { - constructor() { - super("routerrpc.MissionControlConfig", [ - { no: 1, name: "half_life_seconds", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "hop_probability", kind: "scalar", T: 2 /*ScalarType.FLOAT*/ }, - { no: 3, name: "weight", kind: "scalar", T: 2 /*ScalarType.FLOAT*/ }, - { no: 4, name: "maximum_payment_results", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 5, name: "minimum_failure_relax_interval", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): MissionControlConfig { - const message = { halfLifeSeconds: 0n, hopProbability: 0, weight: 0, maximumPaymentResults: 0, minimumFailureRelaxInterval: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MissionControlConfig): MissionControlConfig { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 half_life_seconds */ 1: - message.halfLifeSeconds = reader.uint64().toBigInt(); - break; - case /* float hop_probability */ 2: - message.hopProbability = reader.float(); - break; - case /* float weight */ 3: - message.weight = reader.float(); - break; - case /* uint32 maximum_payment_results */ 4: - message.maximumPaymentResults = reader.uint32(); - break; - case /* uint64 minimum_failure_relax_interval */ 5: - message.minimumFailureRelaxInterval = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: MissionControlConfig, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 half_life_seconds = 1; */ - if (message.halfLifeSeconds !== 0n) - writer.tag(1, WireType.Varint).uint64(message.halfLifeSeconds); - /* float hop_probability = 2; */ - if (message.hopProbability !== 0) - writer.tag(2, WireType.Bit32).float(message.hopProbability); - /* float weight = 3; */ - if (message.weight !== 0) - writer.tag(3, WireType.Bit32).float(message.weight); - /* uint32 maximum_payment_results = 4; */ - if (message.maximumPaymentResults !== 0) - writer.tag(4, WireType.Varint).uint32(message.maximumPaymentResults); - /* uint64 minimum_failure_relax_interval = 5; */ - if (message.minimumFailureRelaxInterval !== 0n) - writer.tag(5, WireType.Varint).uint64(message.minimumFailureRelaxInterval); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.MissionControlConfig - */ -export const MissionControlConfig = new MissionControlConfig$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class QueryProbabilityRequest$Type extends MessageType { - constructor() { - super("routerrpc.QueryProbabilityRequest", [ - { no: 1, name: "from_node", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 2, name: "to_node", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 3, name: "amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): QueryProbabilityRequest { - const message = { fromNode: new Uint8Array(0), toNode: new Uint8Array(0), amtMsat: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryProbabilityRequest): QueryProbabilityRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes from_node */ 1: - message.fromNode = reader.bytes(); - break; - case /* bytes to_node */ 2: - message.toNode = reader.bytes(); - break; - case /* int64 amt_msat */ 3: - message.amtMsat = reader.int64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: QueryProbabilityRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes from_node = 1; */ - if (message.fromNode.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.fromNode); - /* bytes to_node = 2; */ - if (message.toNode.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.toNode); - /* int64 amt_msat = 3; */ - if (message.amtMsat !== 0n) - writer.tag(3, WireType.Varint).int64(message.amtMsat); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.QueryProbabilityRequest - */ -export const QueryProbabilityRequest = new QueryProbabilityRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class QueryProbabilityResponse$Type extends MessageType { - constructor() { - super("routerrpc.QueryProbabilityResponse", [ - { no: 1, name: "probability", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ }, - { no: 2, name: "history", kind: "message", T: () => PairData } - ]); - } - create(value?: PartialMessage): QueryProbabilityResponse { - const message = { probability: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryProbabilityResponse): QueryProbabilityResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* double probability */ 1: - message.probability = reader.double(); - break; - case /* routerrpc.PairData history */ 2: - message.history = PairData.internalBinaryRead(reader, reader.uint32(), options, message.history); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: QueryProbabilityResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* double probability = 1; */ - if (message.probability !== 0) - writer.tag(1, WireType.Bit64).double(message.probability); - /* routerrpc.PairData history = 2; */ - if (message.history) - PairData.internalBinaryWrite(message.history, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.QueryProbabilityResponse - */ -export const QueryProbabilityResponse = new QueryProbabilityResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class BuildRouteRequest$Type extends MessageType { - constructor() { - super("routerrpc.BuildRouteRequest", [ - { no: 1, name: "amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "final_cltv_delta", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, - { no: 3, name: "outgoing_chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, - { no: 4, name: "hop_pubkeys", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 12 /*ScalarType.BYTES*/ }, - { no: 5, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): BuildRouteRequest { - const message = { amtMsat: 0n, finalCltvDelta: 0, outgoingChanId: "0", hopPubkeys: [], paymentAddr: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BuildRouteRequest): BuildRouteRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* int64 amt_msat */ 1: - message.amtMsat = reader.int64().toBigInt(); - break; - case /* int32 final_cltv_delta */ 2: - message.finalCltvDelta = reader.int32(); - break; - case /* uint64 outgoing_chan_id = 3 [jstype = JS_STRING];*/ 3: - message.outgoingChanId = reader.uint64().toString(); - break; - case /* repeated bytes hop_pubkeys */ 4: - message.hopPubkeys.push(reader.bytes()); - break; - case /* bytes payment_addr */ 5: - message.paymentAddr = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: BuildRouteRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* int64 amt_msat = 1; */ - if (message.amtMsat !== 0n) - writer.tag(1, WireType.Varint).int64(message.amtMsat); - /* int32 final_cltv_delta = 2; */ - if (message.finalCltvDelta !== 0) - writer.tag(2, WireType.Varint).int32(message.finalCltvDelta); - /* uint64 outgoing_chan_id = 3 [jstype = JS_STRING]; */ - if (message.outgoingChanId !== "0") - writer.tag(3, WireType.Varint).uint64(message.outgoingChanId); - /* repeated bytes hop_pubkeys = 4; */ - for (let i = 0; i < message.hopPubkeys.length; i++) - writer.tag(4, WireType.LengthDelimited).bytes(message.hopPubkeys[i]); - /* bytes payment_addr = 5; */ - if (message.paymentAddr.length) - writer.tag(5, WireType.LengthDelimited).bytes(message.paymentAddr); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.BuildRouteRequest - */ -export const BuildRouteRequest = new BuildRouteRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class BuildRouteResponse$Type extends MessageType { - constructor() { - super("routerrpc.BuildRouteResponse", [ - { no: 1, name: "route", kind: "message", T: () => Route } - ]); - } - create(value?: PartialMessage): BuildRouteResponse { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BuildRouteResponse): BuildRouteResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.Route route */ 1: - message.route = Route.internalBinaryRead(reader, reader.uint32(), options, message.route); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: BuildRouteResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.Route route = 1; */ - if (message.route) - Route.internalBinaryWrite(message.route, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.BuildRouteResponse - */ -export const BuildRouteResponse = new BuildRouteResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SubscribeHtlcEventsRequest$Type extends MessageType { - constructor() { - super("routerrpc.SubscribeHtlcEventsRequest", []); - } - create(value?: PartialMessage): SubscribeHtlcEventsRequest { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SubscribeHtlcEventsRequest): SubscribeHtlcEventsRequest { - return target ?? this.create(); - } - internalBinaryWrite(message: SubscribeHtlcEventsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.SubscribeHtlcEventsRequest - */ -export const SubscribeHtlcEventsRequest = new SubscribeHtlcEventsRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class HtlcEvent$Type extends MessageType { - constructor() { - super("routerrpc.HtlcEvent", [ - { no: 1, name: "incoming_channel_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "outgoing_channel_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "incoming_htlc_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "outgoing_htlc_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 5, name: "timestamp_ns", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "event_type", kind: "enum", T: () => ["routerrpc.HtlcEvent.EventType", HtlcEvent_EventType] }, - { no: 7, name: "forward_event", kind: "message", oneof: "event", T: () => ForwardEvent }, - { no: 8, name: "forward_fail_event", kind: "message", oneof: "event", T: () => ForwardFailEvent }, - { no: 9, name: "settle_event", kind: "message", oneof: "event", T: () => SettleEvent }, - { no: 10, name: "link_fail_event", kind: "message", oneof: "event", T: () => LinkFailEvent }, - { no: 11, name: "subscribed_event", kind: "message", oneof: "event", T: () => SubscribedEvent }, - { no: 12, name: "final_htlc_event", kind: "message", oneof: "event", T: () => FinalHtlcEvent } - ]); - } - create(value?: PartialMessage): HtlcEvent { - const message = { incomingChannelId: 0n, outgoingChannelId: 0n, incomingHtlcId: 0n, outgoingHtlcId: 0n, timestampNs: 0n, eventType: 0, event: { oneofKind: undefined } }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: HtlcEvent): HtlcEvent { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 incoming_channel_id */ 1: - message.incomingChannelId = reader.uint64().toBigInt(); - break; - case /* uint64 outgoing_channel_id */ 2: - message.outgoingChannelId = reader.uint64().toBigInt(); - break; - case /* uint64 incoming_htlc_id */ 3: - message.incomingHtlcId = reader.uint64().toBigInt(); - break; - case /* uint64 outgoing_htlc_id */ 4: - message.outgoingHtlcId = reader.uint64().toBigInt(); - break; - case /* uint64 timestamp_ns */ 5: - message.timestampNs = reader.uint64().toBigInt(); - break; - case /* routerrpc.HtlcEvent.EventType event_type */ 6: - message.eventType = reader.int32(); - break; - case /* routerrpc.ForwardEvent forward_event */ 7: - message.event = { - oneofKind: "forwardEvent", - forwardEvent: ForwardEvent.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).forwardEvent) - }; - break; - case /* routerrpc.ForwardFailEvent forward_fail_event */ 8: - message.event = { - oneofKind: "forwardFailEvent", - forwardFailEvent: ForwardFailEvent.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).forwardFailEvent) - }; - break; - case /* routerrpc.SettleEvent settle_event */ 9: - message.event = { - oneofKind: "settleEvent", - settleEvent: SettleEvent.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).settleEvent) - }; - break; - case /* routerrpc.LinkFailEvent link_fail_event */ 10: - message.event = { - oneofKind: "linkFailEvent", - linkFailEvent: LinkFailEvent.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).linkFailEvent) - }; - break; - case /* routerrpc.SubscribedEvent subscribed_event */ 11: - message.event = { - oneofKind: "subscribedEvent", - subscribedEvent: SubscribedEvent.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).subscribedEvent) - }; - break; - case /* routerrpc.FinalHtlcEvent final_htlc_event */ 12: - message.event = { - oneofKind: "finalHtlcEvent", - finalHtlcEvent: FinalHtlcEvent.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).finalHtlcEvent) - }; - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: HtlcEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 incoming_channel_id = 1; */ - if (message.incomingChannelId !== 0n) - writer.tag(1, WireType.Varint).uint64(message.incomingChannelId); - /* uint64 outgoing_channel_id = 2; */ - if (message.outgoingChannelId !== 0n) - writer.tag(2, WireType.Varint).uint64(message.outgoingChannelId); - /* uint64 incoming_htlc_id = 3; */ - if (message.incomingHtlcId !== 0n) - writer.tag(3, WireType.Varint).uint64(message.incomingHtlcId); - /* uint64 outgoing_htlc_id = 4; */ - if (message.outgoingHtlcId !== 0n) - writer.tag(4, WireType.Varint).uint64(message.outgoingHtlcId); - /* uint64 timestamp_ns = 5; */ - if (message.timestampNs !== 0n) - writer.tag(5, WireType.Varint).uint64(message.timestampNs); - /* routerrpc.HtlcEvent.EventType event_type = 6; */ - if (message.eventType !== 0) - writer.tag(6, WireType.Varint).int32(message.eventType); - /* routerrpc.ForwardEvent forward_event = 7; */ - if (message.event.oneofKind === "forwardEvent") - ForwardEvent.internalBinaryWrite(message.event.forwardEvent, writer.tag(7, WireType.LengthDelimited).fork(), options).join(); - /* routerrpc.ForwardFailEvent forward_fail_event = 8; */ - if (message.event.oneofKind === "forwardFailEvent") - ForwardFailEvent.internalBinaryWrite(message.event.forwardFailEvent, writer.tag(8, WireType.LengthDelimited).fork(), options).join(); - /* routerrpc.SettleEvent settle_event = 9; */ - if (message.event.oneofKind === "settleEvent") - SettleEvent.internalBinaryWrite(message.event.settleEvent, writer.tag(9, WireType.LengthDelimited).fork(), options).join(); - /* routerrpc.LinkFailEvent link_fail_event = 10; */ - if (message.event.oneofKind === "linkFailEvent") - LinkFailEvent.internalBinaryWrite(message.event.linkFailEvent, writer.tag(10, WireType.LengthDelimited).fork(), options).join(); - /* routerrpc.SubscribedEvent subscribed_event = 11; */ - if (message.event.oneofKind === "subscribedEvent") - SubscribedEvent.internalBinaryWrite(message.event.subscribedEvent, writer.tag(11, WireType.LengthDelimited).fork(), options).join(); - /* routerrpc.FinalHtlcEvent final_htlc_event = 12; */ - if (message.event.oneofKind === "finalHtlcEvent") - FinalHtlcEvent.internalBinaryWrite(message.event.finalHtlcEvent, writer.tag(12, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.HtlcEvent - */ -export const HtlcEvent = new HtlcEvent$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class HtlcInfo$Type extends MessageType { - constructor() { - super("routerrpc.HtlcInfo", [ - { no: 1, name: "incoming_timelock", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 2, name: "outgoing_timelock", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 3, name: "incoming_amt_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "outgoing_amt_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): HtlcInfo { - const message = { incomingTimelock: 0, outgoingTimelock: 0, incomingAmtMsat: 0n, outgoingAmtMsat: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: HtlcInfo): HtlcInfo { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint32 incoming_timelock */ 1: - message.incomingTimelock = reader.uint32(); - break; - case /* uint32 outgoing_timelock */ 2: - message.outgoingTimelock = reader.uint32(); - break; - case /* uint64 incoming_amt_msat */ 3: - message.incomingAmtMsat = reader.uint64().toBigInt(); - break; - case /* uint64 outgoing_amt_msat */ 4: - message.outgoingAmtMsat = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: HtlcInfo, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint32 incoming_timelock = 1; */ - if (message.incomingTimelock !== 0) - writer.tag(1, WireType.Varint).uint32(message.incomingTimelock); - /* uint32 outgoing_timelock = 2; */ - if (message.outgoingTimelock !== 0) - writer.tag(2, WireType.Varint).uint32(message.outgoingTimelock); - /* uint64 incoming_amt_msat = 3; */ - if (message.incomingAmtMsat !== 0n) - writer.tag(3, WireType.Varint).uint64(message.incomingAmtMsat); - /* uint64 outgoing_amt_msat = 4; */ - if (message.outgoingAmtMsat !== 0n) - writer.tag(4, WireType.Varint).uint64(message.outgoingAmtMsat); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.HtlcInfo - */ -export const HtlcInfo = new HtlcInfo$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ForwardEvent$Type extends MessageType { - constructor() { - super("routerrpc.ForwardEvent", [ - { no: 1, name: "info", kind: "message", T: () => HtlcInfo } - ]); - } - create(value?: PartialMessage): ForwardEvent { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ForwardEvent): ForwardEvent { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* routerrpc.HtlcInfo info */ 1: - message.info = HtlcInfo.internalBinaryRead(reader, reader.uint32(), options, message.info); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ForwardEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* routerrpc.HtlcInfo info = 1; */ - if (message.info) - HtlcInfo.internalBinaryWrite(message.info, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.ForwardEvent - */ -export const ForwardEvent = new ForwardEvent$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ForwardFailEvent$Type extends MessageType { - constructor() { - super("routerrpc.ForwardFailEvent", []); - } - create(value?: PartialMessage): ForwardFailEvent { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ForwardFailEvent): ForwardFailEvent { - return target ?? this.create(); - } - internalBinaryWrite(message: ForwardFailEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.ForwardFailEvent - */ -export const ForwardFailEvent = new ForwardFailEvent$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SettleEvent$Type extends MessageType { - constructor() { - super("routerrpc.SettleEvent", [ - { no: 1, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } - ]); - } - create(value?: PartialMessage): SettleEvent { - const message = { preimage: new Uint8Array(0) }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SettleEvent): SettleEvent { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bytes preimage */ 1: - message.preimage = reader.bytes(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: SettleEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bytes preimage = 1; */ - if (message.preimage.length) - writer.tag(1, WireType.LengthDelimited).bytes(message.preimage); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.SettleEvent - */ -export const SettleEvent = new SettleEvent$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class FinalHtlcEvent$Type extends MessageType { - constructor() { - super("routerrpc.FinalHtlcEvent", [ - { no: 1, name: "settled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, - { no: 2, name: "offchain", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } - ]); - } - create(value?: PartialMessage): FinalHtlcEvent { - const message = { settled: false, offchain: false }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FinalHtlcEvent): FinalHtlcEvent { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* bool settled */ 1: - message.settled = reader.bool(); - break; - case /* bool offchain */ 2: - message.offchain = reader.bool(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: FinalHtlcEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* bool settled = 1; */ - if (message.settled !== false) - writer.tag(1, WireType.Varint).bool(message.settled); - /* bool offchain = 2; */ - if (message.offchain !== false) - writer.tag(2, WireType.Varint).bool(message.offchain); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.FinalHtlcEvent - */ -export const FinalHtlcEvent = new FinalHtlcEvent$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class SubscribedEvent$Type extends MessageType { - constructor() { - super("routerrpc.SubscribedEvent", []); - } - create(value?: PartialMessage): SubscribedEvent { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SubscribedEvent): SubscribedEvent { - return target ?? this.create(); - } - internalBinaryWrite(message: SubscribedEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.SubscribedEvent - */ -export const SubscribedEvent = new SubscribedEvent$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class LinkFailEvent$Type extends MessageType { - constructor() { - super("routerrpc.LinkFailEvent", [ - { no: 1, name: "info", kind: "message", T: () => HtlcInfo }, - { no: 2, name: "wire_failure", kind: "enum", T: () => ["lnrpc.Failure.FailureCode", Failure_FailureCode] }, - { no: 3, name: "failure_detail", kind: "enum", T: () => ["routerrpc.FailureDetail", FailureDetail] }, - { no: 4, name: "failure_string", kind: "scalar", T: 9 /*ScalarType.STRING*/ } - ]); - } - create(value?: PartialMessage): LinkFailEvent { - const message = { wireFailure: 0, failureDetail: 0, failureString: "" }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LinkFailEvent): LinkFailEvent { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* routerrpc.HtlcInfo info */ 1: - message.info = HtlcInfo.internalBinaryRead(reader, reader.uint32(), options, message.info); - break; - case /* lnrpc.Failure.FailureCode wire_failure */ 2: - message.wireFailure = reader.int32(); - break; - case /* routerrpc.FailureDetail failure_detail */ 3: - message.failureDetail = reader.int32(); - break; - case /* string failure_string */ 4: - message.failureString = reader.string(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: LinkFailEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* routerrpc.HtlcInfo info = 1; */ - if (message.info) - HtlcInfo.internalBinaryWrite(message.info, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* lnrpc.Failure.FailureCode wire_failure = 2; */ - if (message.wireFailure !== 0) - writer.tag(2, WireType.Varint).int32(message.wireFailure); - /* routerrpc.FailureDetail failure_detail = 3; */ - if (message.failureDetail !== 0) - writer.tag(3, WireType.Varint).int32(message.failureDetail); - /* string failure_string = 4; */ - if (message.failureString !== "") - writer.tag(4, WireType.LengthDelimited).string(message.failureString); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.LinkFailEvent - */ -export const LinkFailEvent = new LinkFailEvent$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class PaymentStatus$Type extends MessageType { - constructor() { - super("routerrpc.PaymentStatus", [ - { no: 1, name: "state", kind: "enum", T: () => ["routerrpc.PaymentState", PaymentState] }, - { no: 2, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 4, name: "htlcs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => HTLCAttempt } - ]); - } - create(value?: PartialMessage): PaymentStatus { - const message = { state: 0, preimage: new Uint8Array(0), htlcs: [] }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PaymentStatus): PaymentStatus { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* routerrpc.PaymentState state */ 1: - message.state = reader.int32(); - break; - case /* bytes preimage */ 2: - message.preimage = reader.bytes(); - break; - case /* repeated lnrpc.HTLCAttempt htlcs */ 4: - message.htlcs.push(HTLCAttempt.internalBinaryRead(reader, reader.uint32(), options)); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: PaymentStatus, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* routerrpc.PaymentState state = 1; */ - if (message.state !== 0) - writer.tag(1, WireType.Varint).int32(message.state); - /* bytes preimage = 2; */ - if (message.preimage.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.preimage); - /* repeated lnrpc.HTLCAttempt htlcs = 4; */ - for (let i = 0; i < message.htlcs.length; i++) - HTLCAttempt.internalBinaryWrite(message.htlcs[i], writer.tag(4, WireType.LengthDelimited).fork(), options).join(); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.PaymentStatus - */ -export const PaymentStatus = new PaymentStatus$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class CircuitKey$Type extends MessageType { - constructor() { - super("routerrpc.CircuitKey", [ - { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 2, name: "htlc_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } - ]); - } - create(value?: PartialMessage): CircuitKey { - const message = { chanId: 0n, htlcId: 0n }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CircuitKey): CircuitKey { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* uint64 chan_id */ 1: - message.chanId = reader.uint64().toBigInt(); - break; - case /* uint64 htlc_id */ 2: - message.htlcId = reader.uint64().toBigInt(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: CircuitKey, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* uint64 chan_id = 1; */ - if (message.chanId !== 0n) - writer.tag(1, WireType.Varint).uint64(message.chanId); - /* uint64 htlc_id = 2; */ - if (message.htlcId !== 0n) - writer.tag(2, WireType.Varint).uint64(message.htlcId); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.CircuitKey - */ -export const CircuitKey = new CircuitKey$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ForwardHtlcInterceptRequest$Type extends MessageType { - constructor() { - super("routerrpc.ForwardHtlcInterceptRequest", [ - { no: 1, name: "incoming_circuit_key", kind: "message", T: () => CircuitKey }, - { no: 5, name: "incoming_amount_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 6, name: "incoming_expiry", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 2, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 7, name: "outgoing_requested_chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 3, name: "outgoing_amount_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, - { no: 4, name: "outgoing_expiry", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, - { no: 8, name: "custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } }, - { no: 9, name: "onion_blob", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 10, name: "auto_fail_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ } - ]); - } - create(value?: PartialMessage): ForwardHtlcInterceptRequest { - const message = { incomingAmountMsat: 0n, incomingExpiry: 0, paymentHash: new Uint8Array(0), outgoingRequestedChanId: 0n, outgoingAmountMsat: 0n, outgoingExpiry: 0, customRecords: {}, onionBlob: new Uint8Array(0), autoFailHeight: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ForwardHtlcInterceptRequest): ForwardHtlcInterceptRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* routerrpc.CircuitKey incoming_circuit_key */ 1: - message.incomingCircuitKey = CircuitKey.internalBinaryRead(reader, reader.uint32(), options, message.incomingCircuitKey); - break; - case /* uint64 incoming_amount_msat */ 5: - message.incomingAmountMsat = reader.uint64().toBigInt(); - break; - case /* uint32 incoming_expiry */ 6: - message.incomingExpiry = reader.uint32(); - break; - case /* bytes payment_hash */ 2: - message.paymentHash = reader.bytes(); - break; - case /* uint64 outgoing_requested_chan_id */ 7: - message.outgoingRequestedChanId = reader.uint64().toBigInt(); - break; - case /* uint64 outgoing_amount_msat */ 3: - message.outgoingAmountMsat = reader.uint64().toBigInt(); - break; - case /* uint32 outgoing_expiry */ 4: - message.outgoingExpiry = reader.uint32(); - break; - case /* map custom_records */ 8: - this.binaryReadMap8(message.customRecords, reader, options); - break; - case /* bytes onion_blob */ 9: - message.onionBlob = reader.bytes(); - break; - case /* int32 auto_fail_height */ 10: - message.autoFailHeight = reader.int32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - private binaryReadMap8(map: ForwardHtlcInterceptRequest["customRecords"], reader: IBinaryReader, options: BinaryReadOptions): void { - let len = reader.uint32(), end = reader.pos + len, key: keyof ForwardHtlcInterceptRequest["customRecords"] | undefined, val: ForwardHtlcInterceptRequest["customRecords"][any] | undefined; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case 1: - key = reader.uint64().toString(); - break; - case 2: - val = reader.bytes(); - break; - default: throw new globalThis.Error("unknown map entry field for field routerrpc.ForwardHtlcInterceptRequest.custom_records"); - } - } - map[key ?? "0"] = val ?? new Uint8Array(0); - } - internalBinaryWrite(message: ForwardHtlcInterceptRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* routerrpc.CircuitKey incoming_circuit_key = 1; */ - if (message.incomingCircuitKey) - CircuitKey.internalBinaryWrite(message.incomingCircuitKey, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* uint64 incoming_amount_msat = 5; */ - if (message.incomingAmountMsat !== 0n) - writer.tag(5, WireType.Varint).uint64(message.incomingAmountMsat); - /* uint32 incoming_expiry = 6; */ - if (message.incomingExpiry !== 0) - writer.tag(6, WireType.Varint).uint32(message.incomingExpiry); - /* bytes payment_hash = 2; */ - if (message.paymentHash.length) - writer.tag(2, WireType.LengthDelimited).bytes(message.paymentHash); - /* uint64 outgoing_requested_chan_id = 7; */ - if (message.outgoingRequestedChanId !== 0n) - writer.tag(7, WireType.Varint).uint64(message.outgoingRequestedChanId); - /* uint64 outgoing_amount_msat = 3; */ - if (message.outgoingAmountMsat !== 0n) - writer.tag(3, WireType.Varint).uint64(message.outgoingAmountMsat); - /* uint32 outgoing_expiry = 4; */ - if (message.outgoingExpiry !== 0) - writer.tag(4, WireType.Varint).uint32(message.outgoingExpiry); - /* map custom_records = 8; */ - for (let k of Object.keys(message.customRecords)) - writer.tag(8, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint64(k).tag(2, WireType.LengthDelimited).bytes(message.customRecords[k]).join(); - /* bytes onion_blob = 9; */ - if (message.onionBlob.length) - writer.tag(9, WireType.LengthDelimited).bytes(message.onionBlob); - /* int32 auto_fail_height = 10; */ - if (message.autoFailHeight !== 0) - writer.tag(10, WireType.Varint).int32(message.autoFailHeight); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.ForwardHtlcInterceptRequest - */ -export const ForwardHtlcInterceptRequest = new ForwardHtlcInterceptRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class ForwardHtlcInterceptResponse$Type extends MessageType { - constructor() { - super("routerrpc.ForwardHtlcInterceptResponse", [ - { no: 1, name: "incoming_circuit_key", kind: "message", T: () => CircuitKey }, - { no: 2, name: "action", kind: "enum", T: () => ["routerrpc.ResolveHoldForwardAction", ResolveHoldForwardAction] }, - { no: 3, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 4, name: "failure_message", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, - { no: 5, name: "failure_code", kind: "enum", T: () => ["lnrpc.Failure.FailureCode", Failure_FailureCode] } - ]); - } - create(value?: PartialMessage): ForwardHtlcInterceptResponse { - const message = { action: 0, preimage: new Uint8Array(0), failureMessage: new Uint8Array(0), failureCode: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ForwardHtlcInterceptResponse): ForwardHtlcInterceptResponse { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* routerrpc.CircuitKey incoming_circuit_key */ 1: - message.incomingCircuitKey = CircuitKey.internalBinaryRead(reader, reader.uint32(), options, message.incomingCircuitKey); - break; - case /* routerrpc.ResolveHoldForwardAction action */ 2: - message.action = reader.int32(); - break; - case /* bytes preimage */ 3: - message.preimage = reader.bytes(); - break; - case /* bytes failure_message */ 4: - message.failureMessage = reader.bytes(); - break; - case /* lnrpc.Failure.FailureCode failure_code */ 5: - message.failureCode = reader.int32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: ForwardHtlcInterceptResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* routerrpc.CircuitKey incoming_circuit_key = 1; */ - if (message.incomingCircuitKey) - CircuitKey.internalBinaryWrite(message.incomingCircuitKey, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* routerrpc.ResolveHoldForwardAction action = 2; */ - if (message.action !== 0) - writer.tag(2, WireType.Varint).int32(message.action); - /* bytes preimage = 3; */ - if (message.preimage.length) - writer.tag(3, WireType.LengthDelimited).bytes(message.preimage); - /* bytes failure_message = 4; */ - if (message.failureMessage.length) - writer.tag(4, WireType.LengthDelimited).bytes(message.failureMessage); - /* lnrpc.Failure.FailureCode failure_code = 5; */ - if (message.failureCode !== 0) - writer.tag(5, WireType.Varint).int32(message.failureCode); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.ForwardHtlcInterceptResponse - */ -export const ForwardHtlcInterceptResponse = new ForwardHtlcInterceptResponse$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class UpdateChanStatusRequest$Type extends MessageType { - constructor() { - super("routerrpc.UpdateChanStatusRequest", [ - { no: 1, name: "chan_point", kind: "message", T: () => ChannelPoint }, - { no: 2, name: "action", kind: "enum", T: () => ["routerrpc.ChanStatusAction", ChanStatusAction] } - ]); - } - create(value?: PartialMessage): UpdateChanStatusRequest { - const message = { action: 0 }; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: UpdateChanStatusRequest): UpdateChanStatusRequest { - let message = target ?? this.create(), end = reader.pos + length; - while (reader.pos < end) { - let [fieldNo, wireType] = reader.tag(); - switch (fieldNo) { - case /* lnrpc.ChannelPoint chan_point */ 1: - message.chanPoint = ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.chanPoint); - break; - case /* routerrpc.ChanStatusAction action */ 2: - message.action = reader.int32(); - break; - default: - let u = options.readUnknownField; - if (u === "throw") - throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); - let d = reader.skip(wireType); - if (u !== false) - (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); - } - } - return message; - } - internalBinaryWrite(message: UpdateChanStatusRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - /* lnrpc.ChannelPoint chan_point = 1; */ - if (message.chanPoint) - ChannelPoint.internalBinaryWrite(message.chanPoint, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); - /* routerrpc.ChanStatusAction action = 2; */ - if (message.action !== 0) - writer.tag(2, WireType.Varint).int32(message.action); - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.UpdateChanStatusRequest - */ -export const UpdateChanStatusRequest = new UpdateChanStatusRequest$Type(); -// @generated message type with reflection information, may provide speed optimized methods -class UpdateChanStatusResponse$Type extends MessageType { - constructor() { - super("routerrpc.UpdateChanStatusResponse", []); - } - create(value?: PartialMessage): UpdateChanStatusResponse { - const message = {}; - globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); - if (value !== undefined) - reflectionMergePartial(this, message, value); - return message; - } - internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: UpdateChanStatusResponse): UpdateChanStatusResponse { - return target ?? this.create(); - } - internalBinaryWrite(message: UpdateChanStatusResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { - let u = options.writeUnknownFields; - if (u !== false) - (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); - return writer; - } -} -/** - * @generated MessageType for protobuf message routerrpc.UpdateChanStatusResponse - */ -export const UpdateChanStatusResponse = new UpdateChanStatusResponse$Type(); -/** - * @generated ServiceType for protobuf service routerrpc.Router - */ -export const Router = new ServiceType("routerrpc.Router", [ - { name: "SendPaymentV2", serverStreaming: true, options: {}, I: SendPaymentRequest, O: Payment }, - { name: "TrackPaymentV2", serverStreaming: true, options: {}, I: TrackPaymentRequest, O: Payment }, - { name: "TrackPayments", serverStreaming: true, options: {}, I: TrackPaymentsRequest, O: Payment }, - { name: "EstimateRouteFee", options: {}, I: RouteFeeRequest, O: RouteFeeResponse }, - { name: "SendToRoute", options: {}, I: SendToRouteRequest, O: SendToRouteResponse }, - { name: "SendToRouteV2", options: {}, I: SendToRouteRequest, O: HTLCAttempt }, - { name: "ResetMissionControl", options: {}, I: ResetMissionControlRequest, O: ResetMissionControlResponse }, - { name: "QueryMissionControl", options: {}, I: QueryMissionControlRequest, O: QueryMissionControlResponse }, - { name: "XImportMissionControl", options: {}, I: XImportMissionControlRequest, O: XImportMissionControlResponse }, - { name: "GetMissionControlConfig", options: {}, I: GetMissionControlConfigRequest, O: GetMissionControlConfigResponse }, - { name: "SetMissionControlConfig", options: {}, I: SetMissionControlConfigRequest, O: SetMissionControlConfigResponse }, - { name: "QueryProbability", options: {}, I: QueryProbabilityRequest, O: QueryProbabilityResponse }, - { name: "BuildRoute", options: {}, I: BuildRouteRequest, O: BuildRouteResponse }, - { name: "SubscribeHtlcEvents", serverStreaming: true, options: {}, I: SubscribeHtlcEventsRequest, O: HtlcEvent }, - { name: "SendPayment", serverStreaming: true, options: {}, I: SendPaymentRequest, O: PaymentStatus }, - { name: "TrackPayment", serverStreaming: true, options: {}, I: TrackPaymentRequest, O: PaymentStatus }, - { name: "HtlcInterceptor", serverStreaming: true, clientStreaming: true, options: {}, I: ForwardHtlcInterceptResponse, O: ForwardHtlcInterceptRequest }, - { name: "UpdateChanStatus", options: {}, I: UpdateChanStatusRequest, O: UpdateChanStatusResponse } -]); +// @generated by protobuf-ts 2.8.1 +// @generated from protobuf file "router.proto" (package "routerrpc", syntax proto3) +// tslint:disable +import { Payment } from "./lightning.js"; +import { ServiceType } from "@protobuf-ts/runtime-rpc"; +import type { BinaryWriteOptions } from "@protobuf-ts/runtime"; +import type { IBinaryWriter } from "@protobuf-ts/runtime"; +import type { BinaryReadOptions } from "@protobuf-ts/runtime"; +import type { IBinaryReader } from "@protobuf-ts/runtime"; +import { UnknownFieldHandler } from "@protobuf-ts/runtime"; +import { WireType } from "@protobuf-ts/runtime"; +import type { PartialMessage } from "@protobuf-ts/runtime"; +import { reflectionMergePartial } from "@protobuf-ts/runtime"; +import { MESSAGE_TYPE } from "@protobuf-ts/runtime"; +import { MessageType } from "@protobuf-ts/runtime"; +import { ChannelPoint } from "./lightning.js"; +import { HTLCAttempt } from "./lightning.js"; +import { Failure_FailureCode } from "./lightning.js"; +import { Failure } from "./lightning.js"; +import { Route } from "./lightning.js"; +import { FeatureBit } from "./lightning.js"; +import { RouteHint } from "./lightning.js"; +/** + * @generated from protobuf message routerrpc.SendPaymentRequest + */ +export interface SendPaymentRequest { + /** + * The identity pubkey of the payment recipient + * + * @generated from protobuf field: bytes dest = 1; + */ + dest: Uint8Array; + /** + * + * Number of satoshis to send. + * + * The fields amt and amt_msat are mutually exclusive. + * + * @generated from protobuf field: int64 amt = 2; + */ + amt: bigint; + /** + * + * Number of millisatoshis to send. + * + * The fields amt and amt_msat are mutually exclusive. + * + * @generated from protobuf field: int64 amt_msat = 12; + */ + amtMsat: bigint; + /** + * The hash to use within the payment's HTLC + * + * @generated from protobuf field: bytes payment_hash = 3; + */ + paymentHash: Uint8Array; + /** + * + * The CLTV delta from the current height that should be used to set the + * timelock for the final hop. + * + * @generated from protobuf field: int32 final_cltv_delta = 4; + */ + finalCltvDelta: number; + /** + * An optional payment addr to be included within the last hop of the route. + * + * @generated from protobuf field: bytes payment_addr = 20; + */ + paymentAddr: Uint8Array; + /** + * + * 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. The amount in the payment request may be zero. In + * that case it is required to set the amt field as well. If no payment request + * is specified, the following fields are required: dest, amt and payment_hash. + * + * @generated from protobuf field: string payment_request = 5; + */ + paymentRequest: string; + /** + * + * An upper limit on the amount of time we should spend when attempting to + * fulfill the payment. This is expressed in seconds. If we cannot make a + * successful payment within this time frame, an error will be returned. + * This field must be non-zero. + * + * @generated from protobuf field: int32 timeout_seconds = 6; + */ + timeoutSeconds: number; + /** + * + * The maximum number of satoshis that will be paid as a fee of the payment. + * If this field is left to the default value of 0, only zero-fee routes will + * be considered. This usually means single hop routes connecting directly to + * the destination. To send the payment without a fee limit, use max int here. + * + * The fields fee_limit_sat and fee_limit_msat are mutually exclusive. + * + * @generated from protobuf field: int64 fee_limit_sat = 7; + */ + feeLimitSat: bigint; + /** + * + * The maximum number of millisatoshis that will be paid as a fee of the + * payment. If this field is left to the default value of 0, only zero-fee + * routes will be considered. This usually means single hop routes connecting + * directly to the destination. To send the payment without a fee limit, use + * max int here. + * + * The fields fee_limit_sat and fee_limit_msat are mutually exclusive. + * + * @generated from protobuf field: int64 fee_limit_msat = 13; + */ + feeLimitMsat: bigint; + /** + * + * Deprecated, use outgoing_chan_ids. The channel id of the channel that must + * be taken to the first hop. If zero, any channel may be used (unless + * outgoing_chan_ids are set). + * + * @deprecated + * @generated from protobuf field: uint64 outgoing_chan_id = 8 [deprecated = true, jstype = JS_STRING]; + */ + outgoingChanId: string; + /** + * + * The channel ids of the channels are allowed for the first hop. If empty, + * any channel may be used. + * + * @generated from protobuf field: repeated uint64 outgoing_chan_ids = 19; + */ + outgoingChanIds: bigint[]; + /** + * + * The pubkey of the last hop of the route. If empty, any hop may be used. + * + * @generated from protobuf field: bytes last_hop_pubkey = 14; + */ + lastHopPubkey: Uint8Array; + /** + * + * 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. + * + * @generated from protobuf field: int32 cltv_limit = 9; + */ + cltvLimit: number; + /** + * + * Optional route hints to reach the destination through private channels. + * + * @generated from protobuf field: repeated lnrpc.RouteHint route_hints = 10; + */ + routeHints: RouteHint[]; + /** + * + * 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. + * + * @generated from protobuf field: map dest_custom_records = 11; + */ + destCustomRecords: { + [key: string]: Uint8Array; + }; + /** + * If set, circular payments to self are permitted. + * + * @generated from protobuf field: bool allow_self_payment = 15; + */ + allowSelfPayment: boolean; + /** + * + * 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. + * + * @generated from protobuf field: repeated lnrpc.FeatureBit dest_features = 16; + */ + destFeatures: FeatureBit[]; + /** + * + * The maximum number of partial payments that may be use to complete the full + * amount. + * + * @generated from protobuf field: uint32 max_parts = 17; + */ + maxParts: number; + /** + * + * If set, only the final payment update is streamed back. Intermediate updates + * that show which htlcs are still in flight are suppressed. + * + * @generated from protobuf field: bool no_inflight_updates = 18; + */ + noInflightUpdates: boolean; + /** + * + * The largest payment split that should be attempted when making a payment if + * splitting is necessary. Setting this value will effectively cause lnd to + * split more aggressively, vs only when it thinks it needs to. Note that this + * value is in milli-satoshis. + * + * @generated from protobuf field: uint64 max_shard_size_msat = 21; + */ + maxShardSizeMsat: bigint; + /** + * + * If set, an AMP-payment will be attempted. + * + * @generated from protobuf field: bool amp = 22; + */ + amp: boolean; + /** + * + * The time preference for this payment. Set to -1 to optimize for fees + * only, to 1 to optimize for reliability only or a value inbetween for a mix. + * + * @generated from protobuf field: double time_pref = 23; + */ + timePref: number; +} +/** + * @generated from protobuf message routerrpc.TrackPaymentRequest + */ +export interface TrackPaymentRequest { + /** + * The hash of the payment to look up. + * + * @generated from protobuf field: bytes payment_hash = 1; + */ + paymentHash: Uint8Array; + /** + * + * If set, only the final payment update is streamed back. Intermediate updates + * that show which htlcs are still in flight are suppressed. + * + * @generated from protobuf field: bool no_inflight_updates = 2; + */ + noInflightUpdates: boolean; +} +/** + * @generated from protobuf message routerrpc.TrackPaymentsRequest + */ +export interface TrackPaymentsRequest { + /** + * + * If set, only the final payment updates are streamed back. Intermediate + * updates that show which htlcs are still in flight are suppressed. + * + * @generated from protobuf field: bool no_inflight_updates = 1; + */ + noInflightUpdates: boolean; +} +/** + * @generated from protobuf message routerrpc.RouteFeeRequest + */ +export interface RouteFeeRequest { + /** + * + * The destination once wishes to obtain a routing fee quote to. + * + * @generated from protobuf field: bytes dest = 1; + */ + dest: Uint8Array; + /** + * + * The amount one wishes to send to the target destination. + * + * @generated from protobuf field: int64 amt_sat = 2; + */ + amtSat: bigint; +} +/** + * @generated from protobuf message routerrpc.RouteFeeResponse + */ +export interface RouteFeeResponse { + /** + * + * A lower bound of the estimated fee to the target destination within the + * network, expressed in milli-satoshis. + * + * @generated from protobuf field: int64 routing_fee_msat = 1; + */ + routingFeeMsat: bigint; + /** + * + * An estimate of the worst case time delay that can occur. Note that callers + * will still need to factor in the final CLTV delta of the last hop into this + * value. + * + * @generated from protobuf field: int64 time_lock_delay = 2; + */ + timeLockDelay: bigint; +} +/** + * @generated from protobuf message routerrpc.SendToRouteRequest + */ +export interface SendToRouteRequest { + /** + * The payment hash to use for the HTLC. + * + * @generated from protobuf field: bytes payment_hash = 1; + */ + paymentHash: Uint8Array; + /** + * Route that should be used to attempt to complete the payment. + * + * @generated from protobuf field: lnrpc.Route route = 2; + */ + route?: Route; + /** + * + * Whether the payment should be marked as failed when a temporary error is + * returned from the given route. Set it to true so the payment won't be + * failed unless a terminal error is occurred, such as payment timeout, no + * routes, incorrect payment details, or insufficient funds. + * + * @generated from protobuf field: bool skip_temp_err = 3; + */ + skipTempErr: boolean; +} +/** + * @generated from protobuf message routerrpc.SendToRouteResponse + */ +export interface SendToRouteResponse { + /** + * The preimage obtained by making the payment. + * + * @generated from protobuf field: bytes preimage = 1; + */ + preimage: Uint8Array; + /** + * The failure message in case the payment failed. + * + * @generated from protobuf field: lnrpc.Failure failure = 2; + */ + failure?: Failure; +} +/** + * @generated from protobuf message routerrpc.ResetMissionControlRequest + */ +export interface ResetMissionControlRequest { +} +/** + * @generated from protobuf message routerrpc.ResetMissionControlResponse + */ +export interface ResetMissionControlResponse { +} +/** + * @generated from protobuf message routerrpc.QueryMissionControlRequest + */ +export interface QueryMissionControlRequest { +} +/** + * QueryMissionControlResponse contains mission control state. + * + * @generated from protobuf message routerrpc.QueryMissionControlResponse + */ +export interface QueryMissionControlResponse { + /** + * Node pair-level mission control state. + * + * @generated from protobuf field: repeated routerrpc.PairHistory pairs = 2; + */ + pairs: PairHistory[]; +} +/** + * @generated from protobuf message routerrpc.XImportMissionControlRequest + */ +export interface XImportMissionControlRequest { + /** + * Node pair-level mission control state to be imported. + * + * @generated from protobuf field: repeated routerrpc.PairHistory pairs = 1; + */ + pairs: PairHistory[]; + /** + * Whether to force override MC pair history. Note that even with force + * override the failure pair is imported before the success pair and both + * still clamp existing failure/success amounts. + * + * @generated from protobuf field: bool force = 2; + */ + force: boolean; +} +/** + * @generated from protobuf message routerrpc.XImportMissionControlResponse + */ +export interface XImportMissionControlResponse { +} +/** + * PairHistory contains the mission control state for a particular node pair. + * + * @generated from protobuf message routerrpc.PairHistory + */ +export interface PairHistory { + /** + * The source node pubkey of the pair. + * + * @generated from protobuf field: bytes node_from = 1; + */ + nodeFrom: Uint8Array; + /** + * The destination node pubkey of the pair. + * + * @generated from protobuf field: bytes node_to = 2; + */ + nodeTo: Uint8Array; + /** + * @generated from protobuf field: routerrpc.PairData history = 7; + */ + history?: PairData; +} +/** + * @generated from protobuf message routerrpc.PairData + */ +export interface PairData { + /** + * Time of last failure. + * + * @generated from protobuf field: int64 fail_time = 1; + */ + failTime: bigint; + /** + * + * Lowest amount that failed to forward rounded to whole sats. This may be + * set to zero if the failure is independent of amount. + * + * @generated from protobuf field: int64 fail_amt_sat = 2; + */ + failAmtSat: bigint; + /** + * + * Lowest amount that failed to forward in millisats. This may be + * set to zero if the failure is independent of amount. + * + * @generated from protobuf field: int64 fail_amt_msat = 4; + */ + failAmtMsat: bigint; + /** + * Time of last success. + * + * @generated from protobuf field: int64 success_time = 5; + */ + successTime: bigint; + /** + * Highest amount that we could successfully forward rounded to whole sats. + * + * @generated from protobuf field: int64 success_amt_sat = 6; + */ + successAmtSat: bigint; + /** + * Highest amount that we could successfully forward in millisats. + * + * @generated from protobuf field: int64 success_amt_msat = 7; + */ + successAmtMsat: bigint; +} +/** + * @generated from protobuf message routerrpc.GetMissionControlConfigRequest + */ +export interface GetMissionControlConfigRequest { +} +/** + * @generated from protobuf message routerrpc.GetMissionControlConfigResponse + */ +export interface GetMissionControlConfigResponse { + /** + * + * Mission control's currently active config. + * + * @generated from protobuf field: routerrpc.MissionControlConfig config = 1; + */ + config?: MissionControlConfig; +} +/** + * @generated from protobuf message routerrpc.SetMissionControlConfigRequest + */ +export interface SetMissionControlConfigRequest { + /** + * + * The config to set for mission control. Note that all values *must* be set, + * because the full config will be applied. + * + * @generated from protobuf field: routerrpc.MissionControlConfig config = 1; + */ + config?: MissionControlConfig; +} +/** + * @generated from protobuf message routerrpc.SetMissionControlConfigResponse + */ +export interface SetMissionControlConfigResponse { +} +/** + * @generated from protobuf message routerrpc.MissionControlConfig + */ +export interface MissionControlConfig { + /** + * + * The amount of time mission control will take to restore a penalized node + * or channel back to 50% success probability, expressed in seconds. Setting + * this value to a higher value will penalize failures for longer, making + * mission control less likely to route through nodes and channels that we + * have previously recorded failures for. + * + * @generated from protobuf field: uint64 half_life_seconds = 1; + */ + halfLifeSeconds: bigint; + /** + * + * The probability of success mission control should assign to hop in a route + * where it has no other information available. Higher values will make mission + * control more willing to try hops that we have no information about, lower + * values will discourage trying these hops. + * + * @generated from protobuf field: float hop_probability = 2; + */ + hopProbability: number; + /** + * + * The importance that mission control should place on historical results, + * expressed as a value in [0;1]. Setting this value to 1 will ignore all + * historical payments and just use the hop probability to assess the + * probability of success for each hop. A zero value ignores hop probability + * completely and relies entirely on historical results, unless none are + * available. + * + * @generated from protobuf field: float weight = 3; + */ + weight: number; + /** + * + * The maximum number of payment results that mission control will store. + * + * @generated from protobuf field: uint32 maximum_payment_results = 4; + */ + maximumPaymentResults: number; + /** + * + * The minimum time that must have passed since the previously recorded failure + * before we raise the failure amount. + * + * @generated from protobuf field: uint64 minimum_failure_relax_interval = 5; + */ + minimumFailureRelaxInterval: bigint; +} +/** + * @generated from protobuf message routerrpc.QueryProbabilityRequest + */ +export interface QueryProbabilityRequest { + /** + * The source node pubkey of the pair. + * + * @generated from protobuf field: bytes from_node = 1; + */ + fromNode: Uint8Array; + /** + * The destination node pubkey of the pair. + * + * @generated from protobuf field: bytes to_node = 2; + */ + toNode: Uint8Array; + /** + * The amount for which to calculate a probability. + * + * @generated from protobuf field: int64 amt_msat = 3; + */ + amtMsat: bigint; +} +/** + * @generated from protobuf message routerrpc.QueryProbabilityResponse + */ +export interface QueryProbabilityResponse { + /** + * The success probability for the requested pair. + * + * @generated from protobuf field: double probability = 1; + */ + probability: number; + /** + * The historical data for the requested pair. + * + * @generated from protobuf field: routerrpc.PairData history = 2; + */ + history?: PairData; +} +/** + * @generated from protobuf message routerrpc.BuildRouteRequest + */ +export interface BuildRouteRequest { + /** + * + * The amount to send expressed in msat. If set to zero, the minimum routable + * amount is used. + * + * @generated from protobuf field: int64 amt_msat = 1; + */ + amtMsat: bigint; + /** + * + * CLTV delta from the current height that should be used for the timelock + * of the final hop + * + * @generated from protobuf field: int32 final_cltv_delta = 2; + */ + finalCltvDelta: number; + /** + * + * The channel id of the channel that must be taken to the first hop. If zero, + * any channel may be used. + * + * @generated from protobuf field: uint64 outgoing_chan_id = 3 [jstype = JS_STRING]; + */ + outgoingChanId: string; + /** + * + * A list of hops that defines the route. This does not include the source hop + * pubkey. + * + * @generated from protobuf field: repeated bytes hop_pubkeys = 4; + */ + hopPubkeys: Uint8Array[]; + /** + * An optional payment addr to be included within the last hop of the route. + * + * @generated from protobuf field: bytes payment_addr = 5; + */ + paymentAddr: Uint8Array; +} +/** + * @generated from protobuf message routerrpc.BuildRouteResponse + */ +export interface BuildRouteResponse { + /** + * + * Fully specified route that can be used to execute the payment. + * + * @generated from protobuf field: lnrpc.Route route = 1; + */ + route?: Route; +} +/** + * @generated from protobuf message routerrpc.SubscribeHtlcEventsRequest + */ +export interface SubscribeHtlcEventsRequest { +} +/** + * + * HtlcEvent contains the htlc event that was processed. These are served on a + * best-effort basis; events are not persisted, delivery is not guaranteed + * (in the event of a crash in the switch, forward events may be lost) and + * some events may be replayed upon restart. Events consumed from this package + * should be de-duplicated by the htlc's unique combination of incoming and + * outgoing channel id and htlc id. [EXPERIMENTAL] + * + * @generated from protobuf message routerrpc.HtlcEvent + */ +export interface HtlcEvent { + /** + * + * The short channel id that the incoming htlc arrived at our node on. This + * value is zero for sends. + * + * @generated from protobuf field: uint64 incoming_channel_id = 1; + */ + incomingChannelId: bigint; + /** + * + * The short channel id that the outgoing htlc left our node on. This value + * is zero for receives. + * + * @generated from protobuf field: uint64 outgoing_channel_id = 2; + */ + outgoingChannelId: bigint; + /** + * + * Incoming id is the index of the incoming htlc in the incoming channel. + * This value is zero for sends. + * + * @generated from protobuf field: uint64 incoming_htlc_id = 3; + */ + incomingHtlcId: bigint; + /** + * + * Outgoing id is the index of the outgoing htlc in the outgoing channel. + * This value is zero for receives. + * + * @generated from protobuf field: uint64 outgoing_htlc_id = 4; + */ + outgoingHtlcId: bigint; + /** + * + * The time in unix nanoseconds that the event occurred. + * + * @generated from protobuf field: uint64 timestamp_ns = 5; + */ + timestampNs: bigint; + /** + * + * The event type indicates whether the htlc was part of a send, receive or + * forward. + * + * @generated from protobuf field: routerrpc.HtlcEvent.EventType event_type = 6; + */ + eventType: HtlcEvent_EventType; + /** + * @generated from protobuf oneof: event + */ + event: { + oneofKind: "forwardEvent"; + /** + * @generated from protobuf field: routerrpc.ForwardEvent forward_event = 7; + */ + forwardEvent: ForwardEvent; + } | { + oneofKind: "forwardFailEvent"; + /** + * @generated from protobuf field: routerrpc.ForwardFailEvent forward_fail_event = 8; + */ + forwardFailEvent: ForwardFailEvent; + } | { + oneofKind: "settleEvent"; + /** + * @generated from protobuf field: routerrpc.SettleEvent settle_event = 9; + */ + settleEvent: SettleEvent; + } | { + oneofKind: "linkFailEvent"; + /** + * @generated from protobuf field: routerrpc.LinkFailEvent link_fail_event = 10; + */ + linkFailEvent: LinkFailEvent; + } | { + oneofKind: "subscribedEvent"; + /** + * @generated from protobuf field: routerrpc.SubscribedEvent subscribed_event = 11; + */ + subscribedEvent: SubscribedEvent; + } | { + oneofKind: "finalHtlcEvent"; + /** + * @generated from protobuf field: routerrpc.FinalHtlcEvent final_htlc_event = 12; + */ + finalHtlcEvent: FinalHtlcEvent; + } | { + oneofKind: undefined; + }; +} +/** + * @generated from protobuf enum routerrpc.HtlcEvent.EventType + */ +export enum HtlcEvent_EventType { + /** + * @generated from protobuf enum value: UNKNOWN = 0; + */ + UNKNOWN = 0, + /** + * @generated from protobuf enum value: SEND = 1; + */ + SEND = 1, + /** + * @generated from protobuf enum value: RECEIVE = 2; + */ + RECEIVE = 2, + /** + * @generated from protobuf enum value: FORWARD = 3; + */ + FORWARD = 3 +} +/** + * @generated from protobuf message routerrpc.HtlcInfo + */ +export interface HtlcInfo { + /** + * The timelock on the incoming htlc. + * + * @generated from protobuf field: uint32 incoming_timelock = 1; + */ + incomingTimelock: number; + /** + * The timelock on the outgoing htlc. + * + * @generated from protobuf field: uint32 outgoing_timelock = 2; + */ + outgoingTimelock: number; + /** + * The amount of the incoming htlc. + * + * @generated from protobuf field: uint64 incoming_amt_msat = 3; + */ + incomingAmtMsat: bigint; + /** + * The amount of the outgoing htlc. + * + * @generated from protobuf field: uint64 outgoing_amt_msat = 4; + */ + outgoingAmtMsat: bigint; +} +/** + * @generated from protobuf message routerrpc.ForwardEvent + */ +export interface ForwardEvent { + /** + * Info contains details about the htlc that was forwarded. + * + * @generated from protobuf field: routerrpc.HtlcInfo info = 1; + */ + info?: HtlcInfo; +} +/** + * @generated from protobuf message routerrpc.ForwardFailEvent + */ +export interface ForwardFailEvent { +} +/** + * @generated from protobuf message routerrpc.SettleEvent + */ +export interface SettleEvent { + /** + * The revealed preimage. + * + * @generated from protobuf field: bytes preimage = 1; + */ + preimage: Uint8Array; +} +/** + * @generated from protobuf message routerrpc.FinalHtlcEvent + */ +export interface FinalHtlcEvent { + /** + * @generated from protobuf field: bool settled = 1; + */ + settled: boolean; + /** + * @generated from protobuf field: bool offchain = 2; + */ + offchain: boolean; +} +/** + * @generated from protobuf message routerrpc.SubscribedEvent + */ +export interface SubscribedEvent { +} +/** + * @generated from protobuf message routerrpc.LinkFailEvent + */ +export interface LinkFailEvent { + /** + * Info contains details about the htlc that we failed. + * + * @generated from protobuf field: routerrpc.HtlcInfo info = 1; + */ + info?: HtlcInfo; + /** + * FailureCode is the BOLT error code for the failure. + * + * @generated from protobuf field: lnrpc.Failure.FailureCode wire_failure = 2; + */ + wireFailure: Failure_FailureCode; + /** + * + * FailureDetail provides additional information about the reason for the + * failure. This detail enriches the information provided by the wire message + * and may be 'no detail' if the wire message requires no additional metadata. + * + * @generated from protobuf field: routerrpc.FailureDetail failure_detail = 3; + */ + failureDetail: FailureDetail; + /** + * A string representation of the link failure. + * + * @generated from protobuf field: string failure_string = 4; + */ + failureString: string; +} +/** + * @generated from protobuf message routerrpc.PaymentStatus + */ +export interface PaymentStatus { + /** + * Current state the payment is in. + * + * @generated from protobuf field: routerrpc.PaymentState state = 1; + */ + state: PaymentState; + /** + * + * The pre-image of the payment when state is SUCCEEDED. + * + * @generated from protobuf field: bytes preimage = 2; + */ + preimage: Uint8Array; + /** + * + * The HTLCs made in attempt to settle the payment [EXPERIMENTAL]. + * + * @generated from protobuf field: repeated lnrpc.HTLCAttempt htlcs = 4; + */ + htlcs: HTLCAttempt[]; +} +/** + * @generated from protobuf message routerrpc.CircuitKey + */ +export interface CircuitKey { + /** + * / The id of the channel that the is part of this circuit. + * + * @generated from protobuf field: uint64 chan_id = 1; + */ + chanId: bigint; + /** + * / The index of the incoming htlc in the incoming channel. + * + * @generated from protobuf field: uint64 htlc_id = 2; + */ + htlcId: bigint; +} +/** + * @generated from protobuf message routerrpc.ForwardHtlcInterceptRequest + */ +export interface ForwardHtlcInterceptRequest { + /** + * + * The key of this forwarded htlc. It defines the incoming channel id and + * the index in this channel. + * + * @generated from protobuf field: routerrpc.CircuitKey incoming_circuit_key = 1; + */ + incomingCircuitKey?: CircuitKey; + /** + * The incoming htlc amount. + * + * @generated from protobuf field: uint64 incoming_amount_msat = 5; + */ + incomingAmountMsat: bigint; + /** + * The incoming htlc expiry. + * + * @generated from protobuf field: uint32 incoming_expiry = 6; + */ + incomingExpiry: number; + /** + * + * The htlc payment hash. This value is not guaranteed to be unique per + * request. + * + * @generated from protobuf field: bytes payment_hash = 2; + */ + paymentHash: Uint8Array; + /** + * The requested outgoing channel id for this forwarded htlc. Because of + * non-strict forwarding, this isn't necessarily the channel over which the + * packet will be forwarded eventually. A different channel to the same peer + * may be selected as well. + * + * @generated from protobuf field: uint64 outgoing_requested_chan_id = 7; + */ + outgoingRequestedChanId: bigint; + /** + * The outgoing htlc amount. + * + * @generated from protobuf field: uint64 outgoing_amount_msat = 3; + */ + outgoingAmountMsat: bigint; + /** + * The outgoing htlc expiry. + * + * @generated from protobuf field: uint32 outgoing_expiry = 4; + */ + outgoingExpiry: number; + /** + * Any custom records that were present in the payload. + * + * @generated from protobuf field: map custom_records = 8; + */ + customRecords: { + [key: string]: Uint8Array; + }; + /** + * The onion blob for the next hop + * + * @generated from protobuf field: bytes onion_blob = 9; + */ + onionBlob: Uint8Array; + /** + * The block height at which this htlc will be auto-failed to prevent the + * channel from force-closing. + * + * @generated from protobuf field: int32 auto_fail_height = 10; + */ + autoFailHeight: number; +} +/** + * * + * ForwardHtlcInterceptResponse enables the caller to resolve a previously hold + * forward. The caller can choose either to: + * - `Resume`: Execute the default behavior (usually forward). + * - `Reject`: Fail the htlc backwards. + * - `Settle`: Settle this htlc with a given preimage. + * + * @generated from protobuf message routerrpc.ForwardHtlcInterceptResponse + */ +export interface ForwardHtlcInterceptResponse { + /** + * * + * The key of this forwarded htlc. It defines the incoming channel id and + * the index in this channel. + * + * @generated from protobuf field: routerrpc.CircuitKey incoming_circuit_key = 1; + */ + incomingCircuitKey?: CircuitKey; + /** + * The resolve action for this intercepted htlc. + * + * @generated from protobuf field: routerrpc.ResolveHoldForwardAction action = 2; + */ + action: ResolveHoldForwardAction; + /** + * The preimage in case the resolve action is Settle. + * + * @generated from protobuf field: bytes preimage = 3; + */ + preimage: Uint8Array; + /** + * Encrypted failure message in case the resolve action is Fail. + * + * If failure_message is specified, the failure_code field must be set + * to zero. + * + * @generated from protobuf field: bytes failure_message = 4; + */ + failureMessage: Uint8Array; + /** + * Return the specified failure code in case the resolve action is Fail. The + * message data fields are populated automatically. + * + * If a non-zero failure_code is specified, failure_message must not be set. + * + * For backwards-compatibility reasons, TEMPORARY_CHANNEL_FAILURE is the + * default value for this field. + * + * @generated from protobuf field: lnrpc.Failure.FailureCode failure_code = 5; + */ + failureCode: Failure_FailureCode; +} +/** + * @generated from protobuf message routerrpc.UpdateChanStatusRequest + */ +export interface UpdateChanStatusRequest { + /** + * @generated from protobuf field: lnrpc.ChannelPoint chan_point = 1; + */ + chanPoint?: ChannelPoint; + /** + * @generated from protobuf field: routerrpc.ChanStatusAction action = 2; + */ + action: ChanStatusAction; +} +/** + * @generated from protobuf message routerrpc.UpdateChanStatusResponse + */ +export interface UpdateChanStatusResponse { +} +/** + * @generated from protobuf enum routerrpc.FailureDetail + */ +export enum FailureDetail { + /** + * @generated from protobuf enum value: UNKNOWN = 0; + */ + UNKNOWN = 0, + /** + * @generated from protobuf enum value: NO_DETAIL = 1; + */ + NO_DETAIL = 1, + /** + * @generated from protobuf enum value: ONION_DECODE = 2; + */ + ONION_DECODE = 2, + /** + * @generated from protobuf enum value: LINK_NOT_ELIGIBLE = 3; + */ + LINK_NOT_ELIGIBLE = 3, + /** + * @generated from protobuf enum value: ON_CHAIN_TIMEOUT = 4; + */ + ON_CHAIN_TIMEOUT = 4, + /** + * @generated from protobuf enum value: HTLC_EXCEEDS_MAX = 5; + */ + HTLC_EXCEEDS_MAX = 5, + /** + * @generated from protobuf enum value: INSUFFICIENT_BALANCE = 6; + */ + INSUFFICIENT_BALANCE = 6, + /** + * @generated from protobuf enum value: INCOMPLETE_FORWARD = 7; + */ + INCOMPLETE_FORWARD = 7, + /** + * @generated from protobuf enum value: HTLC_ADD_FAILED = 8; + */ + HTLC_ADD_FAILED = 8, + /** + * @generated from protobuf enum value: FORWARDS_DISABLED = 9; + */ + FORWARDS_DISABLED = 9, + /** + * @generated from protobuf enum value: INVOICE_CANCELED = 10; + */ + INVOICE_CANCELED = 10, + /** + * @generated from protobuf enum value: INVOICE_UNDERPAID = 11; + */ + INVOICE_UNDERPAID = 11, + /** + * @generated from protobuf enum value: INVOICE_EXPIRY_TOO_SOON = 12; + */ + INVOICE_EXPIRY_TOO_SOON = 12, + /** + * @generated from protobuf enum value: INVOICE_NOT_OPEN = 13; + */ + INVOICE_NOT_OPEN = 13, + /** + * @generated from protobuf enum value: MPP_INVOICE_TIMEOUT = 14; + */ + MPP_INVOICE_TIMEOUT = 14, + /** + * @generated from protobuf enum value: ADDRESS_MISMATCH = 15; + */ + ADDRESS_MISMATCH = 15, + /** + * @generated from protobuf enum value: SET_TOTAL_MISMATCH = 16; + */ + SET_TOTAL_MISMATCH = 16, + /** + * @generated from protobuf enum value: SET_TOTAL_TOO_LOW = 17; + */ + SET_TOTAL_TOO_LOW = 17, + /** + * @generated from protobuf enum value: SET_OVERPAID = 18; + */ + SET_OVERPAID = 18, + /** + * @generated from protobuf enum value: UNKNOWN_INVOICE = 19; + */ + UNKNOWN_INVOICE = 19, + /** + * @generated from protobuf enum value: INVALID_KEYSEND = 20; + */ + INVALID_KEYSEND = 20, + /** + * @generated from protobuf enum value: MPP_IN_PROGRESS = 21; + */ + MPP_IN_PROGRESS = 21, + /** + * @generated from protobuf enum value: CIRCULAR_ROUTE = 22; + */ + CIRCULAR_ROUTE = 22 +} +/** + * @generated from protobuf enum routerrpc.PaymentState + */ +export enum PaymentState { + /** + * + * Payment is still in flight. + * + * @generated from protobuf enum value: IN_FLIGHT = 0; + */ + IN_FLIGHT = 0, + /** + * + * Payment completed successfully. + * + * @generated from protobuf enum value: SUCCEEDED = 1; + */ + SUCCEEDED = 1, + /** + * + * There are more routes to try, but the payment timeout was exceeded. + * + * @generated from protobuf enum value: FAILED_TIMEOUT = 2; + */ + FAILED_TIMEOUT = 2, + /** + * + * All possible routes were tried and failed permanently. Or were no + * routes to the destination at all. + * + * @generated from protobuf enum value: FAILED_NO_ROUTE = 3; + */ + FAILED_NO_ROUTE = 3, + /** + * + * A non-recoverable error has occurred. + * + * @generated from protobuf enum value: FAILED_ERROR = 4; + */ + FAILED_ERROR = 4, + /** + * + * Payment details incorrect (unknown hash, invalid amt or + * invalid final cltv delta) + * + * @generated from protobuf enum value: FAILED_INCORRECT_PAYMENT_DETAILS = 5; + */ + FAILED_INCORRECT_PAYMENT_DETAILS = 5, + /** + * + * Insufficient local balance. + * + * @generated from protobuf enum value: FAILED_INSUFFICIENT_BALANCE = 6; + */ + FAILED_INSUFFICIENT_BALANCE = 6 +} +/** + * @generated from protobuf enum routerrpc.ResolveHoldForwardAction + */ +export enum ResolveHoldForwardAction { + /** + * @generated from protobuf enum value: SETTLE = 0; + */ + SETTLE = 0, + /** + * @generated from protobuf enum value: FAIL = 1; + */ + FAIL = 1, + /** + * @generated from protobuf enum value: RESUME = 2; + */ + RESUME = 2 +} +/** + * @generated from protobuf enum routerrpc.ChanStatusAction + */ +export enum ChanStatusAction { + /** + * @generated from protobuf enum value: ENABLE = 0; + */ + ENABLE = 0, + /** + * @generated from protobuf enum value: DISABLE = 1; + */ + DISABLE = 1, + /** + * @generated from protobuf enum value: AUTO = 2; + */ + AUTO = 2 +} +// @generated message type with reflection information, may provide speed optimized methods +class SendPaymentRequest$Type extends MessageType { + constructor() { + super("routerrpc.SendPaymentRequest", [ + { no: 1, name: "dest", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "amt", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 12, name: "amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 4, name: "final_cltv_delta", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 20, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 5, name: "payment_request", kind: "scalar", T: 9 /*ScalarType.STRING*/ }, + { no: 6, name: "timeout_seconds", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 7, name: "fee_limit_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 13, name: "fee_limit_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 8, name: "outgoing_chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 19, name: "outgoing_chan_ids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 14, name: "last_hop_pubkey", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 9, name: "cltv_limit", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 10, name: "route_hints", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => RouteHint }, + { no: 11, name: "dest_custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } }, + { no: 15, name: "allow_self_payment", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 16, name: "dest_features", kind: "enum", repeat: 1 /*RepeatType.PACKED*/, T: () => ["lnrpc.FeatureBit", FeatureBit] }, + { no: 17, name: "max_parts", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 18, name: "no_inflight_updates", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 21, name: "max_shard_size_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 22, name: "amp", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 23, name: "time_pref", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ } + ]); + } + create(value?: PartialMessage): SendPaymentRequest { + const message = { dest: new Uint8Array(0), amt: 0n, amtMsat: 0n, paymentHash: new Uint8Array(0), finalCltvDelta: 0, paymentAddr: new Uint8Array(0), paymentRequest: "", timeoutSeconds: 0, feeLimitSat: 0n, feeLimitMsat: 0n, outgoingChanId: "0", outgoingChanIds: [], lastHopPubkey: new Uint8Array(0), cltvLimit: 0, routeHints: [], destCustomRecords: {}, allowSelfPayment: false, destFeatures: [], maxParts: 0, noInflightUpdates: false, maxShardSizeMsat: 0n, amp: false, timePref: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendPaymentRequest): SendPaymentRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes dest */ 1: + message.dest = reader.bytes(); + break; + case /* int64 amt */ 2: + message.amt = reader.int64().toBigInt(); + break; + case /* int64 amt_msat */ 12: + message.amtMsat = reader.int64().toBigInt(); + break; + case /* bytes payment_hash */ 3: + message.paymentHash = reader.bytes(); + break; + case /* int32 final_cltv_delta */ 4: + message.finalCltvDelta = reader.int32(); + break; + case /* bytes payment_addr */ 20: + message.paymentAddr = reader.bytes(); + break; + case /* string payment_request */ 5: + message.paymentRequest = reader.string(); + break; + case /* int32 timeout_seconds */ 6: + message.timeoutSeconds = reader.int32(); + break; + case /* int64 fee_limit_sat */ 7: + message.feeLimitSat = reader.int64().toBigInt(); + break; + case /* int64 fee_limit_msat */ 13: + message.feeLimitMsat = reader.int64().toBigInt(); + break; + case /* uint64 outgoing_chan_id = 8 [deprecated = true, jstype = JS_STRING];*/ 8: + message.outgoingChanId = reader.uint64().toString(); + break; + case /* repeated uint64 outgoing_chan_ids */ 19: + if (wireType === WireType.LengthDelimited) + for (let e = reader.int32() + reader.pos; reader.pos < e;) + message.outgoingChanIds.push(reader.uint64().toBigInt()); + else + message.outgoingChanIds.push(reader.uint64().toBigInt()); + break; + case /* bytes last_hop_pubkey */ 14: + message.lastHopPubkey = reader.bytes(); + break; + case /* int32 cltv_limit */ 9: + message.cltvLimit = reader.int32(); + break; + case /* repeated lnrpc.RouteHint route_hints */ 10: + message.routeHints.push(RouteHint.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* map dest_custom_records */ 11: + this.binaryReadMap11(message.destCustomRecords, reader, options); + break; + case /* bool allow_self_payment */ 15: + message.allowSelfPayment = reader.bool(); + break; + case /* repeated lnrpc.FeatureBit dest_features */ 16: + if (wireType === WireType.LengthDelimited) + for (let e = reader.int32() + reader.pos; reader.pos < e;) + message.destFeatures.push(reader.int32()); + else + message.destFeatures.push(reader.int32()); + break; + case /* uint32 max_parts */ 17: + message.maxParts = reader.uint32(); + break; + case /* bool no_inflight_updates */ 18: + message.noInflightUpdates = reader.bool(); + break; + case /* uint64 max_shard_size_msat */ 21: + message.maxShardSizeMsat = reader.uint64().toBigInt(); + break; + case /* bool amp */ 22: + message.amp = reader.bool(); + break; + case /* double time_pref */ 23: + message.timePref = reader.double(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap11(map: SendPaymentRequest["destCustomRecords"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof SendPaymentRequest["destCustomRecords"] | undefined, val: SendPaymentRequest["destCustomRecords"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.uint64().toString(); + break; + case 2: + val = reader.bytes(); + break; + default: throw new globalThis.Error("unknown map entry field for field routerrpc.SendPaymentRequest.dest_custom_records"); + } + } + map[key ?? "0"] = val ?? new Uint8Array(0); + } + internalBinaryWrite(message: SendPaymentRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes dest = 1; */ + if (message.dest.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.dest); + /* int64 amt = 2; */ + if (message.amt !== 0n) + writer.tag(2, WireType.Varint).int64(message.amt); + /* int64 amt_msat = 12; */ + if (message.amtMsat !== 0n) + writer.tag(12, WireType.Varint).int64(message.amtMsat); + /* bytes payment_hash = 3; */ + if (message.paymentHash.length) + writer.tag(3, WireType.LengthDelimited).bytes(message.paymentHash); + /* int32 final_cltv_delta = 4; */ + if (message.finalCltvDelta !== 0) + writer.tag(4, WireType.Varint).int32(message.finalCltvDelta); + /* bytes payment_addr = 20; */ + if (message.paymentAddr.length) + writer.tag(20, WireType.LengthDelimited).bytes(message.paymentAddr); + /* string payment_request = 5; */ + if (message.paymentRequest !== "") + writer.tag(5, WireType.LengthDelimited).string(message.paymentRequest); + /* int32 timeout_seconds = 6; */ + if (message.timeoutSeconds !== 0) + writer.tag(6, WireType.Varint).int32(message.timeoutSeconds); + /* int64 fee_limit_sat = 7; */ + if (message.feeLimitSat !== 0n) + writer.tag(7, WireType.Varint).int64(message.feeLimitSat); + /* int64 fee_limit_msat = 13; */ + if (message.feeLimitMsat !== 0n) + writer.tag(13, WireType.Varint).int64(message.feeLimitMsat); + /* uint64 outgoing_chan_id = 8 [deprecated = true, jstype = JS_STRING]; */ + if (message.outgoingChanId !== "0") + writer.tag(8, WireType.Varint).uint64(message.outgoingChanId); + /* repeated uint64 outgoing_chan_ids = 19; */ + if (message.outgoingChanIds.length) { + writer.tag(19, WireType.LengthDelimited).fork(); + for (let i = 0; i < message.outgoingChanIds.length; i++) + writer.uint64(message.outgoingChanIds[i]); + writer.join(); + } + /* bytes last_hop_pubkey = 14; */ + if (message.lastHopPubkey.length) + writer.tag(14, WireType.LengthDelimited).bytes(message.lastHopPubkey); + /* int32 cltv_limit = 9; */ + if (message.cltvLimit !== 0) + writer.tag(9, WireType.Varint).int32(message.cltvLimit); + /* repeated lnrpc.RouteHint route_hints = 10; */ + for (let i = 0; i < message.routeHints.length; i++) + RouteHint.internalBinaryWrite(message.routeHints[i], writer.tag(10, WireType.LengthDelimited).fork(), options).join(); + /* map dest_custom_records = 11; */ + for (let k of Object.keys(message.destCustomRecords)) + writer.tag(11, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint64(k).tag(2, WireType.LengthDelimited).bytes(message.destCustomRecords[k]).join(); + /* bool allow_self_payment = 15; */ + if (message.allowSelfPayment !== false) + writer.tag(15, WireType.Varint).bool(message.allowSelfPayment); + /* repeated lnrpc.FeatureBit dest_features = 16; */ + if (message.destFeatures.length) { + writer.tag(16, WireType.LengthDelimited).fork(); + for (let i = 0; i < message.destFeatures.length; i++) + writer.int32(message.destFeatures[i]); + writer.join(); + } + /* uint32 max_parts = 17; */ + if (message.maxParts !== 0) + writer.tag(17, WireType.Varint).uint32(message.maxParts); + /* bool no_inflight_updates = 18; */ + if (message.noInflightUpdates !== false) + writer.tag(18, WireType.Varint).bool(message.noInflightUpdates); + /* uint64 max_shard_size_msat = 21; */ + if (message.maxShardSizeMsat !== 0n) + writer.tag(21, WireType.Varint).uint64(message.maxShardSizeMsat); + /* bool amp = 22; */ + if (message.amp !== false) + writer.tag(22, WireType.Varint).bool(message.amp); + /* double time_pref = 23; */ + if (message.timePref !== 0) + writer.tag(23, WireType.Bit64).double(message.timePref); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.SendPaymentRequest + */ +export const SendPaymentRequest = new SendPaymentRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class TrackPaymentRequest$Type extends MessageType { + constructor() { + super("routerrpc.TrackPaymentRequest", [ + { no: 1, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "no_inflight_updates", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): TrackPaymentRequest { + const message = { paymentHash: new Uint8Array(0), noInflightUpdates: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TrackPaymentRequest): TrackPaymentRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes payment_hash */ 1: + message.paymentHash = reader.bytes(); + break; + case /* bool no_inflight_updates */ 2: + message.noInflightUpdates = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: TrackPaymentRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes payment_hash = 1; */ + if (message.paymentHash.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.paymentHash); + /* bool no_inflight_updates = 2; */ + if (message.noInflightUpdates !== false) + writer.tag(2, WireType.Varint).bool(message.noInflightUpdates); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.TrackPaymentRequest + */ +export const TrackPaymentRequest = new TrackPaymentRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class TrackPaymentsRequest$Type extends MessageType { + constructor() { + super("routerrpc.TrackPaymentsRequest", [ + { no: 1, name: "no_inflight_updates", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): TrackPaymentsRequest { + const message = { noInflightUpdates: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TrackPaymentsRequest): TrackPaymentsRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool no_inflight_updates */ 1: + message.noInflightUpdates = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: TrackPaymentsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool no_inflight_updates = 1; */ + if (message.noInflightUpdates !== false) + writer.tag(1, WireType.Varint).bool(message.noInflightUpdates); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.TrackPaymentsRequest + */ +export const TrackPaymentsRequest = new TrackPaymentsRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class RouteFeeRequest$Type extends MessageType { + constructor() { + super("routerrpc.RouteFeeRequest", [ + { no: 1, name: "dest", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "amt_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): RouteFeeRequest { + const message = { dest: new Uint8Array(0), amtSat: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RouteFeeRequest): RouteFeeRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes dest */ 1: + message.dest = reader.bytes(); + break; + case /* int64 amt_sat */ 2: + message.amtSat = reader.int64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: RouteFeeRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes dest = 1; */ + if (message.dest.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.dest); + /* int64 amt_sat = 2; */ + if (message.amtSat !== 0n) + writer.tag(2, WireType.Varint).int64(message.amtSat); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.RouteFeeRequest + */ +export const RouteFeeRequest = new RouteFeeRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class RouteFeeResponse$Type extends MessageType { + constructor() { + super("routerrpc.RouteFeeResponse", [ + { no: 1, name: "routing_fee_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "time_lock_delay", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): RouteFeeResponse { + const message = { routingFeeMsat: 0n, timeLockDelay: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RouteFeeResponse): RouteFeeResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* int64 routing_fee_msat */ 1: + message.routingFeeMsat = reader.int64().toBigInt(); + break; + case /* int64 time_lock_delay */ 2: + message.timeLockDelay = reader.int64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: RouteFeeResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* int64 routing_fee_msat = 1; */ + if (message.routingFeeMsat !== 0n) + writer.tag(1, WireType.Varint).int64(message.routingFeeMsat); + /* int64 time_lock_delay = 2; */ + if (message.timeLockDelay !== 0n) + writer.tag(2, WireType.Varint).int64(message.timeLockDelay); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.RouteFeeResponse + */ +export const RouteFeeResponse = new RouteFeeResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SendToRouteRequest$Type extends MessageType { + constructor() { + super("routerrpc.SendToRouteRequest", [ + { no: 1, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "route", kind: "message", T: () => Route }, + { no: 3, name: "skip_temp_err", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): SendToRouteRequest { + const message = { paymentHash: new Uint8Array(0), skipTempErr: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendToRouteRequest): SendToRouteRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes payment_hash */ 1: + message.paymentHash = reader.bytes(); + break; + case /* lnrpc.Route route */ 2: + message.route = Route.internalBinaryRead(reader, reader.uint32(), options, message.route); + break; + case /* bool skip_temp_err */ 3: + message.skipTempErr = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: SendToRouteRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes payment_hash = 1; */ + if (message.paymentHash.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.paymentHash); + /* lnrpc.Route route = 2; */ + if (message.route) + Route.internalBinaryWrite(message.route, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + /* bool skip_temp_err = 3; */ + if (message.skipTempErr !== false) + writer.tag(3, WireType.Varint).bool(message.skipTempErr); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.SendToRouteRequest + */ +export const SendToRouteRequest = new SendToRouteRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SendToRouteResponse$Type extends MessageType { + constructor() { + super("routerrpc.SendToRouteResponse", [ + { no: 1, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "failure", kind: "message", T: () => Failure } + ]); + } + create(value?: PartialMessage): SendToRouteResponse { + const message = { preimage: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SendToRouteResponse): SendToRouteResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes preimage */ 1: + message.preimage = reader.bytes(); + break; + case /* lnrpc.Failure failure */ 2: + message.failure = Failure.internalBinaryRead(reader, reader.uint32(), options, message.failure); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: SendToRouteResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes preimage = 1; */ + if (message.preimage.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.preimage); + /* lnrpc.Failure failure = 2; */ + if (message.failure) + Failure.internalBinaryWrite(message.failure, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.SendToRouteResponse + */ +export const SendToRouteResponse = new SendToRouteResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ResetMissionControlRequest$Type extends MessageType { + constructor() { + super("routerrpc.ResetMissionControlRequest", []); + } + create(value?: PartialMessage): ResetMissionControlRequest { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ResetMissionControlRequest): ResetMissionControlRequest { + return target ?? this.create(); + } + internalBinaryWrite(message: ResetMissionControlRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.ResetMissionControlRequest + */ +export const ResetMissionControlRequest = new ResetMissionControlRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ResetMissionControlResponse$Type extends MessageType { + constructor() { + super("routerrpc.ResetMissionControlResponse", []); + } + create(value?: PartialMessage): ResetMissionControlResponse { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ResetMissionControlResponse): ResetMissionControlResponse { + return target ?? this.create(); + } + internalBinaryWrite(message: ResetMissionControlResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.ResetMissionControlResponse + */ +export const ResetMissionControlResponse = new ResetMissionControlResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class QueryMissionControlRequest$Type extends MessageType { + constructor() { + super("routerrpc.QueryMissionControlRequest", []); + } + create(value?: PartialMessage): QueryMissionControlRequest { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryMissionControlRequest): QueryMissionControlRequest { + return target ?? this.create(); + } + internalBinaryWrite(message: QueryMissionControlRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.QueryMissionControlRequest + */ +export const QueryMissionControlRequest = new QueryMissionControlRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class QueryMissionControlResponse$Type extends MessageType { + constructor() { + super("routerrpc.QueryMissionControlResponse", [ + { no: 2, name: "pairs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => PairHistory } + ]); + } + create(value?: PartialMessage): QueryMissionControlResponse { + const message = { pairs: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryMissionControlResponse): QueryMissionControlResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated routerrpc.PairHistory pairs */ 2: + message.pairs.push(PairHistory.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: QueryMissionControlResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated routerrpc.PairHistory pairs = 2; */ + for (let i = 0; i < message.pairs.length; i++) + PairHistory.internalBinaryWrite(message.pairs[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.QueryMissionControlResponse + */ +export const QueryMissionControlResponse = new QueryMissionControlResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class XImportMissionControlRequest$Type extends MessageType { + constructor() { + super("routerrpc.XImportMissionControlRequest", [ + { no: 1, name: "pairs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => PairHistory }, + { no: 2, name: "force", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): XImportMissionControlRequest { + const message = { pairs: [], force: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: XImportMissionControlRequest): XImportMissionControlRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* repeated routerrpc.PairHistory pairs */ 1: + message.pairs.push(PairHistory.internalBinaryRead(reader, reader.uint32(), options)); + break; + case /* bool force */ 2: + message.force = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: XImportMissionControlRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* repeated routerrpc.PairHistory pairs = 1; */ + for (let i = 0; i < message.pairs.length; i++) + PairHistory.internalBinaryWrite(message.pairs[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* bool force = 2; */ + if (message.force !== false) + writer.tag(2, WireType.Varint).bool(message.force); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.XImportMissionControlRequest + */ +export const XImportMissionControlRequest = new XImportMissionControlRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class XImportMissionControlResponse$Type extends MessageType { + constructor() { + super("routerrpc.XImportMissionControlResponse", []); + } + create(value?: PartialMessage): XImportMissionControlResponse { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: XImportMissionControlResponse): XImportMissionControlResponse { + return target ?? this.create(); + } + internalBinaryWrite(message: XImportMissionControlResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.XImportMissionControlResponse + */ +export const XImportMissionControlResponse = new XImportMissionControlResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PairHistory$Type extends MessageType { + constructor() { + super("routerrpc.PairHistory", [ + { no: 1, name: "node_from", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "node_to", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 7, name: "history", kind: "message", T: () => PairData } + ]); + } + create(value?: PartialMessage): PairHistory { + const message = { nodeFrom: new Uint8Array(0), nodeTo: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PairHistory): PairHistory { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes node_from */ 1: + message.nodeFrom = reader.bytes(); + break; + case /* bytes node_to */ 2: + message.nodeTo = reader.bytes(); + break; + case /* routerrpc.PairData history */ 7: + message.history = PairData.internalBinaryRead(reader, reader.uint32(), options, message.history); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PairHistory, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes node_from = 1; */ + if (message.nodeFrom.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.nodeFrom); + /* bytes node_to = 2; */ + if (message.nodeTo.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.nodeTo); + /* routerrpc.PairData history = 7; */ + if (message.history) + PairData.internalBinaryWrite(message.history, writer.tag(7, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.PairHistory + */ +export const PairHistory = new PairHistory$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PairData$Type extends MessageType { + constructor() { + super("routerrpc.PairData", [ + { no: 1, name: "fail_time", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "fail_amt_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "fail_amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "success_time", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "success_amt_sat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 7, name: "success_amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): PairData { + const message = { failTime: 0n, failAmtSat: 0n, failAmtMsat: 0n, successTime: 0n, successAmtSat: 0n, successAmtMsat: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PairData): PairData { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* int64 fail_time */ 1: + message.failTime = reader.int64().toBigInt(); + break; + case /* int64 fail_amt_sat */ 2: + message.failAmtSat = reader.int64().toBigInt(); + break; + case /* int64 fail_amt_msat */ 4: + message.failAmtMsat = reader.int64().toBigInt(); + break; + case /* int64 success_time */ 5: + message.successTime = reader.int64().toBigInt(); + break; + case /* int64 success_amt_sat */ 6: + message.successAmtSat = reader.int64().toBigInt(); + break; + case /* int64 success_amt_msat */ 7: + message.successAmtMsat = reader.int64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PairData, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* int64 fail_time = 1; */ + if (message.failTime !== 0n) + writer.tag(1, WireType.Varint).int64(message.failTime); + /* int64 fail_amt_sat = 2; */ + if (message.failAmtSat !== 0n) + writer.tag(2, WireType.Varint).int64(message.failAmtSat); + /* int64 fail_amt_msat = 4; */ + if (message.failAmtMsat !== 0n) + writer.tag(4, WireType.Varint).int64(message.failAmtMsat); + /* int64 success_time = 5; */ + if (message.successTime !== 0n) + writer.tag(5, WireType.Varint).int64(message.successTime); + /* int64 success_amt_sat = 6; */ + if (message.successAmtSat !== 0n) + writer.tag(6, WireType.Varint).int64(message.successAmtSat); + /* int64 success_amt_msat = 7; */ + if (message.successAmtMsat !== 0n) + writer.tag(7, WireType.Varint).int64(message.successAmtMsat); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.PairData + */ +export const PairData = new PairData$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class GetMissionControlConfigRequest$Type extends MessageType { + constructor() { + super("routerrpc.GetMissionControlConfigRequest", []); + } + create(value?: PartialMessage): GetMissionControlConfigRequest { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetMissionControlConfigRequest): GetMissionControlConfigRequest { + return target ?? this.create(); + } + internalBinaryWrite(message: GetMissionControlConfigRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.GetMissionControlConfigRequest + */ +export const GetMissionControlConfigRequest = new GetMissionControlConfigRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class GetMissionControlConfigResponse$Type extends MessageType { + constructor() { + super("routerrpc.GetMissionControlConfigResponse", [ + { no: 1, name: "config", kind: "message", T: () => MissionControlConfig } + ]); + } + create(value?: PartialMessage): GetMissionControlConfigResponse { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetMissionControlConfigResponse): GetMissionControlConfigResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* routerrpc.MissionControlConfig config */ 1: + message.config = MissionControlConfig.internalBinaryRead(reader, reader.uint32(), options, message.config); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: GetMissionControlConfigResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* routerrpc.MissionControlConfig config = 1; */ + if (message.config) + MissionControlConfig.internalBinaryWrite(message.config, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.GetMissionControlConfigResponse + */ +export const GetMissionControlConfigResponse = new GetMissionControlConfigResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SetMissionControlConfigRequest$Type extends MessageType { + constructor() { + super("routerrpc.SetMissionControlConfigRequest", [ + { no: 1, name: "config", kind: "message", T: () => MissionControlConfig } + ]); + } + create(value?: PartialMessage): SetMissionControlConfigRequest { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SetMissionControlConfigRequest): SetMissionControlConfigRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* routerrpc.MissionControlConfig config */ 1: + message.config = MissionControlConfig.internalBinaryRead(reader, reader.uint32(), options, message.config); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: SetMissionControlConfigRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* routerrpc.MissionControlConfig config = 1; */ + if (message.config) + MissionControlConfig.internalBinaryWrite(message.config, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.SetMissionControlConfigRequest + */ +export const SetMissionControlConfigRequest = new SetMissionControlConfigRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SetMissionControlConfigResponse$Type extends MessageType { + constructor() { + super("routerrpc.SetMissionControlConfigResponse", []); + } + create(value?: PartialMessage): SetMissionControlConfigResponse { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SetMissionControlConfigResponse): SetMissionControlConfigResponse { + return target ?? this.create(); + } + internalBinaryWrite(message: SetMissionControlConfigResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.SetMissionControlConfigResponse + */ +export const SetMissionControlConfigResponse = new SetMissionControlConfigResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class MissionControlConfig$Type extends MessageType { + constructor() { + super("routerrpc.MissionControlConfig", [ + { no: 1, name: "half_life_seconds", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "hop_probability", kind: "scalar", T: 2 /*ScalarType.FLOAT*/ }, + { no: 3, name: "weight", kind: "scalar", T: 2 /*ScalarType.FLOAT*/ }, + { no: 4, name: "maximum_payment_results", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 5, name: "minimum_failure_relax_interval", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): MissionControlConfig { + const message = { halfLifeSeconds: 0n, hopProbability: 0, weight: 0, maximumPaymentResults: 0, minimumFailureRelaxInterval: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MissionControlConfig): MissionControlConfig { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 half_life_seconds */ 1: + message.halfLifeSeconds = reader.uint64().toBigInt(); + break; + case /* float hop_probability */ 2: + message.hopProbability = reader.float(); + break; + case /* float weight */ 3: + message.weight = reader.float(); + break; + case /* uint32 maximum_payment_results */ 4: + message.maximumPaymentResults = reader.uint32(); + break; + case /* uint64 minimum_failure_relax_interval */ 5: + message.minimumFailureRelaxInterval = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: MissionControlConfig, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 half_life_seconds = 1; */ + if (message.halfLifeSeconds !== 0n) + writer.tag(1, WireType.Varint).uint64(message.halfLifeSeconds); + /* float hop_probability = 2; */ + if (message.hopProbability !== 0) + writer.tag(2, WireType.Bit32).float(message.hopProbability); + /* float weight = 3; */ + if (message.weight !== 0) + writer.tag(3, WireType.Bit32).float(message.weight); + /* uint32 maximum_payment_results = 4; */ + if (message.maximumPaymentResults !== 0) + writer.tag(4, WireType.Varint).uint32(message.maximumPaymentResults); + /* uint64 minimum_failure_relax_interval = 5; */ + if (message.minimumFailureRelaxInterval !== 0n) + writer.tag(5, WireType.Varint).uint64(message.minimumFailureRelaxInterval); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.MissionControlConfig + */ +export const MissionControlConfig = new MissionControlConfig$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class QueryProbabilityRequest$Type extends MessageType { + constructor() { + super("routerrpc.QueryProbabilityRequest", [ + { no: 1, name: "from_node", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 2, name: "to_node", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 3, name: "amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): QueryProbabilityRequest { + const message = { fromNode: new Uint8Array(0), toNode: new Uint8Array(0), amtMsat: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryProbabilityRequest): QueryProbabilityRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes from_node */ 1: + message.fromNode = reader.bytes(); + break; + case /* bytes to_node */ 2: + message.toNode = reader.bytes(); + break; + case /* int64 amt_msat */ 3: + message.amtMsat = reader.int64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: QueryProbabilityRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes from_node = 1; */ + if (message.fromNode.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.fromNode); + /* bytes to_node = 2; */ + if (message.toNode.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.toNode); + /* int64 amt_msat = 3; */ + if (message.amtMsat !== 0n) + writer.tag(3, WireType.Varint).int64(message.amtMsat); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.QueryProbabilityRequest + */ +export const QueryProbabilityRequest = new QueryProbabilityRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class QueryProbabilityResponse$Type extends MessageType { + constructor() { + super("routerrpc.QueryProbabilityResponse", [ + { no: 1, name: "probability", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ }, + { no: 2, name: "history", kind: "message", T: () => PairData } + ]); + } + create(value?: PartialMessage): QueryProbabilityResponse { + const message = { probability: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: QueryProbabilityResponse): QueryProbabilityResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* double probability */ 1: + message.probability = reader.double(); + break; + case /* routerrpc.PairData history */ 2: + message.history = PairData.internalBinaryRead(reader, reader.uint32(), options, message.history); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: QueryProbabilityResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* double probability = 1; */ + if (message.probability !== 0) + writer.tag(1, WireType.Bit64).double(message.probability); + /* routerrpc.PairData history = 2; */ + if (message.history) + PairData.internalBinaryWrite(message.history, writer.tag(2, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.QueryProbabilityResponse + */ +export const QueryProbabilityResponse = new QueryProbabilityResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class BuildRouteRequest$Type extends MessageType { + constructor() { + super("routerrpc.BuildRouteRequest", [ + { no: 1, name: "amt_msat", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "final_cltv_delta", kind: "scalar", T: 5 /*ScalarType.INT32*/ }, + { no: 3, name: "outgoing_chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/ }, + { no: 4, name: "hop_pubkeys", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 12 /*ScalarType.BYTES*/ }, + { no: 5, name: "payment_addr", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): BuildRouteRequest { + const message = { amtMsat: 0n, finalCltvDelta: 0, outgoingChanId: "0", hopPubkeys: [], paymentAddr: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BuildRouteRequest): BuildRouteRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* int64 amt_msat */ 1: + message.amtMsat = reader.int64().toBigInt(); + break; + case /* int32 final_cltv_delta */ 2: + message.finalCltvDelta = reader.int32(); + break; + case /* uint64 outgoing_chan_id = 3 [jstype = JS_STRING];*/ 3: + message.outgoingChanId = reader.uint64().toString(); + break; + case /* repeated bytes hop_pubkeys */ 4: + message.hopPubkeys.push(reader.bytes()); + break; + case /* bytes payment_addr */ 5: + message.paymentAddr = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: BuildRouteRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* int64 amt_msat = 1; */ + if (message.amtMsat !== 0n) + writer.tag(1, WireType.Varint).int64(message.amtMsat); + /* int32 final_cltv_delta = 2; */ + if (message.finalCltvDelta !== 0) + writer.tag(2, WireType.Varint).int32(message.finalCltvDelta); + /* uint64 outgoing_chan_id = 3 [jstype = JS_STRING]; */ + if (message.outgoingChanId !== "0") + writer.tag(3, WireType.Varint).uint64(message.outgoingChanId); + /* repeated bytes hop_pubkeys = 4; */ + for (let i = 0; i < message.hopPubkeys.length; i++) + writer.tag(4, WireType.LengthDelimited).bytes(message.hopPubkeys[i]); + /* bytes payment_addr = 5; */ + if (message.paymentAddr.length) + writer.tag(5, WireType.LengthDelimited).bytes(message.paymentAddr); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.BuildRouteRequest + */ +export const BuildRouteRequest = new BuildRouteRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class BuildRouteResponse$Type extends MessageType { + constructor() { + super("routerrpc.BuildRouteResponse", [ + { no: 1, name: "route", kind: "message", T: () => Route } + ]); + } + create(value?: PartialMessage): BuildRouteResponse { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BuildRouteResponse): BuildRouteResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.Route route */ 1: + message.route = Route.internalBinaryRead(reader, reader.uint32(), options, message.route); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: BuildRouteResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.Route route = 1; */ + if (message.route) + Route.internalBinaryWrite(message.route, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.BuildRouteResponse + */ +export const BuildRouteResponse = new BuildRouteResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SubscribeHtlcEventsRequest$Type extends MessageType { + constructor() { + super("routerrpc.SubscribeHtlcEventsRequest", []); + } + create(value?: PartialMessage): SubscribeHtlcEventsRequest { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SubscribeHtlcEventsRequest): SubscribeHtlcEventsRequest { + return target ?? this.create(); + } + internalBinaryWrite(message: SubscribeHtlcEventsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.SubscribeHtlcEventsRequest + */ +export const SubscribeHtlcEventsRequest = new SubscribeHtlcEventsRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class HtlcEvent$Type extends MessageType { + constructor() { + super("routerrpc.HtlcEvent", [ + { no: 1, name: "incoming_channel_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "outgoing_channel_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "incoming_htlc_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "outgoing_htlc_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 5, name: "timestamp_ns", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "event_type", kind: "enum", T: () => ["routerrpc.HtlcEvent.EventType", HtlcEvent_EventType] }, + { no: 7, name: "forward_event", kind: "message", oneof: "event", T: () => ForwardEvent }, + { no: 8, name: "forward_fail_event", kind: "message", oneof: "event", T: () => ForwardFailEvent }, + { no: 9, name: "settle_event", kind: "message", oneof: "event", T: () => SettleEvent }, + { no: 10, name: "link_fail_event", kind: "message", oneof: "event", T: () => LinkFailEvent }, + { no: 11, name: "subscribed_event", kind: "message", oneof: "event", T: () => SubscribedEvent }, + { no: 12, name: "final_htlc_event", kind: "message", oneof: "event", T: () => FinalHtlcEvent } + ]); + } + create(value?: PartialMessage): HtlcEvent { + const message = { incomingChannelId: 0n, outgoingChannelId: 0n, incomingHtlcId: 0n, outgoingHtlcId: 0n, timestampNs: 0n, eventType: 0, event: { oneofKind: undefined } }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: HtlcEvent): HtlcEvent { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 incoming_channel_id */ 1: + message.incomingChannelId = reader.uint64().toBigInt(); + break; + case /* uint64 outgoing_channel_id */ 2: + message.outgoingChannelId = reader.uint64().toBigInt(); + break; + case /* uint64 incoming_htlc_id */ 3: + message.incomingHtlcId = reader.uint64().toBigInt(); + break; + case /* uint64 outgoing_htlc_id */ 4: + message.outgoingHtlcId = reader.uint64().toBigInt(); + break; + case /* uint64 timestamp_ns */ 5: + message.timestampNs = reader.uint64().toBigInt(); + break; + case /* routerrpc.HtlcEvent.EventType event_type */ 6: + message.eventType = reader.int32(); + break; + case /* routerrpc.ForwardEvent forward_event */ 7: + message.event = { + oneofKind: "forwardEvent", + forwardEvent: ForwardEvent.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).forwardEvent) + }; + break; + case /* routerrpc.ForwardFailEvent forward_fail_event */ 8: + message.event = { + oneofKind: "forwardFailEvent", + forwardFailEvent: ForwardFailEvent.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).forwardFailEvent) + }; + break; + case /* routerrpc.SettleEvent settle_event */ 9: + message.event = { + oneofKind: "settleEvent", + settleEvent: SettleEvent.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).settleEvent) + }; + break; + case /* routerrpc.LinkFailEvent link_fail_event */ 10: + message.event = { + oneofKind: "linkFailEvent", + linkFailEvent: LinkFailEvent.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).linkFailEvent) + }; + break; + case /* routerrpc.SubscribedEvent subscribed_event */ 11: + message.event = { + oneofKind: "subscribedEvent", + subscribedEvent: SubscribedEvent.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).subscribedEvent) + }; + break; + case /* routerrpc.FinalHtlcEvent final_htlc_event */ 12: + message.event = { + oneofKind: "finalHtlcEvent", + finalHtlcEvent: FinalHtlcEvent.internalBinaryRead(reader, reader.uint32(), options, (message.event as any).finalHtlcEvent) + }; + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: HtlcEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 incoming_channel_id = 1; */ + if (message.incomingChannelId !== 0n) + writer.tag(1, WireType.Varint).uint64(message.incomingChannelId); + /* uint64 outgoing_channel_id = 2; */ + if (message.outgoingChannelId !== 0n) + writer.tag(2, WireType.Varint).uint64(message.outgoingChannelId); + /* uint64 incoming_htlc_id = 3; */ + if (message.incomingHtlcId !== 0n) + writer.tag(3, WireType.Varint).uint64(message.incomingHtlcId); + /* uint64 outgoing_htlc_id = 4; */ + if (message.outgoingHtlcId !== 0n) + writer.tag(4, WireType.Varint).uint64(message.outgoingHtlcId); + /* uint64 timestamp_ns = 5; */ + if (message.timestampNs !== 0n) + writer.tag(5, WireType.Varint).uint64(message.timestampNs); + /* routerrpc.HtlcEvent.EventType event_type = 6; */ + if (message.eventType !== 0) + writer.tag(6, WireType.Varint).int32(message.eventType); + /* routerrpc.ForwardEvent forward_event = 7; */ + if (message.event.oneofKind === "forwardEvent") + ForwardEvent.internalBinaryWrite(message.event.forwardEvent, writer.tag(7, WireType.LengthDelimited).fork(), options).join(); + /* routerrpc.ForwardFailEvent forward_fail_event = 8; */ + if (message.event.oneofKind === "forwardFailEvent") + ForwardFailEvent.internalBinaryWrite(message.event.forwardFailEvent, writer.tag(8, WireType.LengthDelimited).fork(), options).join(); + /* routerrpc.SettleEvent settle_event = 9; */ + if (message.event.oneofKind === "settleEvent") + SettleEvent.internalBinaryWrite(message.event.settleEvent, writer.tag(9, WireType.LengthDelimited).fork(), options).join(); + /* routerrpc.LinkFailEvent link_fail_event = 10; */ + if (message.event.oneofKind === "linkFailEvent") + LinkFailEvent.internalBinaryWrite(message.event.linkFailEvent, writer.tag(10, WireType.LengthDelimited).fork(), options).join(); + /* routerrpc.SubscribedEvent subscribed_event = 11; */ + if (message.event.oneofKind === "subscribedEvent") + SubscribedEvent.internalBinaryWrite(message.event.subscribedEvent, writer.tag(11, WireType.LengthDelimited).fork(), options).join(); + /* routerrpc.FinalHtlcEvent final_htlc_event = 12; */ + if (message.event.oneofKind === "finalHtlcEvent") + FinalHtlcEvent.internalBinaryWrite(message.event.finalHtlcEvent, writer.tag(12, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.HtlcEvent + */ +export const HtlcEvent = new HtlcEvent$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class HtlcInfo$Type extends MessageType { + constructor() { + super("routerrpc.HtlcInfo", [ + { no: 1, name: "incoming_timelock", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 2, name: "outgoing_timelock", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 3, name: "incoming_amt_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "outgoing_amt_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): HtlcInfo { + const message = { incomingTimelock: 0, outgoingTimelock: 0, incomingAmtMsat: 0n, outgoingAmtMsat: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: HtlcInfo): HtlcInfo { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint32 incoming_timelock */ 1: + message.incomingTimelock = reader.uint32(); + break; + case /* uint32 outgoing_timelock */ 2: + message.outgoingTimelock = reader.uint32(); + break; + case /* uint64 incoming_amt_msat */ 3: + message.incomingAmtMsat = reader.uint64().toBigInt(); + break; + case /* uint64 outgoing_amt_msat */ 4: + message.outgoingAmtMsat = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: HtlcInfo, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint32 incoming_timelock = 1; */ + if (message.incomingTimelock !== 0) + writer.tag(1, WireType.Varint).uint32(message.incomingTimelock); + /* uint32 outgoing_timelock = 2; */ + if (message.outgoingTimelock !== 0) + writer.tag(2, WireType.Varint).uint32(message.outgoingTimelock); + /* uint64 incoming_amt_msat = 3; */ + if (message.incomingAmtMsat !== 0n) + writer.tag(3, WireType.Varint).uint64(message.incomingAmtMsat); + /* uint64 outgoing_amt_msat = 4; */ + if (message.outgoingAmtMsat !== 0n) + writer.tag(4, WireType.Varint).uint64(message.outgoingAmtMsat); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.HtlcInfo + */ +export const HtlcInfo = new HtlcInfo$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ForwardEvent$Type extends MessageType { + constructor() { + super("routerrpc.ForwardEvent", [ + { no: 1, name: "info", kind: "message", T: () => HtlcInfo } + ]); + } + create(value?: PartialMessage): ForwardEvent { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ForwardEvent): ForwardEvent { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* routerrpc.HtlcInfo info */ 1: + message.info = HtlcInfo.internalBinaryRead(reader, reader.uint32(), options, message.info); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ForwardEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* routerrpc.HtlcInfo info = 1; */ + if (message.info) + HtlcInfo.internalBinaryWrite(message.info, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.ForwardEvent + */ +export const ForwardEvent = new ForwardEvent$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ForwardFailEvent$Type extends MessageType { + constructor() { + super("routerrpc.ForwardFailEvent", []); + } + create(value?: PartialMessage): ForwardFailEvent { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ForwardFailEvent): ForwardFailEvent { + return target ?? this.create(); + } + internalBinaryWrite(message: ForwardFailEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.ForwardFailEvent + */ +export const ForwardFailEvent = new ForwardFailEvent$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SettleEvent$Type extends MessageType { + constructor() { + super("routerrpc.SettleEvent", [ + { no: 1, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ } + ]); + } + create(value?: PartialMessage): SettleEvent { + const message = { preimage: new Uint8Array(0) }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SettleEvent): SettleEvent { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bytes preimage */ 1: + message.preimage = reader.bytes(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: SettleEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bytes preimage = 1; */ + if (message.preimage.length) + writer.tag(1, WireType.LengthDelimited).bytes(message.preimage); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.SettleEvent + */ +export const SettleEvent = new SettleEvent$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class FinalHtlcEvent$Type extends MessageType { + constructor() { + super("routerrpc.FinalHtlcEvent", [ + { no: 1, name: "settled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }, + { no: 2, name: "offchain", kind: "scalar", T: 8 /*ScalarType.BOOL*/ } + ]); + } + create(value?: PartialMessage): FinalHtlcEvent { + const message = { settled: false, offchain: false }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FinalHtlcEvent): FinalHtlcEvent { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* bool settled */ 1: + message.settled = reader.bool(); + break; + case /* bool offchain */ 2: + message.offchain = reader.bool(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: FinalHtlcEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* bool settled = 1; */ + if (message.settled !== false) + writer.tag(1, WireType.Varint).bool(message.settled); + /* bool offchain = 2; */ + if (message.offchain !== false) + writer.tag(2, WireType.Varint).bool(message.offchain); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.FinalHtlcEvent + */ +export const FinalHtlcEvent = new FinalHtlcEvent$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class SubscribedEvent$Type extends MessageType { + constructor() { + super("routerrpc.SubscribedEvent", []); + } + create(value?: PartialMessage): SubscribedEvent { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SubscribedEvent): SubscribedEvent { + return target ?? this.create(); + } + internalBinaryWrite(message: SubscribedEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.SubscribedEvent + */ +export const SubscribedEvent = new SubscribedEvent$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class LinkFailEvent$Type extends MessageType { + constructor() { + super("routerrpc.LinkFailEvent", [ + { no: 1, name: "info", kind: "message", T: () => HtlcInfo }, + { no: 2, name: "wire_failure", kind: "enum", T: () => ["lnrpc.Failure.FailureCode", Failure_FailureCode] }, + { no: 3, name: "failure_detail", kind: "enum", T: () => ["routerrpc.FailureDetail", FailureDetail] }, + { no: 4, name: "failure_string", kind: "scalar", T: 9 /*ScalarType.STRING*/ } + ]); + } + create(value?: PartialMessage): LinkFailEvent { + const message = { wireFailure: 0, failureDetail: 0, failureString: "" }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LinkFailEvent): LinkFailEvent { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* routerrpc.HtlcInfo info */ 1: + message.info = HtlcInfo.internalBinaryRead(reader, reader.uint32(), options, message.info); + break; + case /* lnrpc.Failure.FailureCode wire_failure */ 2: + message.wireFailure = reader.int32(); + break; + case /* routerrpc.FailureDetail failure_detail */ 3: + message.failureDetail = reader.int32(); + break; + case /* string failure_string */ 4: + message.failureString = reader.string(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: LinkFailEvent, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* routerrpc.HtlcInfo info = 1; */ + if (message.info) + HtlcInfo.internalBinaryWrite(message.info, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* lnrpc.Failure.FailureCode wire_failure = 2; */ + if (message.wireFailure !== 0) + writer.tag(2, WireType.Varint).int32(message.wireFailure); + /* routerrpc.FailureDetail failure_detail = 3; */ + if (message.failureDetail !== 0) + writer.tag(3, WireType.Varint).int32(message.failureDetail); + /* string failure_string = 4; */ + if (message.failureString !== "") + writer.tag(4, WireType.LengthDelimited).string(message.failureString); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.LinkFailEvent + */ +export const LinkFailEvent = new LinkFailEvent$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class PaymentStatus$Type extends MessageType { + constructor() { + super("routerrpc.PaymentStatus", [ + { no: 1, name: "state", kind: "enum", T: () => ["routerrpc.PaymentState", PaymentState] }, + { no: 2, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 4, name: "htlcs", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => HTLCAttempt } + ]); + } + create(value?: PartialMessage): PaymentStatus { + const message = { state: 0, preimage: new Uint8Array(0), htlcs: [] }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PaymentStatus): PaymentStatus { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* routerrpc.PaymentState state */ 1: + message.state = reader.int32(); + break; + case /* bytes preimage */ 2: + message.preimage = reader.bytes(); + break; + case /* repeated lnrpc.HTLCAttempt htlcs */ 4: + message.htlcs.push(HTLCAttempt.internalBinaryRead(reader, reader.uint32(), options)); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: PaymentStatus, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* routerrpc.PaymentState state = 1; */ + if (message.state !== 0) + writer.tag(1, WireType.Varint).int32(message.state); + /* bytes preimage = 2; */ + if (message.preimage.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.preimage); + /* repeated lnrpc.HTLCAttempt htlcs = 4; */ + for (let i = 0; i < message.htlcs.length; i++) + HTLCAttempt.internalBinaryWrite(message.htlcs[i], writer.tag(4, WireType.LengthDelimited).fork(), options).join(); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.PaymentStatus + */ +export const PaymentStatus = new PaymentStatus$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class CircuitKey$Type extends MessageType { + constructor() { + super("routerrpc.CircuitKey", [ + { no: 1, name: "chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 2, name: "htlc_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ } + ]); + } + create(value?: PartialMessage): CircuitKey { + const message = { chanId: 0n, htlcId: 0n }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CircuitKey): CircuitKey { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* uint64 chan_id */ 1: + message.chanId = reader.uint64().toBigInt(); + break; + case /* uint64 htlc_id */ 2: + message.htlcId = reader.uint64().toBigInt(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: CircuitKey, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* uint64 chan_id = 1; */ + if (message.chanId !== 0n) + writer.tag(1, WireType.Varint).uint64(message.chanId); + /* uint64 htlc_id = 2; */ + if (message.htlcId !== 0n) + writer.tag(2, WireType.Varint).uint64(message.htlcId); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.CircuitKey + */ +export const CircuitKey = new CircuitKey$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ForwardHtlcInterceptRequest$Type extends MessageType { + constructor() { + super("routerrpc.ForwardHtlcInterceptRequest", [ + { no: 1, name: "incoming_circuit_key", kind: "message", T: () => CircuitKey }, + { no: 5, name: "incoming_amount_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 6, name: "incoming_expiry", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 2, name: "payment_hash", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 7, name: "outgoing_requested_chan_id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 3, name: "outgoing_amount_msat", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }, + { no: 4, name: "outgoing_expiry", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }, + { no: 8, name: "custom_records", kind: "map", K: 4 /*ScalarType.UINT64*/, V: { kind: "scalar", T: 12 /*ScalarType.BYTES*/ } }, + { no: 9, name: "onion_blob", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 10, name: "auto_fail_height", kind: "scalar", T: 5 /*ScalarType.INT32*/ } + ]); + } + create(value?: PartialMessage): ForwardHtlcInterceptRequest { + const message = { incomingAmountMsat: 0n, incomingExpiry: 0, paymentHash: new Uint8Array(0), outgoingRequestedChanId: 0n, outgoingAmountMsat: 0n, outgoingExpiry: 0, customRecords: {}, onionBlob: new Uint8Array(0), autoFailHeight: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ForwardHtlcInterceptRequest): ForwardHtlcInterceptRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* routerrpc.CircuitKey incoming_circuit_key */ 1: + message.incomingCircuitKey = CircuitKey.internalBinaryRead(reader, reader.uint32(), options, message.incomingCircuitKey); + break; + case /* uint64 incoming_amount_msat */ 5: + message.incomingAmountMsat = reader.uint64().toBigInt(); + break; + case /* uint32 incoming_expiry */ 6: + message.incomingExpiry = reader.uint32(); + break; + case /* bytes payment_hash */ 2: + message.paymentHash = reader.bytes(); + break; + case /* uint64 outgoing_requested_chan_id */ 7: + message.outgoingRequestedChanId = reader.uint64().toBigInt(); + break; + case /* uint64 outgoing_amount_msat */ 3: + message.outgoingAmountMsat = reader.uint64().toBigInt(); + break; + case /* uint32 outgoing_expiry */ 4: + message.outgoingExpiry = reader.uint32(); + break; + case /* map custom_records */ 8: + this.binaryReadMap8(message.customRecords, reader, options); + break; + case /* bytes onion_blob */ 9: + message.onionBlob = reader.bytes(); + break; + case /* int32 auto_fail_height */ 10: + message.autoFailHeight = reader.int32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + private binaryReadMap8(map: ForwardHtlcInterceptRequest["customRecords"], reader: IBinaryReader, options: BinaryReadOptions): void { + let len = reader.uint32(), end = reader.pos + len, key: keyof ForwardHtlcInterceptRequest["customRecords"] | undefined, val: ForwardHtlcInterceptRequest["customRecords"][any] | undefined; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case 1: + key = reader.uint64().toString(); + break; + case 2: + val = reader.bytes(); + break; + default: throw new globalThis.Error("unknown map entry field for field routerrpc.ForwardHtlcInterceptRequest.custom_records"); + } + } + map[key ?? "0"] = val ?? new Uint8Array(0); + } + internalBinaryWrite(message: ForwardHtlcInterceptRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* routerrpc.CircuitKey incoming_circuit_key = 1; */ + if (message.incomingCircuitKey) + CircuitKey.internalBinaryWrite(message.incomingCircuitKey, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* uint64 incoming_amount_msat = 5; */ + if (message.incomingAmountMsat !== 0n) + writer.tag(5, WireType.Varint).uint64(message.incomingAmountMsat); + /* uint32 incoming_expiry = 6; */ + if (message.incomingExpiry !== 0) + writer.tag(6, WireType.Varint).uint32(message.incomingExpiry); + /* bytes payment_hash = 2; */ + if (message.paymentHash.length) + writer.tag(2, WireType.LengthDelimited).bytes(message.paymentHash); + /* uint64 outgoing_requested_chan_id = 7; */ + if (message.outgoingRequestedChanId !== 0n) + writer.tag(7, WireType.Varint).uint64(message.outgoingRequestedChanId); + /* uint64 outgoing_amount_msat = 3; */ + if (message.outgoingAmountMsat !== 0n) + writer.tag(3, WireType.Varint).uint64(message.outgoingAmountMsat); + /* uint32 outgoing_expiry = 4; */ + if (message.outgoingExpiry !== 0) + writer.tag(4, WireType.Varint).uint32(message.outgoingExpiry); + /* map custom_records = 8; */ + for (let k of Object.keys(message.customRecords)) + writer.tag(8, WireType.LengthDelimited).fork().tag(1, WireType.Varint).uint64(k).tag(2, WireType.LengthDelimited).bytes(message.customRecords[k]).join(); + /* bytes onion_blob = 9; */ + if (message.onionBlob.length) + writer.tag(9, WireType.LengthDelimited).bytes(message.onionBlob); + /* int32 auto_fail_height = 10; */ + if (message.autoFailHeight !== 0) + writer.tag(10, WireType.Varint).int32(message.autoFailHeight); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.ForwardHtlcInterceptRequest + */ +export const ForwardHtlcInterceptRequest = new ForwardHtlcInterceptRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class ForwardHtlcInterceptResponse$Type extends MessageType { + constructor() { + super("routerrpc.ForwardHtlcInterceptResponse", [ + { no: 1, name: "incoming_circuit_key", kind: "message", T: () => CircuitKey }, + { no: 2, name: "action", kind: "enum", T: () => ["routerrpc.ResolveHoldForwardAction", ResolveHoldForwardAction] }, + { no: 3, name: "preimage", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 4, name: "failure_message", kind: "scalar", T: 12 /*ScalarType.BYTES*/ }, + { no: 5, name: "failure_code", kind: "enum", T: () => ["lnrpc.Failure.FailureCode", Failure_FailureCode] } + ]); + } + create(value?: PartialMessage): ForwardHtlcInterceptResponse { + const message = { action: 0, preimage: new Uint8Array(0), failureMessage: new Uint8Array(0), failureCode: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ForwardHtlcInterceptResponse): ForwardHtlcInterceptResponse { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* routerrpc.CircuitKey incoming_circuit_key */ 1: + message.incomingCircuitKey = CircuitKey.internalBinaryRead(reader, reader.uint32(), options, message.incomingCircuitKey); + break; + case /* routerrpc.ResolveHoldForwardAction action */ 2: + message.action = reader.int32(); + break; + case /* bytes preimage */ 3: + message.preimage = reader.bytes(); + break; + case /* bytes failure_message */ 4: + message.failureMessage = reader.bytes(); + break; + case /* lnrpc.Failure.FailureCode failure_code */ 5: + message.failureCode = reader.int32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: ForwardHtlcInterceptResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* routerrpc.CircuitKey incoming_circuit_key = 1; */ + if (message.incomingCircuitKey) + CircuitKey.internalBinaryWrite(message.incomingCircuitKey, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* routerrpc.ResolveHoldForwardAction action = 2; */ + if (message.action !== 0) + writer.tag(2, WireType.Varint).int32(message.action); + /* bytes preimage = 3; */ + if (message.preimage.length) + writer.tag(3, WireType.LengthDelimited).bytes(message.preimage); + /* bytes failure_message = 4; */ + if (message.failureMessage.length) + writer.tag(4, WireType.LengthDelimited).bytes(message.failureMessage); + /* lnrpc.Failure.FailureCode failure_code = 5; */ + if (message.failureCode !== 0) + writer.tag(5, WireType.Varint).int32(message.failureCode); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.ForwardHtlcInterceptResponse + */ +export const ForwardHtlcInterceptResponse = new ForwardHtlcInterceptResponse$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class UpdateChanStatusRequest$Type extends MessageType { + constructor() { + super("routerrpc.UpdateChanStatusRequest", [ + { no: 1, name: "chan_point", kind: "message", T: () => ChannelPoint }, + { no: 2, name: "action", kind: "enum", T: () => ["routerrpc.ChanStatusAction", ChanStatusAction] } + ]); + } + create(value?: PartialMessage): UpdateChanStatusRequest { + const message = { action: 0 }; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: UpdateChanStatusRequest): UpdateChanStatusRequest { + let message = target ?? this.create(), end = reader.pos + length; + while (reader.pos < end) { + let [fieldNo, wireType] = reader.tag(); + switch (fieldNo) { + case /* lnrpc.ChannelPoint chan_point */ 1: + message.chanPoint = ChannelPoint.internalBinaryRead(reader, reader.uint32(), options, message.chanPoint); + break; + case /* routerrpc.ChanStatusAction action */ 2: + message.action = reader.int32(); + break; + default: + let u = options.readUnknownField; + if (u === "throw") + throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`); + let d = reader.skip(wireType); + if (u !== false) + (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d); + } + } + return message; + } + internalBinaryWrite(message: UpdateChanStatusRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + /* lnrpc.ChannelPoint chan_point = 1; */ + if (message.chanPoint) + ChannelPoint.internalBinaryWrite(message.chanPoint, writer.tag(1, WireType.LengthDelimited).fork(), options).join(); + /* routerrpc.ChanStatusAction action = 2; */ + if (message.action !== 0) + writer.tag(2, WireType.Varint).int32(message.action); + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.UpdateChanStatusRequest + */ +export const UpdateChanStatusRequest = new UpdateChanStatusRequest$Type(); +// @generated message type with reflection information, may provide speed optimized methods +class UpdateChanStatusResponse$Type extends MessageType { + constructor() { + super("routerrpc.UpdateChanStatusResponse", []); + } + create(value?: PartialMessage): UpdateChanStatusResponse { + const message = {}; + globalThis.Object.defineProperty(message, MESSAGE_TYPE, { enumerable: false, value: this }); + if (value !== undefined) + reflectionMergePartial(this, message, value); + return message; + } + internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: UpdateChanStatusResponse): UpdateChanStatusResponse { + return target ?? this.create(); + } + internalBinaryWrite(message: UpdateChanStatusResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter { + let u = options.writeUnknownFields; + if (u !== false) + (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer); + return writer; + } +} +/** + * @generated MessageType for protobuf message routerrpc.UpdateChanStatusResponse + */ +export const UpdateChanStatusResponse = new UpdateChanStatusResponse$Type(); +/** + * @generated ServiceType for protobuf service routerrpc.Router + */ +export const Router = new ServiceType("routerrpc.Router", [ + { name: "SendPaymentV2", serverStreaming: true, options: {}, I: SendPaymentRequest, O: Payment }, + { name: "TrackPaymentV2", serverStreaming: true, options: {}, I: TrackPaymentRequest, O: Payment }, + { name: "TrackPayments", serverStreaming: true, options: {}, I: TrackPaymentsRequest, O: Payment }, + { name: "EstimateRouteFee", options: {}, I: RouteFeeRequest, O: RouteFeeResponse }, + { name: "SendToRoute", options: {}, I: SendToRouteRequest, O: SendToRouteResponse }, + { name: "SendToRouteV2", options: {}, I: SendToRouteRequest, O: HTLCAttempt }, + { name: "ResetMissionControl", options: {}, I: ResetMissionControlRequest, O: ResetMissionControlResponse }, + { name: "QueryMissionControl", options: {}, I: QueryMissionControlRequest, O: QueryMissionControlResponse }, + { name: "XImportMissionControl", options: {}, I: XImportMissionControlRequest, O: XImportMissionControlResponse }, + { name: "GetMissionControlConfig", options: {}, I: GetMissionControlConfigRequest, O: GetMissionControlConfigResponse }, + { name: "SetMissionControlConfig", options: {}, I: SetMissionControlConfigRequest, O: SetMissionControlConfigResponse }, + { name: "QueryProbability", options: {}, I: QueryProbabilityRequest, O: QueryProbabilityResponse }, + { name: "BuildRoute", options: {}, I: BuildRouteRequest, O: BuildRouteResponse }, + { name: "SubscribeHtlcEvents", serverStreaming: true, options: {}, I: SubscribeHtlcEventsRequest, O: HtlcEvent }, + { name: "SendPayment", serverStreaming: true, options: {}, I: SendPaymentRequest, O: PaymentStatus }, + { name: "TrackPayment", serverStreaming: true, options: {}, I: TrackPaymentRequest, O: PaymentStatus }, + { name: "HtlcInterceptor", serverStreaming: true, clientStreaming: true, options: {}, I: ForwardHtlcInterceptResponse, O: ForwardHtlcInterceptRequest }, + { name: "UpdateChanStatus", options: {}, I: UpdateChanStatusRequest, O: UpdateChanStatusResponse } +]); diff --git a/proto/lnd/walletunlocker.client.ts b/proto/lnd/walletunlocker.client.ts index a3e3d7da..ed94ca63 100644 --- a/proto/lnd/walletunlocker.client.ts +++ b/proto/lnd/walletunlocker.client.ts @@ -3,16 +3,16 @@ // tslint:disable import type { RpcTransport } from "@protobuf-ts/runtime-rpc"; import type { ServiceInfo } from "@protobuf-ts/runtime-rpc"; -import { WalletUnlocker } from "./walletunlocker.js"; -import type { ChangePasswordResponse } from "./walletunlocker.js"; -import type { ChangePasswordRequest } from "./walletunlocker.js"; -import type { UnlockWalletResponse } from "./walletunlocker.js"; -import type { UnlockWalletRequest } from "./walletunlocker.js"; -import type { InitWalletResponse } from "./walletunlocker.js"; -import type { InitWalletRequest } from "./walletunlocker.js"; +import { WalletUnlocker } from "./walletunlocker"; +import type { ChangePasswordResponse } from "./walletunlocker"; +import type { ChangePasswordRequest } from "./walletunlocker"; +import type { UnlockWalletResponse } from "./walletunlocker"; +import type { UnlockWalletRequest } from "./walletunlocker"; +import type { InitWalletResponse } from "./walletunlocker"; +import type { InitWalletRequest } from "./walletunlocker"; import { stackIntercept } from "@protobuf-ts/runtime-rpc"; -import type { GenSeedResponse } from "./walletunlocker.js"; -import type { GenSeedRequest } from "./walletunlocker.js"; +import type { GenSeedResponse } from "./walletunlocker"; +import type { GenSeedRequest } from "./walletunlocker"; import type { UnaryCall } from "@protobuf-ts/runtime-rpc"; import type { RpcOptions } from "@protobuf-ts/runtime-rpc"; // diff --git a/proto/lnd/walletunlocker.ts b/proto/lnd/walletunlocker.ts index a472c857..7851c675 100644 --- a/proto/lnd/walletunlocker.ts +++ b/proto/lnd/walletunlocker.ts @@ -12,7 +12,7 @@ import type { PartialMessage } from "@protobuf-ts/runtime"; import { reflectionMergePartial } from "@protobuf-ts/runtime"; import { MESSAGE_TYPE } from "@protobuf-ts/runtime"; import { MessageType } from "@protobuf-ts/runtime"; -import { ChanBackupSnapshot } from "./lightning.js"; +import { ChanBackupSnapshot } from "./lightning"; /** * @generated from protobuf message lnrpc.GenSeedRequest */ diff --git a/proto/others/lightning.proto b/proto/others/lightning.proto index 882706f6..4f83b7d4 100644 --- a/proto/others/lightning.proto +++ b/proto/others/lightning.proto @@ -101,8 +101,10 @@ service Lightning { rpc SignMessage (SignMessageRequest) returns (SignMessageResponse); /* 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 + VerifyMessage verifies a signature over a message and recovers the signer's + public key. The signature is only deemed valid if the recovered public key + corresponds to a node key in the public Lightning network. 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. */ @@ -141,6 +143,13 @@ service Lightning { */ rpc GetInfo (GetInfoRequest) returns (GetInfoResponse); + /* lncli: 'getdebuginfo' + GetDebugInfo returns debug information concerning the state of the daemon + and its subsystems. This includes the full configuration and the latest log + entries from the log file. + */ + rpc GetDebugInfo (GetDebugInfoRequest) returns (GetDebugInfoResponse); + /** lncli: `getrecoveryinfo` GetRecoveryInfo returns information concerning the recovery mode including whether it's in a recovery mode, whether the recovery is finished, and the @@ -320,7 +329,7 @@ service Lightning { 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 + settle_index is specified, then 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. @@ -339,13 +348,13 @@ service Lightning { */ rpc ListPayments (ListPaymentsRequest) returns (ListPaymentsResponse); - /* + /* lncli: `deletepayments` DeletePayment deletes an outgoing payment from DB. Note that it will not attempt to delete an In-Flight payment, since that would be unsafe. */ rpc DeletePayment (DeletePaymentRequest) returns (DeletePaymentResponse); - /* + /* lncli: `deletepayments --all` DeleteAllPayments deletes all outgoing payments from DB. Note that it will not attempt to delete In-Flight payments, since that would be unsafe. */ @@ -477,7 +486,7 @@ service Lightning { rpc ExportAllChannelBackups (ChanBackupExportRequest) returns (ChanBackupSnapshot); - /* + /* lncli: `verifychanbackup` 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. @@ -567,6 +576,10 @@ service Lightning { /* lncli: `subscribecustom` SubscribeCustomMessages subscribes to a stream of incoming custom peer messages. + + To include messages with type outside of the custom range (>= 32768) lnd + needs to be compiled with the `dev` build tag, and the message type to + override should be specified in lnd's experimental protocol configuration. */ rpc SubscribeCustomMessages (SubscribeCustomMessagesRequest) returns (stream CustomMessage); @@ -578,18 +591,26 @@ service Lightning { */ rpc ListAliases (ListAliasesRequest) returns (ListAliasesResponse); - rpc LookupHtlc (LookupHtlcRequest) returns (LookupHtlcResponse); + /* + LookupHtlcResolution retrieves a final htlc resolution from the database. + If the htlc has no final resolution yet, a NotFound grpc status code is + returned. + */ + rpc LookupHtlcResolution (LookupHtlcResolutionRequest) + returns (LookupHtlcResolutionResponse); } -message LookupHtlcRequest { +message LookupHtlcResolutionRequest { uint64 chan_id = 1; uint64 htlc_index = 2; } -message LookupHtlcResponse { +message LookupHtlcResolutionResponse { + // Settled is true is the htlc was settled. If false, the htlc was failed. bool settled = 1; + // Offchain indicates whether the htlc was resolved off-chain or on-chain. bool offchain = 2; } @@ -612,6 +633,9 @@ message SendCustomMessageRequest { bytes peer = 1; // Message type. This value needs to be in the custom range (>= 32768). + // To send a type < custom range, lnd needs to be compiled with the `dev` + // build tag, and the message type to override should be specified in lnd's + // experimental protocol configuration. uint32 type = 2; // Raw message data. @@ -860,7 +884,8 @@ message SendRequest { repeated FeatureBit dest_features = 15; /* - The payment address of the generated invoice. + The payment address of the generated invoice. This is also called + payment secret in specifications (e.g. BOLT 11). */ bytes payment_addr = 16; } @@ -1066,6 +1091,18 @@ message LightningAddress { string host = 2; } +enum CoinSelectionStrategy { + // Use the coin selection strategy defined in the global configuration + // (lnd.conf). + STRATEGY_USE_GLOBAL_CONFIG = 0; + + // Select the largest available coins first during coin selection. + STRATEGY_LARGEST = 1; + + // Randomly select the available coins during coin selection. + STRATEGY_RANDOM = 2; +} + message EstimateFeeRequest { // The map from addresses to amounts for the transaction. map AddrToAmount = 1; @@ -1080,6 +1117,9 @@ message EstimateFeeRequest { // Whether unconfirmed outputs should be used as inputs for the transaction. bool spend_unconfirmed = 4; + + // The strategy to use for selecting coins during fees estimation. + CoinSelectionStrategy coin_selection_strategy = 5; } message EstimateFeeResponse { @@ -1120,6 +1160,9 @@ message SendManyRequest { // Whether unconfirmed outputs should be used as inputs for the transaction. bool spend_unconfirmed = 8; + + // The strategy to use for selecting coins during sending many requests. + CoinSelectionStrategy coin_selection_strategy = 9; } message SendManyResponse { // The id of the transaction @@ -1147,9 +1190,8 @@ message SendCoinsRequest { int64 sat_per_byte = 5 [deprecated = true]; /* - 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. + If set, the amount field should be unset. It indicates lnd will send all + wallet coins or all selected coins to the specified address. */ bool send_all = 6; @@ -1162,6 +1204,12 @@ message SendCoinsRequest { // Whether unconfirmed outputs should be used as inputs for the transaction. bool spend_unconfirmed = 9; + + // The strategy to use for selecting coins. + CoinSelectionStrategy coin_selection_strategy = 10; + + // A list of selected outpoints as inputs for the transaction. + repeated OutPoint outpoints = 11; } message SendCoinsResponse { // The transaction ID of the transaction @@ -1335,6 +1383,13 @@ enum CommitmentType { channel before its maturity date. */ SCRIPT_ENFORCED_LEASE = 4; + + /* + A channel that uses musig2 for the funding output, and the new tapscript + features where relevant. + */ + // TODO(roasbeef): need script enforce mirror type for the above as well? + SIMPLE_TAPROOT = 5; } message ChannelConstraints { @@ -1524,6 +1579,19 @@ message Channel { // This is the confirmed / on-chain zero-conf SCID. uint64 zero_conf_confirmed_scid = 33; + + // The configured alias name of our peer. + string peer_alias = 34; + + // This is the peer SCID alias. + uint64 peer_scid_alias = 35 [jstype = JS_STRING]; + + /* + An optional note-to-self to go along with the channel containing some + useful information. This is only ever stored locally and in no way impacts + the channel's operation. + */ + string memo = 36; } message ListChannelsRequest { @@ -1537,6 +1605,11 @@ message ListChannelsRequest { empty, all channels will be returned. */ bytes peer = 5; + + // Informs the server if the peer alias lookup per channel should be + // enabled. It is turned off by default in order to avoid degradation of + // performance for existing clients. + bool peer_alias_lookup = 6; } message ListChannelsResponse { // The list of active channels @@ -1884,12 +1957,16 @@ message GetInfoResponse { /* Whether the current node is connected to testnet. This field is deprecated and the network field should be used instead - **/ + */ bool testnet = 10 [deprecated = true]; reserved 11; - // A list of active chains the node is connected to + /* + A list of active chains the node is connected to. This will only + ever contain a single entry since LND will only ever have a single + chain backend during its lifetime. + */ repeated Chain chains = 16; // The URIs of the current node. @@ -1905,6 +1982,17 @@ message GetInfoResponse { Indicates whether the HTLC interceptor API is in always-on mode. */ bool require_htlc_interceptor = 21; + + // Indicates whether final htlc resolutions are stored on disk. + bool store_final_htlc_resolutions = 22; +} + +message GetDebugInfoRequest { +} + +message GetDebugInfoResponse { + map config = 1; + repeated string log = 2; } message GetRecoveryInfoRequest { @@ -1921,8 +2009,9 @@ message GetRecoveryInfoResponse { } message Chain { - // The blockchain the node is on (eg bitcoin, litecoin) - string chain = 1; + // Deprecated. The chain is now always assumed to be bitcoin. + // The blockchain the node is on (must be bitcoin) + string chain = 1 [deprecated = true]; // The network the node is on (eg regtest, testnet, mainnet) string network = 2; @@ -1982,12 +2071,18 @@ message CloseChannelRequest { // // NOTE: This field is only respected if we're the initiator of the channel. uint64 max_fee_per_vbyte = 7; + + // If true, then the rpc call will not block while it awaits a closing txid. + // Consequently this RPC call will not return a closing txid if this value + // is set. + bool no_wait = 8; } message CloseStatusUpdate { oneof update { PendingUpdate close_pending = 1; ChannelCloseUpdate chan_close = 3; + InstantUpdate close_instant = 4; } } @@ -1996,6 +2091,9 @@ message PendingUpdate { uint32 output_index = 2; } +message InstantUpdate { +} + message ReadyForPsbtFunding { /* The P2WSH address of the channel funding multisig address that the below @@ -2040,6 +2138,9 @@ message BatchOpenChannelRequest { // An optional label for the batch transaction, limited to 500 characters. string label = 6; + + // The strategy to use for selecting coins during batch opening channels. + CoinSelectionStrategy coin_selection_strategy = 7; } message BatchOpenChannel { @@ -2090,6 +2191,76 @@ message BatchOpenChannel { the remote peer supports explicit channel negotiation. */ CommitmentType commitment_type = 9; + + /* + The maximum amount of coins in millisatoshi that can be pending within + the channel. It only applies to the remote party. + */ + uint64 remote_max_value_in_flight_msat = 10; + + /* + The maximum number of concurrent HTLCs we will allow the remote party to add + to the commitment transaction. + */ + uint32 remote_max_htlcs = 11; + + /* + Max local csv is the maximum csv delay we will allow for our own commitment + transaction. + */ + uint32 max_local_csv = 12; + + /* + If this is true, then a zero-conf channel open will be attempted. + */ + bool zero_conf = 13; + + /* + If this is true, then an option-scid-alias channel-type open will be + attempted. + */ + bool scid_alias = 14; + + /* + The base fee charged regardless of the number of milli-satoshis sent. + */ + uint64 base_fee = 15; + + /* + The fee rate in ppm (parts per million) that will be charged in + proportion of the value of each forwarded HTLC. + */ + uint64 fee_rate = 16; + + /* + If use_base_fee is true the open channel announcement will update the + channel base fee with the value specified in base_fee. In the case of + a base_fee of 0 use_base_fee is needed downstream to distinguish whether + to use the default base fee value specified in the config or 0. + */ + bool use_base_fee = 17; + + /* + If use_fee_rate is true the open channel announcement will update the + channel fee rate with the value specified in fee_rate. In the case of + a fee_rate of 0 use_fee_rate is needed downstream to distinguish whether + to use the default fee rate value specified in the config or 0. + */ + bool use_fee_rate = 18; + + /* + The number of satoshis we require the remote peer to reserve. This value, + if specified, must be above the dust limit and below 20% of the channel + capacity. + */ + uint64 remote_chan_reserve_sat = 19; + + /* + An optional note-to-self to go along with the channel containing some + useful information. This is only ever stored locally and in no way impacts + the channel's operation. + */ + string memo = 20; } message BatchOpenChannelResponse { @@ -2238,6 +2409,25 @@ message OpenChannelRequest { capacity. */ uint64 remote_chan_reserve_sat = 25; + + /* + If set, then lnd will attempt to commit all the coins under control of the + internal wallet to open the channel, and the LocalFundingAmount field must + be zero and is ignored. + */ + bool fund_max = 26; + + /* + An optional note-to-self to go along with the channel containing some + useful information. This is only ever stored locally and in no way impacts + the channel's operation. + */ + string memo = 27; + + /* + A list of selected outpoints that are allocated for channel funding. + */ + repeated OutPoint outpoints = 28; } message OpenStatusUpdate { oneof update { @@ -2319,6 +2509,11 @@ message ChanPointShim { the value is less than 500,000, or as an absolute height otherwise. */ uint32 thaw_height = 6; + + /* + Indicates that the funding output is using a MuSig2 multi-sig output. + */ + bool musig2 = 7; } message PsbtShim { @@ -2469,6 +2664,9 @@ message PendingHTLC { } message PendingChannelsRequest { + // Indicates whether to include the raw transaction hex for + // waiting_close_channels. + bool include_raw_tx = 1; } message PendingChannelsResponse { message PendingChannel { @@ -2504,6 +2702,13 @@ message PendingChannelsResponse { // Whether this channel is advertised to the network or not. bool private = 12; + + /* + An optional note-to-self to go along with the channel containing some + useful information. This is only ever stored locally and in no way + impacts the channel's operation. + */ + string memo = 13; } message PendingOpenChannel { @@ -2531,6 +2736,17 @@ message PendingChannelsResponse { // Previously used for confirmation_height. Do not reuse. reserved 2; + + // The number of blocks until the funding transaction is considered + // expired. If this value gets close to zero, there is a risk that the + // channel funding will be canceled by the channel responder. The + // channel should be fee bumped using CPFP (see walletrpc.BumpFee) to + // ensure that the channel confirms in time. Otherwise a force-close + // will be necessary if the channel confirms after the funding + // transaction expires. A negative value means the channel responder has + // very likely canceled the funding and the channel will never become + // fully operational. + int32 funding_expiry_blocks = 3; } message WaitingCloseChannel { @@ -2548,6 +2764,10 @@ message PendingChannelsResponse { // The transaction id of the closing transaction string closing_txid = 4; + + // The raw hex encoded bytes of the closing transaction. Included if + // include_raw_tx in the request is true. + string closing_tx_hex = 5; } message Commitments { @@ -2683,6 +2903,14 @@ message WalletAccountBalance { } message WalletBalanceRequest { + // The wallet account the balance is shown for. + // If this is not specified, the balance of the "default" account is shown. + string account = 1; + + // The minimum number of confirmations each one of your outputs used for the + // funding transaction must satisfy. If this is not specified, the default + // value of 1 is used. + int32 min_confs = 2; } message WalletBalanceResponse { @@ -2768,6 +2996,9 @@ message QueryRoutesRequest { 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. + + Note: must not be set if making a payment to a blinded path (delta is + set by the aggregate parameters provided by blinded_payment_paths) */ int32 final_cltv_delta = 4; @@ -2841,12 +3072,21 @@ message QueryRoutesRequest { */ repeated lnrpc.RouteHint route_hints = 16; + /* + An optional blinded path(s) to reach the destination. Note that the + introduction node must be provided as the first hop in the route. + */ + repeated BlindedPaymentPath blinded_payment_paths = 19; + /* 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. + + Note: must not be set if making a payment to a blinded route (features + are provided in blinded_payment_paths). */ repeated lnrpc.FeatureBit dest_features = 17; @@ -2952,6 +3192,32 @@ message Hop { // The payment metadata to send along with the payment to the payee. bytes metadata = 13; + + /* + Blinding point is an optional blinding point included for introduction + nodes in blinded paths. This field is mandatory for hops that represents + the introduction point in a blinded path. + */ + bytes blinding_point = 14; + + /* + Encrypted data is a receiver-produced blob of data that provides hops + in a blinded route with forwarding data. As this data is encrypted by + the recipient, we will not be able to parse it - it is essentially an + arbitrary blob of data from our node's perspective. This field is + mandatory for all hops in a blinded path, including the introduction + node. + */ + bytes encrypted_data = 15; + + /* + The total amount that is sent to the recipient (possibly across multiple + HTLCs), as specified by the sender when making a payment to a blinded path. + This value is only set in the final hop payload of a blinded payment. This + value is analogous to the MPPRecord that is used for regular (non-blinded) + MPP payments. + */ + uint64 total_amt_msat = 16; } message MPPRecord { @@ -2959,7 +3225,8 @@ message MPPRecord { 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. + The same payment_addr must be used on all subpayments. This is also called + payment secret in specifications (e.g. BOLT 11). */ bytes payment_addr = 11; @@ -3089,6 +3356,9 @@ message RoutingPolicy { // Custom channel update tlv records. map custom_records = 8; + + int32 inbound_fee_base_msat = 9; + int32 inbound_fee_rate_milli_msat = 10; } /* @@ -3175,6 +3445,10 @@ message ChanInfoRequest { output index for the channel. */ uint64 chan_id = 1 [jstype = JS_STRING]; + + // The channel point of the channel in format funding_txid:output_index. If + // chan_id is specified, this field is ignored. + string chan_point = 2; } message NetworkInfoRequest { @@ -3297,6 +3571,64 @@ message RouteHint { repeated HopHint hop_hints = 1; } +message BlindedPaymentPath { + // The blinded path to send the payment to. + BlindedPath blinded_path = 1; + + // The base fee for the blinded path provided, expressed in msat. + uint64 base_fee_msat = 2; + + /* + The proportional fee for the blinded path provided, expressed in parts + per million. + */ + uint32 proportional_fee_rate = 3; + + /* + The total CLTV delta for the blinded path provided, including the + final CLTV delta for the receiving node. + */ + uint32 total_cltv_delta = 4; + + /* + The minimum hltc size that may be sent over the blinded path, expressed + in msat. + */ + uint64 htlc_min_msat = 5; + + /* + The maximum htlc size that may be sent over the blinded path, expressed + in msat. + */ + uint64 htlc_max_msat = 6; + + // The feature bits for the route. + repeated FeatureBit features = 7; +} + +message BlindedPath { + // The unblinded pubkey of the introduction node for the route. + bytes introduction_node = 1; + + // The ephemeral pubkey used by nodes in the blinded route. + bytes blinding_point = 2; + + /* + A set of blinded node keys and data blobs for the blinded portion of the + route. Note that the first hop is expected to be the introduction node, + so the route is always expected to have at least one hop. + */ + repeated BlindedHop blinded_hops = 3; +} + +message BlindedHop { + // The blinded public key of the node. + bytes blinded_node = 1; + + // An encrypted blob of data provided to the blinded node. + bytes encrypted_data = 2; +} + message AMPInvoiceState { // The state the HTLCs associated with this setID are in. InvoiceHTLCState state = 1; @@ -3351,7 +3683,7 @@ message Invoice { int64 value_msat = 23; /* - Whether this invoice has been fulfilled + Whether this invoice has been fulfilled. The field is deprecated. Use the state field instead (compare to SETTLED). */ @@ -3359,12 +3691,14 @@ message Invoice { /* When this invoice was created. + Measured in seconds since the unix epoch. Note: Output only, don't specify for creating an invoice. */ int64 creation_date = 7; /* When this invoice was settled. + Measured in seconds since the unix epoch. Note: Output only, don't specify for creating an invoice. */ int64 settle_date = 8; @@ -3385,7 +3719,7 @@ message Invoice { */ bytes description_hash = 10; - // Payment request expiry time in seconds. Default is 3600 (1 hour). + // Payment request expiry time in seconds. Default is 86400 (24 hours). int64 expiry = 11; // Fallback on-chain address. @@ -3401,6 +3735,8 @@ message Invoice { repeated RouteHint route_hints = 14; // Whether this invoice should include routing hints for private channels. + // Note: When enabled, if value and value_msat are zero, a large number of + // hints with these channels can be included, which might not be desirable. bool private = 15; /* @@ -3426,22 +3762,22 @@ message Invoice { /* 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. + be set if this invoice has been settled or accepted. 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. Note: Output only, don't specify for creating an invoice. */ int64 amt_paid_sat = 19; /* 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. + ONLY be set if this invoice has been settled or accepted. 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. Note: Output only, don't specify for creating an invoice. */ int64 amt_paid_msat = 20; @@ -3479,9 +3815,10 @@ message Invoice { bool is_keysend = 25; /* - The payment address of this invoice. This value will be used in MPP - payments, and also for newer invoices that always require the MPP payload - for added end-to-end security. + The payment address of this invoice. This is also called payment secret in + specifications (e.g. BOLT 11). This value will be used in MPP payments, and + also for newer invoices that always require the MPP payload for added + end-to-end security. Note: Output only, don't specify for creating an invoice. */ bytes payment_addr = 26; @@ -3501,6 +3838,48 @@ message Invoice { Note: Output only, don't specify for creating an invoice. */ map amp_invoice_state = 28; + + /* + Signals that the invoice should include blinded paths to hide the true + identity of the recipient. + */ + bool is_blinded = 29; + + /* + Config values to use when creating blinded paths for this invoice. These + can be used to override the defaults config values provided in by the + global config. This field is only used if is_blinded is true. + */ + BlindedPathConfig blinded_path_config = 30; +} + +message BlindedPathConfig { + /* + The minimum number of real hops to include in a blinded path. This doesn't + include our node, so if the minimum is 1, then the path will contain at + minimum our node along with an introduction node hop. If it is zero then + the shortest path will use our node as an introduction node. + */ + optional uint32 min_num_real_hops = 1; + + /* + The number of hops to include in a blinded path. This doesn't include our + node, so if it is 1, then the path will contain our node along with an + introduction node or dummy node hop. If paths shorter than NumHops is + found, then they will be padded using dummy hops. + */ + optional uint32 num_hops = 2; + + /* + The maximum number of blinded paths to select and add to an invoice. + */ + optional uint32 max_num_paths = 3; + + /* + A list of node IDs of nodes that should not be used in any of our generated + blinded paths. + */ + repeated bytes node_omission_list = 4; } enum InvoiceHTLCState { @@ -3586,9 +3965,9 @@ message AddInvoiceResponse { uint64 add_index = 16; /* - 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. + The payment address of the generated invoice. This is also called + payment secret in specifications (e.g. BOLT 11). This value should be used + in all payments for this invoice as we require it for end to end security. */ bytes payment_addr = 17; } @@ -3629,7 +4008,16 @@ message ListInvoiceRequest { specified index offset. This can be used to paginate backwards. */ bool reversed = 6; + + // If set, returns all invoices with a creation date greater than or equal + // to it. Measured in seconds since the unix epoch. + uint64 creation_date_start = 7; + + // If set, returns all invoices with a creation date less than or equal to + // it. Measured in seconds since the unix epoch. + uint64 creation_date_end = 8; } + message ListInvoiceResponse { /* A list of invoices from the time slice of the time series specified in the @@ -3700,6 +4088,11 @@ enum PaymentFailureReason { Insufficient local balance. */ FAILURE_REASON_INSUFFICIENT_BALANCE = 5; + + /* + The payment was canceled. + */ + FAILURE_REASON_CANCELED = 6; } message Payment { @@ -3730,10 +4123,20 @@ message Payment { string payment_request = 9; enum PaymentStatus { - UNKNOWN = 0; + // Deprecated. This status will never be returned. + UNKNOWN = 0 [deprecated = true]; + + // Payment has inflight HTLCs. IN_FLIGHT = 1; + + // Payment is settled. SUCCEEDED = 2; + + // Payment is failed. FAILED = 3; + + // Payment is created and has not attempted any HTLCs. + INITIATED = 4; } // The status of the payment. @@ -3828,6 +4231,14 @@ message ListPaymentsRequest { of payments, as all of them have to be iterated through to be counted. */ bool count_total_payments = 5; + + // If set, returns all payments with a creation date greater than or equal + // to it. Measured in seconds since the unix epoch. + uint64 creation_date_start = 6; + + // If set, returns all payments with a creation date less than or equal to + // it. Measured in seconds since the unix epoch. + uint64 creation_date_end = 7; } message ListPaymentsResponse { @@ -3873,6 +4284,10 @@ message DeleteAllPaymentsRequest { Only delete failed HTLCs from payments, not the payment itself. */ bool failed_htlcs_only = 2; + + // Delete all payments. NOTE: Using this option requires careful + // consideration as it is a destructive operation. + bool all_payments = 3; } message DeletePaymentResponse { @@ -3923,6 +4338,7 @@ message PayReq { bytes payment_addr = 11; int64 num_msat = 12; map features = 13; + repeated BlindedPaymentPath blinded_paths = 14; } enum FeatureBit { @@ -3949,6 +4365,8 @@ enum FeatureBit { ANCHORS_OPT = 21; ANCHORS_ZERO_FEE_HTLC_REQ = 22; ANCHORS_ZERO_FEE_HTLC_OPT = 23; + ROUTE_BLINDING_REQUIRED = 24; + ROUTE_BLINDING_OPTIONAL = 25; AMP_REQ = 30; AMP_OPT = 31; } @@ -3978,7 +4396,15 @@ message ChannelFeeReport { // The effective fee rate in milli-satoshis. Computed by dividing the // fee_per_mil value by 1 million. double fee_rate = 4; + + // The base fee charged regardless of the number of milli-satoshis sent. + int32 inbound_base_fee_msat = 6; + + // The amount charged per milli-satoshis transferred expressed in + // millionths of a satoshi. + int32 inbound_fee_per_mil = 7; } + message FeeReportResponse { // An array of channel fee reports which describes the current fee schedule // for each channel. @@ -3997,6 +4423,16 @@ message FeeReportResponse { uint64 month_fee_sum = 4; } +message InboundFee { + // The inbound base fee charged regardless of the number of milli-satoshis + // received in the channel. By default, only negative values are accepted. + int32 base_fee_msat = 1; + + // The effective inbound fee rate in micro-satoshis (parts per million). + // By default, only negative values are accepted. + int32 fee_rate_ppm = 2; +} + message PolicyUpdateRequest { oneof scope { // If set, then this update applies to all currently active channels. @@ -4029,7 +4465,12 @@ message PolicyUpdateRequest { // If true, min_htlc_msat is applied. bool min_htlc_msat_specified = 8; + + // Optional inbound fee. If unset, the previously set value will be + // retained [EXPERIMENTAL]. + InboundFee inbound_fee = 10; } + enum UpdateFailure { UPDATE_FAILURE_UNKNOWN = 0; UPDATE_FAILURE_PENDING = 1; @@ -4305,6 +4746,7 @@ message Failure { EXPIRY_TOO_FAR = 22; MPP_TIMEOUT = 23; INVALID_ONION_PAYLOAD = 24; + INVALID_ONION_BLINDING = 25; /* An internal error occurred. diff --git a/proto/service/methods.proto b/proto/service/methods.proto index 278d9637..ed50cc94 100644 --- a/proto/service/methods.proto +++ b/proto/service/methods.proto @@ -137,6 +137,13 @@ service LightningPub { option (nostr) = true; } + rpc ListChannels(structs.Empty) returns (structs.LndChannels) { + option (auth_type) = "Admin"; + option (http_method) = "get"; + option (http_route) = "/api/admin/channels"; + option (nostr) = true; + } + rpc GetUsageMetrics(structs.Empty) returns (structs.UsageMetrics) { option (auth_type) = "Metrics"; option (http_method) = "post"; diff --git a/proto/service/structs.proto b/proto/service/structs.proto index 7d20ee9d..cde4b111 100644 --- a/proto/service/structs.proto +++ b/proto/service/structs.proto @@ -108,6 +108,7 @@ message OpenChannel { int64 lifetime =4 ; int64 local_balance=5; int64 remote_balance = 6; + string label = 7; } message ClosedChannel { string channel_id = 1; @@ -145,6 +146,10 @@ message LndMetrics { } +message LndChannels { + repeated OpenChannel open_channels = 1; +} + message LndGetInfoRequest { int64 nodeId = 1; } diff --git a/src/services/lnd/lnd.ts b/src/services/lnd/lnd.ts index c293bdb6..2d445d07 100644 --- a/src/services/lnd/lnd.ts +++ b/src/services/lnd/lnd.ts @@ -8,7 +8,7 @@ import { LightningClient } from '../../../proto/lnd/lightning.client.js' import { InvoicesClient } from '../../../proto/lnd/invoices.client.js' import { RouterClient } from '../../../proto/lnd/router.client.js' import { ChainNotifierClient } from '../../../proto/lnd/chainnotifier.client.js' -import { GetInfoResponse, AddressType, NewAddressResponse, AddInvoiceResponse, Invoice_InvoiceState, PayReq, Payment_PaymentStatus, Payment, PaymentFailureReason, SendCoinsResponse, EstimateFeeResponse, ChannelBalanceResponse, TransactionDetails, ListChannelsResponse, ClosedChannelsResponse, PendingChannelsResponse, ForwardingHistoryResponse } from '../../../proto/lnd/lightning.js' +import { GetInfoResponse, AddressType, NewAddressResponse, AddInvoiceResponse, Invoice_InvoiceState, PayReq, Payment_PaymentStatus, Payment, PaymentFailureReason, SendCoinsResponse, EstimateFeeResponse, ChannelBalanceResponse, TransactionDetails, ListChannelsResponse, ClosedChannelsResponse, PendingChannelsResponse, ForwardingHistoryResponse, CoinSelectionStrategy } from '../../../proto/lnd/lightning.js' import { OpenChannelReq } from './openChannelReq.js'; import { AddInvoiceReq } from './addInvoiceReq.js'; import { PayInvoiceReq } from './payInvoiceReq.js'; @@ -113,12 +113,12 @@ export default class { return res.response } async ListPendingChannels(): Promise { - const res = await this.lightning.pendingChannels({}, DeadLineMetadata()) + const res = await this.lightning.pendingChannels({ includeRawTx: false }, DeadLineMetadata()) return res.response } - async ListChannels(): Promise { + async ListChannels(peerLookup = false): Promise { const res = await this.lightning.listChannels({ - activeOnly: false, inactiveOnly: false, privateOnly: false, publicOnly: false, peer: Buffer.alloc(0) + activeOnly: false, inactiveOnly: false, privateOnly: false, publicOnly: false, peer: Buffer.alloc(0), peerAliasLookup: peerLookup }, DeadLineMetadata()) return res.response } @@ -350,7 +350,8 @@ export default class { addrToAmount: { [address]: BigInt(amount) }, minConfs: 1, spendUnconfirmed: false, - targetConf: targetConf + targetConf: targetConf, + coinSelectionStrategy: CoinSelectionStrategy.STRATEGY_LARGEST }) return res.response } @@ -385,7 +386,7 @@ export default class { } async GetWalletBalance() { - const res = await this.lightning.walletBalance({}, DeadLineMetadata()) + const res = await this.lightning.walletBalance({ account: "", minConfs: 1 }, DeadLineMetadata()) return res.response } @@ -404,10 +405,10 @@ export default class { } async GetBalance(): Promise { // TODO: remove this - const wRes = await this.lightning.walletBalance({}, DeadLineMetadata()) + const wRes = await this.lightning.walletBalance({ account: "", minConfs: 1 }, DeadLineMetadata()) const { confirmedBalance, unconfirmedBalance, totalBalance } = wRes.response const { response } = await this.lightning.listChannels({ - activeOnly: false, inactiveOnly: false, privateOnly: false, publicOnly: false, peer: Buffer.alloc(0) + activeOnly: false, inactiveOnly: false, privateOnly: false, publicOnly: false, peer: Buffer.alloc(0), peerAliasLookup: false }, DeadLineMetadata()) const channelsBalance = response.channels.map(c => ({ channelId: c.chanId, @@ -424,11 +425,11 @@ export default class { } async GetAllPaidInvoices(max: number) { - const res = await this.lightning.listInvoices({ indexOffset: 0n, numMaxInvoices: BigInt(max), pendingOnly: false, reversed: true }, DeadLineMetadata()) + const res = await this.lightning.listInvoices({ indexOffset: 0n, numMaxInvoices: BigInt(max), pendingOnly: false, reversed: true, creationDateEnd: 0n, creationDateStart: 0n }, DeadLineMetadata()) return res.response } async GetAllPayments(max: number) { - const res = await this.lightning.listPayments({ countTotalPayments: false, includeIncomplete: false, indexOffset: 0n, maxPayments: BigInt(max), reversed: true }) + const res = await this.lightning.listPayments({ countTotalPayments: false, includeIncomplete: false, indexOffset: 0n, maxPayments: BigInt(max), reversed: true, creationDateEnd: 0n, creationDateStart: 0n }) return res.response } @@ -438,7 +439,7 @@ export default class { } const indexOffset = BigInt(paymentIndex - 1) const res = await this.lightning.listPayments({ - countTotalPayments: false, includeIncomplete: true, indexOffset, maxPayments: 1n, reversed: false + countTotalPayments: false, includeIncomplete: true, indexOffset, maxPayments: 1n, reversed: false, creationDateEnd: 0n, creationDateStart: 0n }, DeadLineMetadata()) return res.response } @@ -446,7 +447,7 @@ export default class { async GetLatestPaymentIndex(from = 0) { let indexOffset = BigInt(from) while (true) { - const res = await this.lightning.listPayments({ countTotalPayments: false, includeIncomplete: false, indexOffset, maxPayments: 0n, reversed: false }, DeadLineMetadata()) + const res = await this.lightning.listPayments({ countTotalPayments: false, includeIncomplete: false, indexOffset, maxPayments: 0n, reversed: false, creationDateEnd: 0n, creationDateStart: 0n }, DeadLineMetadata()) if (res.response.payments.length === 0) { return Number(indexOffset) } diff --git a/src/services/main/adminManager.ts b/src/services/main/adminManager.ts index 9181b195..52bb66c2 100644 --- a/src/services/main/adminManager.ts +++ b/src/services/main/adminManager.ts @@ -4,6 +4,7 @@ import { getLogger } from "../helpers/logger.js"; import { MainSettings, getDataPath } from "./settings.js"; import Storage from "../storage/index.js"; import * as Types from '../../../proto/autogenerated/ts/types.js' +import LND from "../lnd/lnd.js"; export class AdminManager { storage: Storage @@ -16,6 +17,7 @@ export class AdminManager { appNprofilePath: string interval: NodeJS.Timer appNprofile: string + lnd: LND constructor(mainSettings: MainSettings, storage: Storage) { this.storage = storage this.dataDir = mainSettings.storageSettings.dataDir @@ -26,6 +28,10 @@ export class AdminManager { this.start() } + setLND = (lnd: LND) => { + this.lnd = lnd + } + setAppNprofile = (nprofile: string) => { this.appNprofile = nprofile const enrollToken = this.ReadAdminEnrollToken() @@ -118,7 +124,7 @@ export class AdminManager { CreateInviteLink = async (adminNpub: string, sats?: number): Promise => { const adminAppUser = await this.storage.applicationStorage.FindNostrAppUser(adminNpub) if (!adminAppUser) { - throw new Error("Admin user expected but not found!!!"); + throw new Error("Admin user expected but not found!!!"); } const newInviteToken = await this.storage.applicationStorage.AddInviteToken(adminAppUser.application, sats); return { @@ -135,4 +141,19 @@ export class AdminManager { used: inviteToken.used } } + + ListChannels = async (): Promise => { + const channels = await this.lnd.ListChannels() + return { + open_channels: channels.channels.map(c => ({ + active: c.active, + capacity: Number(c.capacity), + local_balance: Number(c.localBalance), + remote_balance: Number(c.remoteBalance), + channel_id: c.chanId, + label: c.peerAlias || c.remotePubkey, + lifetime: Number(c.lifetime) + })) + } + } } \ No newline at end of file diff --git a/src/services/main/init.ts b/src/services/main/init.ts index 38f57c3d..577d4db3 100644 --- a/src/services/main/init.ts +++ b/src/services/main/init.ts @@ -36,7 +36,8 @@ export const initMainHandler = async (log: PubLogger, mainSettings: MainSettings } } - const mainHandler = new Main(reloadedSettings, storageManager, adminManager, utils,unlocker) + const mainHandler = new Main(reloadedSettings, storageManager, adminManager, utils, unlocker) + adminManager.setLND(mainHandler.lnd) await mainHandler.lnd.Warmup() if (!reloadedSettings.skipSanityCheck) { const sanityChecker = new SanityChecker(storageManager, mainHandler.lnd) diff --git a/src/services/serverMethods/index.ts b/src/services/serverMethods/index.ts index 1995e166..d440d53a 100644 --- a/src/services/serverMethods/index.ts +++ b/src/services/serverMethods/index.ts @@ -13,6 +13,9 @@ export default (mainHandler: Main): Types.ServerMethods => { GetLndMetrics: async ({ ctx, req }) => { return mainHandler.metricsManager.GetLndMetrics(req) }, + ListChannels: async ({ ctx }) => { + return mainHandler.adminManager.ListChannels() + }, EncryptionExchange: async () => { }, Health: async () => { await mainHandler.lnd.Health() }, LndGetInfo: async ({ ctx }) => {