[TS] Update auto-generated typescript bindings
[ldk-java] / ts / structs / NodeFeatures.mts
index d9c174dd817fc997868a87681475df431abab3ca..fcd58f6e2ccc5f0343be55e78c84d7a1a1c136ae 100644 (file)
@@ -5,6 +5,7 @@ import { ChannelMonitorUpdateErr } from '../enums/ChannelMonitorUpdateErr.mjs';
 import { ConfirmationTarget } from '../enums/ConfirmationTarget.mjs';
 import { CreationError } from '../enums/CreationError.mjs';
 import { Currency } from '../enums/Currency.mjs';
+import { IOError } from '../enums/IOError.mjs';
 import { Level } from '../enums/Level.mjs';
 import { Network } from '../enums/Network.mjs';
 import { Recipient } from '../enums/Recipient.mjs';
@@ -61,23 +62,18 @@ import { Result_RouteHintHopDecodeErrorZ } from '../structs/Result_RouteHintHopD
 import { ChannelDetails } from '../structs/ChannelDetails.mjs';
 import { LightningError } from '../structs/LightningError.mjs';
 import { Result_RouteLightningErrorZ } from '../structs/Result_RouteLightningErrorZ.mjs';
-import { Result_TxOutAccessErrorZ } from '../structs/Result_TxOutAccessErrorZ.mjs';
-import { TwoTuple_usizeTransactionZ } from '../structs/TwoTuple_usizeTransactionZ.mjs';
-import { Result_NoneChannelMonitorUpdateErrZ } from '../structs/Result_NoneChannelMonitorUpdateErrZ.mjs';
-import { HTLCUpdate } from '../structs/HTLCUpdate.mjs';
-import { OutPoint } from '../structs/OutPoint.mjs';
-import { MonitorEvent } from '../structs/MonitorEvent.mjs';
-import { Option_C2Tuple_usizeTransactionZZ } from '../structs/Option_C2Tuple_usizeTransactionZZ.mjs';
+import { PaymentPurpose } from '../structs/PaymentPurpose.mjs';
+import { Result_PaymentPurposeDecodeErrorZ } from '../structs/Result_PaymentPurposeDecodeErrorZ.mjs';
 import { ClosureReason } from '../structs/ClosureReason.mjs';
 import { Option_ClosureReasonZ } from '../structs/Option_ClosureReasonZ.mjs';
 import { Result_COption_ClosureReasonZDecodeErrorZ } from '../structs/Result_COption_ClosureReasonZDecodeErrorZ.mjs';
 import { ChannelUpdate } from '../structs/ChannelUpdate.mjs';
 import { NetworkUpdate } from '../structs/NetworkUpdate.mjs';
 import { Option_NetworkUpdateZ } from '../structs/Option_NetworkUpdateZ.mjs';
+import { OutPoint } from '../structs/OutPoint.mjs';
 import { DelayedPaymentOutputDescriptor } from '../structs/DelayedPaymentOutputDescriptor.mjs';
 import { StaticPaymentOutputDescriptor } from '../structs/StaticPaymentOutputDescriptor.mjs';
 import { SpendableOutputDescriptor } from '../structs/SpendableOutputDescriptor.mjs';
-import { PaymentPurpose } from '../structs/PaymentPurpose.mjs';
 import { ChannelTypeFeatures } from '../structs/ChannelTypeFeatures.mjs';
 import { Event } from '../structs/Event.mjs';
 import { Option_EventZ } from '../structs/Option_EventZ.mjs';
@@ -86,7 +82,7 @@ import { AcceptChannel } from '../structs/AcceptChannel.mjs';
 import { OpenChannel } from '../structs/OpenChannel.mjs';
 import { FundingCreated } from '../structs/FundingCreated.mjs';
 import { FundingSigned } from '../structs/FundingSigned.mjs';
-import { FundingLocked } from '../structs/FundingLocked.mjs';
+import { ChannelReady } from '../structs/ChannelReady.mjs';
 import { AnnouncementSignatures } from '../structs/AnnouncementSignatures.mjs';
 import { CommitmentUpdate } from '../structs/CommitmentUpdate.mjs';
 import { RevokeAndACK } from '../structs/RevokeAndACK.mjs';
