[TS] Update auto-generated bindings (with RGS)
[ldk-java] / ts / structs / ChannelHandshakeConfig.mts
index 97b2873f2018f96735201cff80eb18bcec65f1a6..79857e3a50c69310c3a1cdffa869949cc1169088 100644 (file)
@@ -1,4 +1,5 @@
 import { TxOut } from '../structs/TxOut.mjs';
+import { BigEndianScalar } from '../structs/BigEndianScalar.mjs';
 import { AccessError } from '../enums/AccessError.mjs';
 import { COption_NoneZ } from '../enums/COption_NoneZ.mjs';
 import { ChannelMonitorUpdateErr } from '../enums/ChannelMonitorUpdateErr.mjs';
@@ -13,9 +14,14 @@ import { Secp256k1Error } from '../enums/Secp256k1Error.mjs';
 import { SemanticError } from '../enums/SemanticError.mjs';
 import { SiPrefix } from '../enums/SiPrefix.mjs';
 import { Bech32Error } from '../structs/Bech32Error.mjs';
+import { BlindedRoute } from '../structs/BlindedRoute.mjs';
+import { Result_BlindedRouteNoneZ } from '../structs/Result_BlindedRouteNoneZ.mjs';
+import { DecodeError } from '../structs/DecodeError.mjs';
+import { Result_BlindedRouteDecodeErrorZ } from '../structs/Result_BlindedRouteDecodeErrorZ.mjs';
+import { BlindedHop } from '../structs/BlindedHop.mjs';
+import { Result_BlindedHopDecodeErrorZ } from '../structs/Result_BlindedHopDecodeErrorZ.mjs';
 import { Result_NoneNoneZ } from '../structs/Result_NoneNoneZ.mjs';
 import { CounterpartyCommitmentSecrets } from '../structs/CounterpartyCommitmentSecrets.mjs';
-import { DecodeError } from '../structs/DecodeError.mjs';
 import { Result_CounterpartyCommitmentSecretsDecodeErrorZ } from '../structs/Result_CounterpartyCommitmentSecretsDecodeErrorZ.mjs';
 import { Result_SecretKeyErrorZ } from '../structs/Result_SecretKeyErrorZ.mjs';
 import { Result_PublicKeyErrorZ } from '../structs/Result_PublicKeyErrorZ.mjs';
@@ -67,6 +73,9 @@ import { Result_PaymentPurposeDecodeErrorZ } from '../structs/Result_PaymentPurp
 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 { HTLCDestination } from '../structs/HTLCDestination.mjs';
+import { Option_HTLCDestinationZ } from '../structs/Option_HTLCDestinationZ.mjs';
+import { Result_COption_HTLCDestinationZDecodeErrorZ } from '../structs/Result_COption_HTLCDestinationZDecodeErrorZ.mjs';
 import { ChannelUpdate } from '../structs/ChannelUpdate.mjs';
 import { NetworkUpdate } from '../structs/NetworkUpdate.mjs';
 import { Option_NetworkUpdateZ } from '../structs/Option_NetworkUpdateZ.mjs';
@@ -90,7 +99,6 @@ import { ClosingSigned } from '../structs/ClosingSigned.mjs';
 import { Shutdown } from '../structs/Shutdown.mjs';
 import { ChannelReestablish } from '../structs/ChannelReestablish.mjs';
 import { ChannelAnnouncement } from '../structs/ChannelAnnouncement.mjs';
-import { NodeAnnouncement } from '../structs/NodeAnnouncement.mjs';
 import { ErrorMessage } from '../structs/ErrorMessage.mjs';
 import { WarningMessage } from '../structs/WarningMessage.mjs';
 import { ErrorAction } from '../structs/ErrorAction.mjs';
@@ -104,10 +112,12 @@ import { TwoTuple_usizeTransactionZ } from '../structs/TwoTuple_usizeTransaction
 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 { ThreeTuple_OutPointCVec_MonitorEventZPublicKeyZ } from '../structs/ThreeTuple_OutPointCVec_MonitorEventZPublicKeyZ.mjs';
 import { FixedPenaltyScorer } from '../structs/FixedPenaltyScorer.mjs';
 import { Result_FixedPenaltyScorerDecodeErrorZ } from '../structs/Result_FixedPenaltyScorerDecodeErrorZ.mjs';