@@ -103,12 +99,17 @@ import { QueryShortChannelIds } from '../structs/QueryShortChannelIds.mjs';
 import { ReplyChannelRange } from '../structs/ReplyChannelRange.mjs';
 import { GossipTimestampFilter } from '../structs/GossipTimestampFilter.mjs';
 import { MessageSendEvent } from '../structs/MessageSendEvent.mjs';
+import { Result_TxOutAccessErrorZ } from '../structs/Result_TxOutAccessErrorZ.mjs';
+import { TwoTuple_usizeTransactionZ } from '../structs/TwoTuple_usizeTransactionZ.mjs';
+import { Result_NoneChannelMonitorUpdateErrZ } from '../structs/Result_NoneChannelMonitorUpdateErrZ.mjs';
+import { HTLCUpdate } from '../structs/HTLCUpdate.mjs';
+import { MonitorEvent } from '../structs/MonitorEvent.mjs';
+import { TwoTuple_OutPointCVec_MonitorEventZZ } from '../structs/TwoTuple_OutPointCVec_MonitorEventZZ.mjs';
+import { Option_C2Tuple_usizeTransactionZZ } from '../structs/Option_C2Tuple_usizeTransactionZZ.mjs';
 import { FixedPenaltyScorer } from '../structs/FixedPenaltyScorer.mjs';
 import { Result_FixedPenaltyScorerDecodeErrorZ } from '../structs/Result_FixedPenaltyScorerDecodeErrorZ.mjs';
-import { ScoringParameters } from '../structs/ScoringParameters.mjs';
-import { Result_ScoringParametersDecodeErrorZ } from '../structs/Result_ScoringParametersDecodeErrorZ.mjs';
-import { Scorer } from '../structs/Scorer.mjs';
-import { Result_ScorerDecodeErrorZ } from '../structs/Result_ScorerDecodeErrorZ.mjs';
+import { Record } from '../structs/Record.mjs';
+import { Logger, LoggerInterface } from '../structs/Logger.mjs';
 import { NetworkGraph } from '../structs/NetworkGraph.mjs';
 import { ProbabilisticScorer } from '../structs/ProbabilisticScorer.mjs';
 import { Result_ProbabilisticScorerDecodeErrorZ } from '../structs/Result_ProbabilisticScorerDecodeErrorZ.mjs';
@@ -120,6 +121,27 @@ import { Result_NodeFeaturesDecodeErrorZ } from '../structs/Result_NodeFeaturesD
 import { InvoiceFeatures } from '../structs/InvoiceFeatures.mjs';
 import { Result_InvoiceFeaturesDecodeErrorZ } from '../structs/Result_InvoiceFeaturesDecodeErrorZ.mjs';
 import { Result_ChannelTypeFeaturesDecodeErrorZ } from '../structs/Result_ChannelTypeFeaturesDecodeErrorZ.mjs';
+import { NodeId } from '../structs/NodeId.mjs';
+import { Result_NodeIdDecodeErrorZ } from '../structs/Result_NodeIdDecodeErrorZ.mjs';
+import { Result_COption_NetworkUpdateZDecodeErrorZ } from '../structs/Result_COption_NetworkUpdateZDecodeErrorZ.mjs';
+import { Access, AccessInterface } from '../structs/Access.mjs';
+import { Option_AccessZ } from '../structs/Option_AccessZ.mjs';
+import { Result_boolLightningErrorZ } from '../structs/Result_boolLightningErrorZ.mjs';
+import { ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ } from '../structs/ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ.mjs';
+import { Result_NoneLightningErrorZ } from '../structs/Result_NoneLightningErrorZ.mjs';
+import { ChannelUpdateInfo } from '../structs/ChannelUpdateInfo.mjs';
+import { Result_ChannelUpdateInfoDecodeErrorZ } from '../structs/Result_ChannelUpdateInfoDecodeErrorZ.mjs';
+import { ChannelInfo } from '../structs/ChannelInfo.mjs';
+import { Result_ChannelInfoDecodeErrorZ } from '../structs/Result_ChannelInfoDecodeErrorZ.mjs';
+import { RoutingFees } from '../structs/RoutingFees.mjs';
+import { Result_RoutingFeesDecodeErrorZ } from '../structs/Result_RoutingFeesDecodeErrorZ.mjs';
+import { NetAddress } from '../structs/NetAddress.mjs';
+import { NodeAnnouncementInfo } from '../structs/NodeAnnouncementInfo.mjs';
+import { Result_NodeAnnouncementInfoDecodeErrorZ } from '../structs/Result_NodeAnnouncementInfoDecodeErrorZ.mjs';
+import { NodeInfo } from '../structs/NodeInfo.mjs';
+import { Result_NodeInfoDecodeErrorZ } from '../structs/Result_NodeInfoDecodeErrorZ.mjs';
+import { Result_NetworkGraphDecodeErrorZ } from '../structs/Result_NetworkGraphDecodeErrorZ.mjs';
+import { Option_CVec_NetAddressZZ } from '../structs/Option_CVec_NetAddressZZ.mjs';
 import { Result_DelayedPaymentOutputDescriptorDecodeErrorZ } from '../structs/Result_DelayedPaymentOutputDescriptorDecodeErrorZ.mjs';
 import { Result_StaticPaymentOutputDescriptorDecodeErrorZ } from '../structs/Result_StaticPaymentOutputDescriptorDecodeErrorZ.mjs';
 import { Result_SpendableOutputDescriptorDecodeErrorZ } from '../structs/Result_SpendableOutputDescriptorDecodeErrorZ.mjs';