+import { TwoTuple_u64u64Z } from '../structs/TwoTuple_u64u64Z.mjs';
+import { Option_C2Tuple_u64u64ZZ } from '../structs/Option_C2Tuple_u64u64ZZ.mjs';
+import { NodeId } from '../structs/NodeId.mjs';
 import { Record } from '../structs/Record.mjs';
 import { Logger, LoggerInterface } from '../structs/Logger.mjs';
 import { NetworkGraph } from '../structs/NetworkGraph.mjs';
@@ -122,13 +132,13 @@ 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 { Option_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ } from '../structs/Option_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ.mjs';
 import { Result_NoneLightningErrorZ } from '../structs/Result_NoneLightningErrorZ.mjs';
 import { ChannelUpdateInfo } from '../structs/ChannelUpdateInfo.mjs';
 import { Result_ChannelUpdateInfoDecodeErrorZ } from '../structs/Result_ChannelUpdateInfoDecodeErrorZ.mjs';
@@ -136,9 +146,12 @@ 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 { Hostname } from '../structs/Hostname.mjs';
 import { NetAddress } from '../structs/NetAddress.mjs';
 import { NodeAnnouncementInfo } from '../structs/NodeAnnouncementInfo.mjs';
 import { Result_NodeAnnouncementInfoDecodeErrorZ } from '../structs/Result_NodeAnnouncementInfoDecodeErrorZ.mjs';
+import { NodeAlias } from '../structs/NodeAlias.mjs';
+import { Result_NodeAliasDecodeErrorZ } from '../structs/Result_NodeAliasDecodeErrorZ.mjs';
 import { NodeInfo } from '../structs/NodeInfo.mjs';
 import { Result_NodeInfoDecodeErrorZ } from '../structs/Result_NodeInfoDecodeErrorZ.mjs';
 import { Result_NetworkGraphDecodeErrorZ } from '../structs/Result_NetworkGraphDecodeErrorZ.mjs';
@@ -152,6 +165,8 @@ import { Result_SignatureNoneZ } from '../structs/Result_SignatureNoneZ.mjs';
 import { TwoTuple_SignatureSignatureZ } from '../structs/TwoTuple_SignatureSignatureZ.mjs';
 import { Result_C2Tuple_SignatureSignatureZNoneZ } from '../structs/Result_C2Tuple_SignatureSignatureZNoneZ.mjs';
 import { Result_SecretKeyNoneZ } from '../structs/Result_SecretKeyNoneZ.mjs';
+import { Option_ScalarZ } from '../structs/Option_ScalarZ.mjs';
+import { Result_SharedSecretNoneZ } from '../structs/Result_SharedSecretNoneZ.mjs';
 import { ClosingTransaction } from '../structs/ClosingTransaction.mjs';
 import { UnsignedChannelAnnouncement } from '../structs/UnsignedChannelAnnouncement.mjs';
 import { BaseSign, BaseSignInterface } from '../structs/BaseSign.mjs';
@@ -201,6 +216,8 @@ import { Option_TypeZ } from '../structs/Option_TypeZ.mjs';
 import { Result_COption_TypeZDecodeErrorZ } from '../structs/Result_COption_TypeZDecodeErrorZ.mjs';
 import { PaymentError } from '../structs/PaymentError.mjs';
 import { Result_PaymentIdPaymentErrorZ } from '../structs/Result_PaymentIdPaymentErrorZ.mjs';
+import { InFlightHtlcs } from '../structs/InFlightHtlcs.mjs';
+import { Result_InFlightHtlcsDecodeErrorZ } from '../structs/Result_InFlightHtlcsDecodeErrorZ.mjs';
 import { ParseError } from '../structs/ParseError.mjs';
 import { Result_SiPrefixParseErrorZ } from '../structs/Result_SiPrefixParseErrorZ.mjs';
 import { Invoice } from '../structs/Invoice.mjs';
@@ -240,6 +257,10 @@ 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 { SendError } from '../structs/SendError.mjs';
+import { Result_NoneSendErrorZ } from '../structs/Result_NoneSendErrorZ.mjs';
+import { GraphSyncError } from '../structs/GraphSyncError.mjs';
+import { Result_u32GraphSyncErrorZ } from '../structs/Result_u32GraphSyncErrorZ.mjs';
 import { Result_NoneErrorZ } from '../structs/Result_NoneErrorZ.mjs';
 import { Result_NetAddressDecodeErrorZ } from '../structs/Result_NetAddressDecodeErrorZ.mjs';
 import { UpdateAddHTLC } from '../structs/UpdateAddHTLC.mjs';
@@ -268,6 +289,8 @@ import { UpdateFee } from '../structs/UpdateFee.mjs';
 import { Result_UpdateFeeDecodeErrorZ } from '../structs/Result_UpdateFeeDecodeErrorZ.mjs';
 import { Result_UpdateFulfillHTLCDecodeErrorZ } from '../structs/Result_UpdateFulfillHTLCDecodeErrorZ.mjs';
 import { Result_UpdateAddHTLCDecodeErrorZ } from '../structs/Result_UpdateAddHTLCDecodeErrorZ.mjs';
+import { OnionMessage } from '../structs/OnionMessage.mjs';
+import { Result_OnionMessageDecodeErrorZ } from '../structs/Result_OnionMessageDecodeErrorZ.mjs';
 import { Ping } from '../structs/Ping.mjs';
 import { Result_PingDecodeErrorZ } from '../structs/Result_PingDecodeErrorZ.mjs';
 import { Pong } from '../structs/Pong.mjs';
@@ -281,6 +304,7 @@ import { Result_ErrorMessageDecodeErrorZ } from '../structs/Result_ErrorMessageD
 import { Result_WarningMessageDecodeErrorZ } from '../structs/Result_WarningMessageDecodeErrorZ.mjs';
 import { UnsignedNodeAnnouncement } from '../structs/UnsignedNodeAnnouncement.mjs';
 import { Result_UnsignedNodeAnnouncementDecodeErrorZ } from '../structs/Result_UnsignedNodeAnnouncementDecodeErrorZ.mjs';
+import { NodeAnnouncement } from '../structs/NodeAnnouncement.mjs';
 import { Result_NodeAnnouncementDecodeErrorZ } from '../structs/Result_NodeAnnouncementDecodeErrorZ.mjs';
 import { Result_QueryShortChannelIdsDecodeErrorZ } from '../structs/Result_QueryShortChannelIdsDecodeErrorZ.mjs';
 import { ReplyShortChannelIdsEnd } from '../structs/ReplyShortChannelIdsEnd.mjs';
@@ -296,13 +320,17 @@ import { Option_FilterZ } from '../structs/Option_FilterZ.mjs';
 import { LockedChannelMonitor } from '../structs/LockedChannelMonitor.mjs';
 import { Result_LockedChannelMonitorNoneZ } from '../structs/Result_LockedChannelMonitorNoneZ.mjs';
 import { MessageSendEventsProvider, MessageSendEventsProviderInterface } from '../structs/MessageSendEventsProvider.mjs';
+import { OnionMessageProvider, OnionMessageProviderInterface } from '../structs/OnionMessageProvider.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 { LockableScore, LockableScoreInterface } from '../structs/LockableScore.mjs';
+import { WriteableScore, WriteableScoreInterface } from '../structs/WriteableScore.mjs';
 import { Persister, PersisterInterface } from '../structs/Persister.mjs';
+import { FutureCallback, FutureCallbackInterface } from '../structs/FutureCallback.mjs';
+import { Future } from '../structs/Future.mjs';
 import { ChannelHandshakeLimits } from '../structs/ChannelHandshakeLimits.mjs';
 import { UserConfig } from '../structs/UserConfig.mjs';
 import { BestBlock } from '../structs/BestBlock.mjs';
@@ -319,6 +347,7 @@ 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 { OnionMessageHandler, OnionMessageHandlerInterface } from '../structs/OnionMessageHandler.mjs';
 import { CustomMessageReader, CustomMessageReaderInterface } from '../structs/CustomMessageReader.mjs';
 import { CustomMessageHandler, CustomMessageHandlerInterface } from '../structs/CustomMessageHandler.mjs';
 import { IgnoringMessageHandler } from '../structs/IgnoringMessageHandler.mjs';
@@ -331,8 +360,12 @@ import { ReadOnlyNetworkGraph } from '../structs/ReadOnlyNetworkGraph.mjs';
 import { P2PGossipSync } from '../structs/P2PGossipSync.mjs';
 import { DirectedChannelInfo } from '../structs/DirectedChannelInfo.mjs';
 import { EffectiveCapacity } from '../structs/EffectiveCapacity.mjs';