@@ -148,7 +170,6 @@ import { Result_PaymentIdPaymentSendFailureZ } from '../structs/Result_PaymentId
 import { Result_NonePaymentSendFailureZ } from '../structs/Result_NonePaymentSendFailureZ.mjs';
 import { TwoTuple_PaymentHashPaymentIdZ } from '../structs/TwoTuple_PaymentHashPaymentIdZ.mjs';
 import { Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ } from '../structs/Result_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ.mjs';
-import { NetAddress } from '../structs/NetAddress.mjs';
 import { TwoTuple_PaymentHashPaymentSecretZ } from '../structs/TwoTuple_PaymentHashPaymentSecretZ.mjs';
 import { Result_C2Tuple_PaymentHashPaymentSecretZNoneZ } from '../structs/Result_C2Tuple_PaymentHashPaymentSecretZNoneZ.mjs';
 import { Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ } from '../structs/Result_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ.mjs';
@@ -168,8 +189,6 @@ import { Watch, WatchInterface } from '../structs/Watch.mjs';
 import { BroadcasterInterface, BroadcasterInterfaceInterface } from '../structs/BroadcasterInterface.mjs';
 import { KeysInterface, KeysInterfaceInterface } from '../structs/KeysInterface.mjs';
 import { FeeEstimator, FeeEstimatorInterface } from '../structs/FeeEstimator.mjs';
-import { Record } from '../structs/Record.mjs';
-import { Logger, LoggerInterface } from '../structs/Logger.mjs';
 import { ChannelManager } from '../structs/ChannelManager.mjs';
 import { TwoTuple_BlockHashChannelManagerZ } from '../structs/TwoTuple_BlockHashChannelManagerZ.mjs';
 import { Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ } from '../structs/Result_C2Tuple_BlockHashChannelManagerZDecodeErrorZ.mjs';
@@ -214,32 +233,13 @@ import { TwoTuple_TxidCVec_C2Tuple_u32TxOutZZZ } from '../structs/TwoTuple_TxidC
 import { Balance } from '../structs/Balance.mjs';
 import { TwoTuple_BlockHashChannelMonitorZ } from '../structs/TwoTuple_BlockHashChannelMonitorZ.mjs';
 import { Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ } from '../structs/Result_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ.mjs';
-import { Result_NoneLightningErrorZ } from '../structs/Result_NoneLightningErrorZ.mjs';
 import { TwoTuple_PublicKeyTypeZ } from '../structs/TwoTuple_PublicKeyTypeZ.mjs';
-import { Result_boolLightningErrorZ } from '../structs/Result_boolLightningErrorZ.mjs';
-import { ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ } from '../structs/ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ.mjs';
 import { Option_NetAddressZ } from '../structs/Option_NetAddressZ.mjs';
 import { PeerHandleError } from '../structs/PeerHandleError.mjs';
 import { Result_CVec_u8ZPeerHandleErrorZ } from '../structs/Result_CVec_u8ZPeerHandleErrorZ.mjs';
 import { Result_NonePeerHandleErrorZ } from '../structs/Result_NonePeerHandleErrorZ.mjs';
 import { Result_boolPeerHandleErrorZ } from '../structs/Result_boolPeerHandleErrorZ.mjs';