-import { LockableScore, LockableScoreInterface } from '../structs/LockableScore.mjs';
+import { MultiThreadedLockableScore } from '../structs/MultiThreadedLockableScore.mjs';
+import { MultiThreadedScoreLock } from '../structs/MultiThreadedScoreLock.mjs';
 import { ProbabilisticScoringParameters } from '../structs/ProbabilisticScoringParameters.mjs';
+import { OnionMessenger } from '../structs/OnionMessenger.mjs';
+import { Destination } from '../structs/Destination.mjs';
+import { RapidGossipSync } from '../structs/RapidGossipSync.mjs';
 import { RawDataPart } from '../structs/RawDataPart.mjs';
 import { Sha256 } from '../structs/Sha256.mjs';
 import { ExpiryTime } from '../structs/ExpiryTime.mjs';
@@ -355,7 +388,7 @@ import * as bindings from '../bindings.mjs'
  */
 export class ChannelHandshakeConfig extends CommonBase {
        /* @internal */
-       public constructor(_dummy: object, ptr: number) {
+       public constructor(_dummy: object, ptr: bigint) {
                super(ptr, bindings.ChannelHandshakeConfig_free);
        }
 
@@ -535,20 +568,20 @@ export class ChannelHandshakeConfig extends CommonBase {
         * 
         * If this option is set, channels may be created that will not be readable by LDK versions
         * prior to 0.0.106, causing [`ChannelManager`]'s read method to return a
-        * [`DecodeError:InvalidValue`].
+        * [`DecodeError::InvalidValue`].
         * 
         * Note that setting this to true does *not* prevent us from opening channels with
         * counterparties that do not support the `scid_alias` option; we will simply fall back to a
         * private channel without that option.
         * 
         * Ignored if the channel is negotiated to be announced, see
-        * [`ChannelConfig::announced_channel`] and
+        * [`ChannelHandshakeConfig::announced_channel`] and
         * [`ChannelHandshakeLimits::force_announced_channel_preference`] for more.
         * 
         * Default value: false. This value is likely to change to true in the future.
         * 
         * [`ChannelManager`]: crate::ln::channelmanager::ChannelManager
-        * [`DecodeError:InvalidValue`]: crate::ln::msgs::DecodeError::InvalidValue
+        * [`DecodeError::InvalidValue`]: crate::ln::msgs::DecodeError::InvalidValue
         */
        public get_negotiate_scid_privacy(): boolean {
                const ret: boolean = bindings.ChannelHandshakeConfig_get_negotiate_scid_privacy(this.ptr);
@@ -563,37 +596,164 @@ export class ChannelHandshakeConfig extends CommonBase {
         * 
         * If this option is set, channels may be created that will not be readable by LDK versions
         * prior to 0.0.106, causing [`ChannelManager`]'s read method to return a
-        * [`DecodeError:InvalidValue`].
+        * [`DecodeError::InvalidValue`].
         * 
         * Note that setting this to true does *not* prevent us from opening channels with
         * counterparties that do not support the `scid_alias` option; we will simply fall back to a
         * private channel without that option.
         * 
         * Ignored if the channel is negotiated to be announced, see
-        * [`ChannelConfig::announced_channel`] and
+        * [`ChannelHandshakeConfig::announced_channel`] and
         * [`ChannelHandshakeLimits::force_announced_channel_preference`] for more.
         * 
         * Default value: false. This value is likely to change to true in the future.
         * 
         * [`ChannelManager`]: crate::ln::channelmanager::ChannelManager
-        * [`DecodeError:InvalidValue`]: crate::ln::msgs::DecodeError::InvalidValue
+        * [`DecodeError::InvalidValue`]: crate::ln::msgs::DecodeError::InvalidValue
         */
        public set_negotiate_scid_privacy(val: boolean): void {
                bindings.ChannelHandshakeConfig_set_negotiate_scid_privacy(this.ptr, val);
        }
 
+       /**
+        * Set to announce the channel publicly and notify all nodes that they can route via this
+        * channel.
+        * 
+        * This should only be set to true for nodes which expect to be online reliably.
+        * 
+        * As the node which funds a channel picks this value this will only apply for new outbound
+        * channels unless [`ChannelHandshakeLimits::force_announced_channel_preference`] is set.
+        * 
+        * Default value: false.
+        */
+       public get_announced_channel(): boolean {
+               const ret: boolean = bindings.ChannelHandshakeConfig_get_announced_channel(this.ptr);
+               return ret;
+       }
+
+       /**
+        * Set to announce the channel publicly and notify all nodes that they can route via this
+        * channel.
+        * 
+        * This should only be set to true for nodes which expect to be online reliably.
+        * 
+        * As the node which funds a channel picks this value this will only apply for new outbound
+        * channels unless [`ChannelHandshakeLimits::force_announced_channel_preference`] is set.
+        * 
+        * Default value: false.
+        */
+       public set_announced_channel(val: boolean): void {
+               bindings.ChannelHandshakeConfig_set_announced_channel(this.ptr, val);
+       }
+
+       /**
+        * When set, we commit to an upfront shutdown_pubkey at channel open. If our counterparty
+        * supports it, they will then enforce the mutual-close output to us matches what we provided
+        * at intialization, preventing us from closing to an alternate pubkey.
+        * 
+        * This is set to true by default to provide a slight increase in security, though ultimately
+        * any attacker who is able to take control of a channel can just as easily send the funds via
+        * lightning payments, so we never require that our counterparties support this option.
+        * 
+        * The upfront key committed is provided from [`KeysInterface::get_shutdown_scriptpubkey`].
+        * 
+        * Default value: true.
+        * 
+        * [`KeysInterface::get_shutdown_scriptpubkey`]: crate::chain::keysinterface::KeysInterface::get_shutdown_scriptpubkey
+        */
+       public get_commit_upfront_shutdown_pubkey(): boolean {
+               const ret: boolean = bindings.ChannelHandshakeConfig_get_commit_upfront_shutdown_pubkey(this.ptr);
+               return ret;
+       }
+
+       /**
+        * When set, we commit to an upfront shutdown_pubkey at channel open. If our counterparty
+        * supports it, they will then enforce the mutual-close output to us matches what we provided
+        * at intialization, preventing us from closing to an alternate pubkey.
+        * 
+        * This is set to true by default to provide a slight increase in security, though ultimately
+        * any attacker who is able to take control of a channel can just as easily send the funds via
+        * lightning payments, so we never require that our counterparties support this option.
+        * 
+        * The upfront key committed is provided from [`KeysInterface::get_shutdown_scriptpubkey`].
+        * 
+        * Default value: true.
+        * 
+        * [`KeysInterface::get_shutdown_scriptpubkey`]: crate::chain::keysinterface::KeysInterface::get_shutdown_scriptpubkey
+        */
+       public set_commit_upfront_shutdown_pubkey(val: boolean): void {
+               bindings.ChannelHandshakeConfig_set_commit_upfront_shutdown_pubkey(this.ptr, val);
+       }
+
+       /**
+        * The Proportion of the channel value to configure as counterparty's channel reserve,
+        * i.e., `their_channel_reserve_satoshis` for both outbound and inbound channels.
+        * 
+        * `their_channel_reserve_satoshis` is the minimum balance that the other node has to maintain
+        * on their side, at all times.
+        * This ensures that if our counterparty broadcasts a revoked state, we can punish them by
+        * claiming at least this value on chain.
+        * 
+        * Channel reserve values greater than 30% could be considered highly unreasonable, since that
+        * amount can never be used for payments.
+        * Also, if our selected channel reserve for counterparty and counterparty's selected
+        * channel reserve for us sum up to equal or greater than channel value, channel negotiations
+        * will fail.
+        * 
+        * Note: Versions of LDK earlier than v0.0.104 will fail to read channels with any channel reserve
+        * other than the default value.
+        * 
+        * Default value: 1% of channel value, i.e., configured as 10,000 millionths.
+        * Minimum value: If the calculated proportional value is less than 1000 sats, it will be treated
+        * as 1000 sats instead, which is a safe implementation-specific lower bound.
+        * Maximum value: 1,000,000, any values larger than 1 Million will be treated as 1 Million (or 100%)
+        * instead, although channel negotiations will fail in that case.
+        */
+       public get_their_channel_reserve_proportional_millionths(): number {
+               const ret: number = bindings.ChannelHandshakeConfig_get_their_channel_reserve_proportional_millionths(this.ptr);
+               return ret;
+       }
+
+       /**
+        * The Proportion of the channel value to configure as counterparty's channel reserve,
+        * i.e., `their_channel_reserve_satoshis` for both outbound and inbound channels.
+        * 
+        * `their_channel_reserve_satoshis` is the minimum balance that the other node has to maintain
+        * on their side, at all times.
+        * This ensures that if our counterparty broadcasts a revoked state, we can punish them by
+        * claiming at least this value on chain.
+        * 
+        * Channel reserve values greater than 30% could be considered highly unreasonable, since that
+        * amount can never be used for payments.
+        * Also, if our selected channel reserve for counterparty and counterparty's selected
+        * channel reserve for us sum up to equal or greater than channel value, channel negotiations
+        * will fail.
+        * 
+        * Note: Versions of LDK earlier than v0.0.104 will fail to read channels with any channel reserve
+        * other than the default value.
+        * 
+        * Default value: 1% of channel value, i.e., configured as 10,000 millionths.
+        * Minimum value: If the calculated proportional value is less than 1000 sats, it will be treated
+        * as 1000 sats instead, which is a safe implementation-specific lower bound.
+        * Maximum value: 1,000,000, any values larger than 1 Million will be treated as 1 Million (or 100%)
+        * instead, although channel negotiations will fail in that case.
+        */
+       public set_their_channel_reserve_proportional_millionths(val: number): void {
+               bindings.ChannelHandshakeConfig_set_their_channel_reserve_proportional_millionths(this.ptr, val);
+       }
+
        /**
         * Constructs a new ChannelHandshakeConfig given each field
         */
-       public static constructor_new(minimum_depth_arg: number, our_to_self_delay_arg: number, our_htlc_minimum_msat_arg: bigint, max_inbound_htlc_value_in_flight_percent_of_channel_arg: number, negotiate_scid_privacy_arg: boolean): ChannelHandshakeConfig {
-               const ret: number = bindings.ChannelHandshakeConfig_new(minimum_depth_arg, our_to_self_delay_arg, our_htlc_minimum_msat_arg, max_inbound_htlc_value_in_flight_percent_of_channel_arg, negotiate_scid_privacy_arg);
+       public static constructor_new(minimum_depth_arg: number, our_to_self_delay_arg: number, our_htlc_minimum_msat_arg: bigint, max_inbound_htlc_value_in_flight_percent_of_channel_arg: number, negotiate_scid_privacy_arg: boolean, announced_channel_arg: boolean, commit_upfront_shutdown_pubkey_arg: boolean, their_channel_reserve_proportional_millionths_arg: number): ChannelHandshakeConfig {
+               const ret: bigint = bindings.ChannelHandshakeConfig_new(minimum_depth_arg, our_to_self_delay_arg, our_htlc_minimum_msat_arg, max_inbound_htlc_value_in_flight_percent_of_channel_arg, negotiate_scid_privacy_arg, announced_channel_arg, commit_upfront_shutdown_pubkey_arg, their_channel_reserve_proportional_millionths_arg);
                const ret_hu_conv: ChannelHandshakeConfig = new ChannelHandshakeConfig(null, ret);
                CommonBase.add_ref_from(ret_hu_conv, ret_hu_conv);
                return ret_hu_conv;
        }
 
-       public clone_ptr(): number {
-               const ret: number = bindings.ChannelHandshakeConfig_clone_ptr(this.ptr);
+       public clone_ptr(): bigint {
+               const ret: bigint = bindings.ChannelHandshakeConfig_clone_ptr(this.ptr);
                return ret;
        }
 
@@ -601,7 +761,7 @@ export class ChannelHandshakeConfig extends CommonBase {
         * Creates a copy of the ChannelHandshakeConfig
         */
        public clone(): ChannelHandshakeConfig {
-               const ret: number = bindings.ChannelHandshakeConfig_clone(this.ptr);
+               const ret: bigint = bindings.ChannelHandshakeConfig_clone(this.ptr);
                const ret_hu_conv: ChannelHandshakeConfig = new ChannelHandshakeConfig(null, ret);
                CommonBase.add_ref_from(ret_hu_conv, this);
                return ret_hu_conv;
@@ -611,7 +771,7 @@ export class ChannelHandshakeConfig extends CommonBase {
         * Creates a "default" ChannelHandshakeConfig. See struct and individual field documentaiton for details on which values are used.
         */
        public static constructor_default(): ChannelHandshakeConfig {
-               const ret: number = bindings.ChannelHandshakeConfig_default();
+               const ret: bigint = bindings.ChannelHandshakeConfig_default();
                const ret_hu_conv: ChannelHandshakeConfig = new ChannelHandshakeConfig(null, ret);
                CommonBase.add_ref_from(ret_hu_conv, ret_hu_conv);
                return ret_hu_conv;