-import { NodeId } from '../structs/NodeId.mjs';
-import { Result_NodeIdDecodeErrorZ } from '../structs/Result_NodeIdDecodeErrorZ.mjs';
-import { Result_COption_NetworkUpdateZDecodeErrorZ } from '../structs/Result_COption_NetworkUpdateZDecodeErrorZ.mjs';
-import { Access, AccessInterface } from '../structs/Access.mjs';
-import { Option_AccessZ } from '../structs/Option_AccessZ.mjs';
-import { ChannelUpdateInfo } from '../structs/ChannelUpdateInfo.mjs';
-import { Result_ChannelUpdateInfoDecodeErrorZ } from '../structs/Result_ChannelUpdateInfoDecodeErrorZ.mjs';
-import { ChannelInfo } from '../structs/ChannelInfo.mjs';
-import { Result_ChannelInfoDecodeErrorZ } from '../structs/Result_ChannelInfoDecodeErrorZ.mjs';
-import { RoutingFees } from '../structs/RoutingFees.mjs';
-import { Result_RoutingFeesDecodeErrorZ } from '../structs/Result_RoutingFeesDecodeErrorZ.mjs';
-import { NodeAnnouncementInfo } from '../structs/NodeAnnouncementInfo.mjs';
-import { Result_NodeAnnouncementInfoDecodeErrorZ } from '../structs/Result_NodeAnnouncementInfoDecodeErrorZ.mjs';
-import { NodeInfo } from '../structs/NodeInfo.mjs';
-import { Result_NodeInfoDecodeErrorZ } from '../structs/Result_NodeInfoDecodeErrorZ.mjs';
-import { Result_NetworkGraphDecodeErrorZ } from '../structs/Result_NetworkGraphDecodeErrorZ.mjs';
-import { Option_CVec_NetAddressZZ } from '../structs/Option_CVec_NetAddressZZ.mjs';
+import { Result_NoneErrorZ } from '../structs/Result_NoneErrorZ.mjs';
 import { Result_NetAddressDecodeErrorZ } from '../structs/Result_NetAddressDecodeErrorZ.mjs';
 import { UpdateAddHTLC } from '../structs/UpdateAddHTLC.mjs';
 import { UpdateFulfillHTLC } from '../structs/UpdateFulfillHTLC.mjs';
@@ -255,7 +255,7 @@ import { CommitmentSigned } from '../structs/CommitmentSigned.mjs';
 import { Result_CommitmentSignedDecodeErrorZ } from '../structs/Result_CommitmentSignedDecodeErrorZ.mjs';
 import { Result_FundingCreatedDecodeErrorZ } from '../structs/Result_FundingCreatedDecodeErrorZ.mjs';
 import { Result_FundingSignedDecodeErrorZ } from '../structs/Result_FundingSignedDecodeErrorZ.mjs';
-import { Result_FundingLockedDecodeErrorZ } from '../structs/Result_FundingLockedDecodeErrorZ.mjs';
+import { Result_ChannelReadyDecodeErrorZ } from '../structs/Result_ChannelReadyDecodeErrorZ.mjs';
 import { Init } from '../structs/Init.mjs';
 import { Result_InitDecodeErrorZ } from '../structs/Result_InitDecodeErrorZ.mjs';
 import { Result_OpenChannelDecodeErrorZ } from '../structs/Result_OpenChannelDecodeErrorZ.mjs';
@@ -297,6 +297,11 @@ import { Result_LockedChannelMonitorNoneZ } from '../structs/Result_LockedChanne
 import { MessageSendEventsProvider, MessageSendEventsProviderInterface } from '../structs/MessageSendEventsProvider.mjs';
 import { EventHandler, EventHandlerInterface } from '../structs/EventHandler.mjs';
 import { EventsProvider, EventsProviderInterface } from '../structs/EventsProvider.mjs';
+import { BigSize } from '../structs/BigSize.mjs';
+import { ChannelUsage } from '../structs/ChannelUsage.mjs';
+import { Score, ScoreInterface } from '../structs/Score.mjs';
+import { MultiThreadedLockableScore } from '../structs/MultiThreadedLockableScore.mjs';
+import { Persister, PersisterInterface } from '../structs/Persister.mjs';
 import { ChannelHandshakeConfig } from '../structs/ChannelHandshakeConfig.mjs';
 import { ChannelHandshakeLimits } from '../structs/ChannelHandshakeLimits.mjs';
 import { UserConfig } from '../structs/UserConfig.mjs';
@@ -311,6 +316,7 @@ import { PhantomKeysManager } from '../structs/PhantomKeysManager.mjs';
 import { ChainParameters } from '../structs/ChainParameters.mjs';
 import { ChannelMessageHandler, ChannelMessageHandlerInterface } from '../structs/ChannelMessageHandler.mjs';
 import { ChannelManagerReadArgs } from '../structs/ChannelManagerReadArgs.mjs';
+import { ExpandedKey } from '../structs/ExpandedKey.mjs';
 import { DataLossProtect } from '../structs/DataLossProtect.mjs';
 import { RoutingMessageHandler, RoutingMessageHandlerInterface } from '../structs/RoutingMessageHandler.mjs';
 import { CustomMessageReader, CustomMessageReaderInterface } from '../structs/CustomMessageReader.mjs';
@@ -322,12 +328,10 @@ import { SocketDescriptor, SocketDescriptorInterface } from '../structs/SocketDe
 import { PeerManager } from '../structs/PeerManager.mjs';
 import { DirectedChannelTransactionParameters } from '../structs/DirectedChannelTransactionParameters.mjs';
 import { ReadOnlyNetworkGraph } from '../structs/ReadOnlyNetworkGraph.mjs';
-import { NetGraphMsgHandler } from '../structs/NetGraphMsgHandler.mjs';
+import { P2PGossipSync } from '../structs/P2PGossipSync.mjs';
 import { DirectedChannelInfo } from '../structs/DirectedChannelInfo.mjs';
 import { EffectiveCapacity } from '../structs/EffectiveCapacity.mjs';
-import { Score, ScoreInterface } from '../structs/Score.mjs';
 import { LockableScore, LockableScoreInterface } from '../structs/LockableScore.mjs';
-import { MultiThreadedLockableScore } from '../structs/MultiThreadedLockableScore.mjs';
 import { ProbabilisticScoringParameters } from '../structs/ProbabilisticScoringParameters.mjs';
 import { RawDataPart } from '../structs/RawDataPart.mjs';
 import { Sha256 } from '../structs/Sha256.mjs';
@@ -337,10 +341,10 @@ import { Fallback } from '../structs/Fallback.mjs';
 import { Payer, PayerInterface } from '../structs/Payer.mjs';
 import { Router, RouterInterface } from '../structs/Router.mjs';
 import { InvoicePayer } from '../structs/InvoicePayer.mjs';
-import { RetryAttempts } from '../structs/RetryAttempts.mjs';
+import { Retry } from '../structs/Retry.mjs';
 import { DefaultRouter } from '../structs/DefaultRouter.mjs';
 
-import { CommonBase, UInt5, UnqualifiedError } from './CommonBase.mjs';
+import { CommonBase, UInt5, WitnessVersion, UnqualifiedError } from './CommonBase.mjs';
 import * as bindings from '../bindings.mjs'
 
 
@@ -426,4 +430,394 @@ export class NodeFeatures extends CommonBase {
                return ret_hu_conv;
        }
 
+       /**
+        * Set this feature as optional.
+        */
+       public set_data_loss_protect_optional(): void {
+               bindings.NodeFeatures_set_data_loss_protect_optional(this.ptr);
+       }
+
+       /**
+        * Set this feature as required.
+        */
+       public set_data_loss_protect_required(): void {
+               bindings.NodeFeatures_set_data_loss_protect_required(this.ptr);
+       }
+
+       /**
+        * Checks if this feature is supported.
+        */
+       public supports_data_loss_protect(): boolean {
+               const ret: boolean = bindings.NodeFeatures_supports_data_loss_protect(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Checks if this feature is required.
+        */
+       public requires_data_loss_protect(): boolean {
+               const ret: boolean = bindings.NodeFeatures_requires_data_loss_protect(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Set this feature as optional.
+        */
+       public set_upfront_shutdown_script_optional(): void {
+               bindings.NodeFeatures_set_upfront_shutdown_script_optional(this.ptr);
+       }
+
+       /**
+        * Set this feature as required.
+        */
+       public set_upfront_shutdown_script_required(): void {
+               bindings.NodeFeatures_set_upfront_shutdown_script_required(this.ptr);
+       }
+
+       /**
+        * Checks if this feature is supported.
+        */
+       public supports_upfront_shutdown_script(): boolean {
+               const ret: boolean = bindings.NodeFeatures_supports_upfront_shutdown_script(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Checks if this feature is required.
+        */
+       public requires_upfront_shutdown_script(): boolean {
+               const ret: boolean = bindings.NodeFeatures_requires_upfront_shutdown_script(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Set this feature as optional.
+        */
+       public set_gossip_queries_optional(): void {
+               bindings.NodeFeatures_set_gossip_queries_optional(this.ptr);
+       }
+
+       /**
+        * Set this feature as required.
+        */
+       public set_gossip_queries_required(): void {
+               bindings.NodeFeatures_set_gossip_queries_required(this.ptr);
+       }
+
+       /**
+        * Checks if this feature is supported.
+        */
+       public supports_gossip_queries(): boolean {
+               const ret: boolean = bindings.NodeFeatures_supports_gossip_queries(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Checks if this feature is required.
+        */
+       public requires_gossip_queries(): boolean {
+               const ret: boolean = bindings.NodeFeatures_requires_gossip_queries(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Set this feature as optional.
+        */
+       public set_variable_length_onion_optional(): void {
+               bindings.NodeFeatures_set_variable_length_onion_optional(this.ptr);
+       }
+
+       /**
+        * Set this feature as required.
+        */
+       public set_variable_length_onion_required(): void {
+               bindings.NodeFeatures_set_variable_length_onion_required(this.ptr);
+       }
+
+       /**
+        * Checks if this feature is supported.
+        */
+       public supports_variable_length_onion(): boolean {
+               const ret: boolean = bindings.NodeFeatures_supports_variable_length_onion(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Checks if this feature is required.
+        */
+       public requires_variable_length_onion(): boolean {
+               const ret: boolean = bindings.NodeFeatures_requires_variable_length_onion(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Set this feature as optional.
+        */
+       public set_static_remote_key_optional(): void {
+               bindings.NodeFeatures_set_static_remote_key_optional(this.ptr);
+       }
+
+       /**
+        * Set this feature as required.
+        */
+       public set_static_remote_key_required(): void {
+               bindings.NodeFeatures_set_static_remote_key_required(this.ptr);
+       }
+
+       /**
+        * Checks if this feature is supported.
+        */
+       public supports_static_remote_key(): boolean {
+               const ret: boolean = bindings.NodeFeatures_supports_static_remote_key(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Checks if this feature is required.
+        */
+       public requires_static_remote_key(): boolean {
+               const ret: boolean = bindings.NodeFeatures_requires_static_remote_key(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Set this feature as optional.
+        */
+       public set_payment_secret_optional(): void {
+               bindings.NodeFeatures_set_payment_secret_optional(this.ptr);
+       }
+
+       /**
+        * Set this feature as required.
+        */
+       public set_payment_secret_required(): void {
+               bindings.NodeFeatures_set_payment_secret_required(this.ptr);
+       }
+
+       /**
+        * Checks if this feature is supported.
+        */
+       public supports_payment_secret(): boolean {
+               const ret: boolean = bindings.NodeFeatures_supports_payment_secret(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Checks if this feature is required.
+        */
+       public requires_payment_secret(): boolean {
+               const ret: boolean = bindings.NodeFeatures_requires_payment_secret(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Set this feature as optional.
+        */
+       public set_basic_mpp_optional(): void {
+               bindings.NodeFeatures_set_basic_mpp_optional(this.ptr);
+       }
+
+       /**
+        * Set this feature as required.
+        */
+       public set_basic_mpp_required(): void {
+               bindings.NodeFeatures_set_basic_mpp_required(this.ptr);
+       }
+
+       /**
+        * Checks if this feature is supported.
+        */
+       public supports_basic_mpp(): boolean {
+               const ret: boolean = bindings.NodeFeatures_supports_basic_mpp(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Checks if this feature is required.
+        */
+       public requires_basic_mpp(): boolean {
+               const ret: boolean = bindings.NodeFeatures_requires_basic_mpp(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Set this feature as optional.
+        */
+       public set_wumbo_optional(): void {
+               bindings.NodeFeatures_set_wumbo_optional(this.ptr);
+       }
+
+       /**
+        * Set this feature as required.
+        */
+       public set_wumbo_required(): void {
+               bindings.NodeFeatures_set_wumbo_required(this.ptr);
+       }
+
+       /**
+        * Checks if this feature is supported.
+        */
+       public supports_wumbo(): boolean {
+               const ret: boolean = bindings.NodeFeatures_supports_wumbo(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Checks if this feature is required.
+        */
+       public requires_wumbo(): boolean {
+               const ret: boolean = bindings.NodeFeatures_requires_wumbo(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Set this feature as optional.
+        */
+       public set_shutdown_any_segwit_optional(): void {
+               bindings.NodeFeatures_set_shutdown_any_segwit_optional(this.ptr);
+       }
+
+       /**
+        * Set this feature as required.
+        */
+       public set_shutdown_any_segwit_required(): void {
+               bindings.NodeFeatures_set_shutdown_any_segwit_required(this.ptr);
+       }
+
+       /**
+        * Checks if this feature is supported.
+        */
+       public supports_shutdown_anysegwit(): boolean {
+               const ret: boolean = bindings.NodeFeatures_supports_shutdown_anysegwit(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Checks if this feature is required.
+        */
+       public requires_shutdown_anysegwit(): boolean {
+               const ret: boolean = bindings.NodeFeatures_requires_shutdown_anysegwit(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Set this feature as optional.
+        */
+       public set_channel_type_optional(): void {
+               bindings.NodeFeatures_set_channel_type_optional(this.ptr);
+       }
+
+       /**
+        * Set this feature as required.
+        */
+       public set_channel_type_required(): void {
+               bindings.NodeFeatures_set_channel_type_required(this.ptr);
+       }
+
+       /**
+        * Checks if this feature is supported.
+        */
+       public supports_channel_type(): boolean {
+               const ret: boolean = bindings.NodeFeatures_supports_channel_type(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Checks if this feature is required.
+        */
+       public requires_channel_type(): boolean {
+               const ret: boolean = bindings.NodeFeatures_requires_channel_type(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Set this feature as optional.
+        */
+       public set_scid_privacy_optional(): void {
+               bindings.NodeFeatures_set_scid_privacy_optional(this.ptr);
+       }
+
+       /**
+        * Set this feature as required.
+        */
+       public set_scid_privacy_required(): void {
+               bindings.NodeFeatures_set_scid_privacy_required(this.ptr);
+       }
+
+       /**
+        * Checks if this feature is supported.
+        */
+       public supports_scid_privacy(): boolean {
+               const ret: boolean = bindings.NodeFeatures_supports_scid_privacy(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Checks if this feature is required.
+        */
+       public requires_scid_privacy(): boolean {
+               const ret: boolean = bindings.NodeFeatures_requires_scid_privacy(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Set this feature as optional.
+        */
+       public set_zero_conf_optional(): void {
+               bindings.NodeFeatures_set_zero_conf_optional(this.ptr);
+       }
+
+       /**
+        * Set this feature as required.
+        */
+       public set_zero_conf_required(): void {
+               bindings.NodeFeatures_set_zero_conf_required(this.ptr);
+       }
+
+       /**
+        * Checks if this feature is supported.
+        */
+       public supports_zero_conf(): boolean {
+               const ret: boolean = bindings.NodeFeatures_supports_zero_conf(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Checks if this feature is required.
+        */
+       public requires_zero_conf(): boolean {
+               const ret: boolean = bindings.NodeFeatures_requires_zero_conf(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Set this feature as optional.
+        */
+       public set_keysend_optional(): void {
+               bindings.NodeFeatures_set_keysend_optional(this.ptr);
+       }
+
+       /**
+        * Set this feature as required.
+        */
+       public set_keysend_required(): void {
+               bindings.NodeFeatures_set_keysend_required(this.ptr);
+       }
+
+       /**
+        * Checks if this feature is supported.
+        */
+       public supports_keysend(): boolean {
+               const ret: boolean = bindings.NodeFeatures_supports_keysend(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Checks if this feature is required.
+        */
+       public requires_keysend(): boolean {
+               const ret: boolean = bindings.NodeFeatures_requires_keysend(this.ptr);
+               return ret;
+       }
+
 }