[TS] Update auto-generated TS bindings
[ldk-java] / ts / bindings.mts
index 66e01b38b6e295ebe9c90308c3379dc4a49f621a..2c9c3640a96d29d6bdac52849d27232dc5df077d 100644 (file)
@@ -17,7 +17,7 @@ imports.wasi_snapshot_preview1 = {
                for (var i = 0; i < iovec_array_len; i++) {
                        const bytes_view = new Uint8Array(wasm.memory.buffer, ptr_len_view[i*2], ptr_len_view[i*2+1]);
                        console.log("[fd " + fd + "]: " + String.fromCharCode(...bytes_view));
-                       bytes_written += ptr_len_view[i*2+1];
+                       bytes_written += ptr_len_view[i*2+1]!;
                }
                const written_view = new Uint32Array(wasm.memory.buffer, bytes_written_ptr, 1);
                written_view[0] = bytes_written;
@@ -46,7 +46,7 @@ imports.wasi_snapshot_preview1 = {
                out_len_view[0] = 0;
                return 0;
        },
-       "environ_get": (environ_ptr: number, environ_buf_ptr: number) => {
+       "environ_get": (_environ_ptr: number, _environ_buf_ptr: number) => {
                // This is called before fd_write to format + print panic messages,
                // but only if we have variables in environ_sizes_get, so shouldn't ever actually happen!
                console.log("wasi_snapshot_preview1:environ_get");
@@ -90,7 +90,7 @@ async function finishInitializeWasm(wasmInstance: WebAssembly.Instance) {
 }
 
 const fn_list = ["uuuuuu", "buuuuu", "bbuuuu", "bbbuuu", "bbbbuu",
-       "bbbbbb", "ubuubu", "ubuuuu", "ubbuuu", "uubuuu", "uububu"];
+       "bbbbbb", "ubuubu", "ubuuuu", "ubbuuu", "uubuuu", "uububu", "ububuu"];
 
 /* @internal */
 export async function initializeWasmFromUint8Array(wasmBinary: Uint8Array) {
@@ -112,7 +112,7 @@ export async function initializeWasmFetch(uri: string) {
 export function uint5ArrToBytes(inputArray: Array<UInt5>): Uint8Array {
        const arr = new Uint8Array(inputArray.length);
        for (var i = 0; i < inputArray.length; i++) {
-               arr[i] = inputArray[i].getVal();
+               arr[i] = inputArray[i]!.getVal();
        }
        return arr;
 }
@@ -121,7 +121,7 @@ export function uint5ArrToBytes(inputArray: Array<UInt5>): Uint8Array {
 export function WitnessVersionArrToBytes(inputArray: Array<WitnessVersion>): Uint8Array {
        const arr = new Uint8Array(inputArray.length);
        for (var i = 0; i < inputArray.length; i++) {
-               arr[i] = inputArray[i].getVal();
+               arr[i] = inputArray[i]!.getVal();
        }
        return arr;
 }
@@ -129,7 +129,18 @@ export function WitnessVersionArrToBytes(inputArray: Array<WitnessVersion>): Uin
 
 
 /* @internal */
-export function encodeUint8Array (inputArray: Uint8Array): number {
+export function encodeUint128 (inputVal: bigint): number {
+       if (inputVal >= 0x10000000000000000000000000000000n) throw "U128s cannot exceed 128 bits";
+       const cArrayPointer = wasm.TS_malloc(16 + 8);
+       const arrayLengthView = new BigUint64Array(wasm.memory.buffer, cArrayPointer, 1);
+       arrayLengthView[0] = BigInt(16);
+       const arrayMemoryView = new Uint8Array(wasm.memory.buffer, cArrayPointer + 8, 16);
+       for (var i = 0; i < 16; i++) arrayMemoryView[i] = Number((inputVal >> BigInt(i)*8n) & 0xffn);
+       return cArrayPointer;
+}
+/* @internal */
+export function encodeUint8Array (inputArray: Uint8Array|null): number {
+       if (inputArray == null) return 0;
        const cArrayPointer = wasm.TS_malloc(inputArray.length + 8);
        const arrayLengthView = new BigUint64Array(wasm.memory.buffer, cArrayPointer, 1);
        arrayLengthView[0] = BigInt(inputArray.length);
@@ -138,7 +149,18 @@ export function encodeUint8Array (inputArray: Uint8Array): number {
        return cArrayPointer;
 }
 /* @internal */
-export function encodeUint32Array (inputArray: Uint32Array|Array<number>): number {
+export function encodeUint16Array (inputArray: Uint16Array|Array<number>|null): number {
+       if (inputArray == null) return 0;
+       const cArrayPointer = wasm.TS_malloc((inputArray.length + 4) * 2);
+       const arrayLengthView = new BigUint64Array(wasm.memory.buffer, cArrayPointer, 1);
+       arrayLengthView[0] = BigInt(inputArray.length);
+       const arrayMemoryView = new Uint16Array(wasm.memory.buffer, cArrayPointer + 8, inputArray.length);
+       arrayMemoryView.set(inputArray);
+       return cArrayPointer;
+}
+/* @internal */
+export function encodeUint32Array (inputArray: Uint32Array|Array<number>|null): number {
+       if (inputArray == null) return 0;
        const cArrayPointer = wasm.TS_malloc((inputArray.length + 2) * 4);
        const arrayLengthView = new BigUint64Array(wasm.memory.buffer, cArrayPointer, 1);
        arrayLengthView[0] = BigInt(inputArray.length);
@@ -147,28 +169,50 @@ export function encodeUint32Array (inputArray: Uint32Array|Array<number>): numbe
        return cArrayPointer;
 }
 /* @internal */
-export function encodeUint64Array (inputArray: BigUint64Array|Array<bigint>): number {
+export function encodeUint64Array (inputArray: BigUint64Array|Array<bigint>|null): number {
+       if (inputArray == null) return 0;
        const cArrayPointer = wasm.TS_malloc((inputArray.length + 1) * 8);
-       const arrayMemoryView = new BigUint64Array(wasm.memory.buffer, cArrayPointer, 1);
-       arrayMemoryView.set(inputArray, 1);
+       const arrayMemoryView = new BigUint64Array(wasm.memory.buffer, cArrayPointer, inputArray.length + 1);
        arrayMemoryView[0] = BigInt(inputArray.length);
+       arrayMemoryView.set(inputArray, 1);
        return cArrayPointer;
 }
 
 /* @internal */
-export function check_arr_len(arr: Uint8Array, len: number): Uint8Array {
-       if (arr.length != len) { throw new Error("Expected array of length " + len + " got " + arr.length); }
+export function check_arr_len(arr: Uint8Array|null, len: number): Uint8Array|null {
+       if (arr !== null && arr.length != len) { throw new Error("Expected array of length " + len + " got " + arr.length); }
+       return arr;
+}
+
+/* @internal */
+export function check_16_arr_len(arr: Uint16Array|null, len: number): Uint16Array|null {
+       if (arr !== null && arr.length != len) { throw new Error("Expected array of length " + len + " got " + arr.length); }
        return arr;
 }
 
 /* @internal */
 export function getArrayLength(arrayPointer: number): number {
        const arraySizeViewer = new BigUint64Array(wasm.memory.buffer, arrayPointer, 1);
-       const len = arraySizeViewer[0];
+       const len = arraySizeViewer[0]!;
        if (len >= (2n ** 32n)) throw new Error("Bogus Array Size");
        return Number(len % (2n ** 32n));
 }
 /* @internal */
+export function decodeUint128 (arrayPointer: number, free = true): bigint {
+       const arraySize = getArrayLength(arrayPointer);
+       if (arraySize != 16) throw "Need 16 bytes for a uint128";
+       const actualArrayViewer = new Uint8Array(wasm.memory.buffer, arrayPointer + 8, arraySize);
+       var val = 0n;
+       for (var i = 0; i < 16; i++) {
+               val <<= 8n;
+               val |= BigInt(actualArrayViewer[i]!);
+       }
+       if (free) {
+               wasm.TS_free(arrayPointer);
+       }
+       return val;
+}
+/* @internal */
 export function decodeUint8Array (arrayPointer: number, free = true): Uint8Array {
        const arraySize = getArrayLength(arrayPointer);
        const actualArrayViewer = new Uint8Array(wasm.memory.buffer, arrayPointer + 8, arraySize);
@@ -181,15 +225,13 @@ export function decodeUint8Array (arrayPointer: number, free = true): Uint8Array
        }
        return actualArray;
 }
-const decodeUint32Array = (arrayPointer: number, free = true) => {
+/* @internal */
+export function decodeUint16Array (arrayPointer: number, free = true): Uint16Array {
        const arraySize = getArrayLength(arrayPointer);
-       const actualArrayViewer = new Uint32Array(
-               wasm.memory.buffer, // value
-               arrayPointer + 8, // offset (ignoring length bytes)
-               arraySize // uint32 count
-       );
+       const actualArrayViewer = new Uint16Array(wasm.memory.buffer, arrayPointer + 8, arraySize);
        // Clone the contents, TODO: In the future we should wrap the Viewer in a class that
        // will free the underlying memory when it becomes unreachable instead of copying here.
+       // Note that doing so may have edge-case interactions with memory resizing (invalidating the buffer).
        const actualArray = actualArrayViewer.slice(0, arraySize);
        if (free) {
                wasm.TS_free(arrayPointer);
@@ -219,19 +261,19 @@ export function freeWasmMemory(pointer: number) { wasm.TS_free(pointer); }
 /* @internal */
 export function getU64ArrayElem(arrayPointer: number, idx: number): bigint {
        const actualArrayViewer = new BigUint64Array(wasm.memory.buffer, arrayPointer + 8, idx + 1);
-       return actualArrayViewer[idx];
+       return actualArrayViewer[idx]!;
 }
 
 /* @internal */
 export function getU32ArrayElem(arrayPointer: number, idx: number): number {
        const actualArrayViewer = new Uint32Array(wasm.memory.buffer, arrayPointer + 8, idx + 1);
-       return actualArrayViewer[idx];
+       return actualArrayViewer[idx]!;
 }
 
 /* @internal */
 export function getU8ArrayElem(arrayPointer: number, idx: number): number {
        const actualArrayViewer = new Uint8Array(wasm.memory.buffer, arrayPointer + 8, idx + 1);
-       return actualArrayViewer[idx];
+       return actualArrayViewer[idx]!;
 }
 
 
@@ -257,21 +299,6 @@ export function decodeString(stringPointer: number, free = true): string {
 /* @internal */ export function getRemainingAllocationCount(): number { return 0; }
 /* @internal */ export function debugPrintRemainingAllocs() { }
 
-/**
- * An error when accessing the chain via [`Access`].
- */
-export enum AccessError {
-       /**
-        * The requested chain is unknown.
-        */
-       LDKAccessError_UnknownChain,
-       /**
-        * The requested transaction doesn't exist or hasn't confirmed.
-        */
-       LDKAccessError_UnknownTx,
-       
-}
-
 /**
  * An enum which can either contain a  or not
  */
@@ -288,73 +315,88 @@ export enum COption_NoneZ {
 }
 
 /**
- * An error enum representing a failure to persist a channel monitor update.
+ * An enum representing the status of a channel monitor update persistence.
  */
-export enum ChannelMonitorUpdateErr {
+export enum ChannelMonitorUpdateStatus {
+       /**
+        * The update has been durably persisted and all copies of the relevant [`ChannelMonitor`]
+       have been updated.
+       
+       This includes performing any `fsync()` calls required to ensure the update is guaranteed to
+       be available on restart even if the application crashes.
+        */
+       LDKChannelMonitorUpdateStatus_Completed,
        /**
         * Used to indicate a temporary failure (eg connection to a watchtower or remote backup of
        our state failed, but is expected to succeed at some point in the future).
        
        Such a failure will \"freeze\" a channel, preventing us from revoking old states or
-       submitting new commitment transactions to the counterparty. Once the update(s) that failed
-       have been successfully applied, a [`MonitorEvent::UpdateCompleted`] event should be returned
-       via [`Watch::release_pending_monitor_events`] which will then restore the channel to an
-       operational state.
+       submitting new commitment transactions to the counterparty. Once the update(s) which failed
+       have been successfully applied, a [`MonitorEvent::Completed`] can be used to restore the
+       channel to an operational state.
        
-       Note that a given ChannelManager will *never* re-generate a given ChannelMonitorUpdate. If
-       you return a TemporaryFailure you must ensure that it is written to disk safely before
-       writing out the latest ChannelManager state.
+       Note that a given [`ChannelManager`] will *never* re-generate a [`ChannelMonitorUpdate`].
+       If you return this error you must ensure that it is written to disk safely before writing
+       the latest [`ChannelManager`] state, or you should return [`PermanentFailure`] instead.
        
-       Even when a channel has been \"frozen\" updates to the ChannelMonitor can continue to occur
-       (eg if an inbound HTLC which we forwarded was claimed upstream resulting in us attempting
-       to claim it on this channel) and those updates must be applied wherever they can be. At
-       least one such updated ChannelMonitor must be persisted otherwise PermanentFailure should
-       be returned to get things on-chain ASAP using only the in-memory copy. Obviously updates to
-       the channel which would invalidate previous ChannelMonitors are not made when a channel has
-       been \"frozen\".
+       Even when a channel has been \"frozen\", updates to the [`ChannelMonitor`] can continue to
+       occur (e.g. if an inbound HTLC which we forwarded was claimed upstream, resulting in us
+       attempting to claim it on this channel) and those updates must still be persisted.
        
-       Note that even if updates made after TemporaryFailure succeed you must still provide a
-       [`MonitorEvent::UpdateCompleted`] to ensure you have the latest monitor and re-enable
-       normal channel operation. Note that this is normally generated through a call to
-       [`ChainMonitor::channel_monitor_updated`].
-       
-       Note that the update being processed here will not be replayed for you when you return a
-       [`MonitorEvent::UpdateCompleted`] event via [`Watch::release_pending_monitor_events`], so
-       you must store the update itself on your own local disk prior to returning a
-       TemporaryFailure. You may, of course, employ a journaling approach, storing only the
-       ChannelMonitorUpdate on disk without updating the monitor itself, replaying the journal at
-       reload-time.
+       No updates to the channel will be made which could invalidate other [`ChannelMonitor`]s
+       until a [`MonitorEvent::Completed`] is provided, even if you return no error on a later
+       monitor update for the same channel.
        
        For deployments where a copy of ChannelMonitors and other local state are backed up in a
        remote location (with local copies persisted immediately), it is anticipated that all
-       updates will return TemporaryFailure until the remote copies could be updated.
+       updates will return [`InProgress`] until the remote copies could be updated.
        
-       [`ChainMonitor::channel_monitor_updated`]: chainmonitor::ChainMonitor::channel_monitor_updated
+       [`PermanentFailure`]: ChannelMonitorUpdateStatus::PermanentFailure
+       [`InProgress`]: ChannelMonitorUpdateStatus::InProgress
+       [`ChannelManager`]: crate::ln::channelmanager::ChannelManager
         */
-       LDKChannelMonitorUpdateErr_TemporaryFailure,
+       LDKChannelMonitorUpdateStatus_InProgress,
        /**
-        * Used to indicate no further channel monitor updates will be allowed (eg we've moved on to a
-       different watchtower and cannot update with all watchtowers that were previously informed
-       of this channel).
+        * Used to indicate no further channel monitor updates will be allowed (likely a disk failure
+       or a remote copy of this [`ChannelMonitor`] is no longer reachable and thus not updatable).
+       
+       When this is returned, [`ChannelManager`] will force-close the channel but *not* broadcast
+       our current commitment transaction. This avoids a dangerous case where a local disk failure
+       (e.g. the Linux-default remounting of the disk as read-only) causes [`PermanentFailure`]s
+       for all monitor updates. If we were to broadcast our latest commitment transaction and then
+       restart, we could end up reading a previous [`ChannelMonitor`] and [`ChannelManager`],
+       revoking our now-broadcasted state before seeing it confirm and losing all our funds.
+       
+       Note that this is somewhat of a tradeoff - if the disk is really gone and we may have lost
+       the data permanently, we really should broadcast immediately. If the data can be recovered
+       with manual intervention, we'd rather close the channel, rejecting future updates to it,
+       and broadcast the latest state only if we have HTLCs to claim which are timing out (which
+       we do as long as blocks are connected).
        
-       At reception of this error, ChannelManager will force-close the channel and return at
-       least a final ChannelMonitorUpdate::ChannelForceClosed which must be delivered to at
-       least one ChannelMonitor copy. Revocation secret MUST NOT be released and offchain channel
-       update must be rejected.
+       In order to broadcast the latest local commitment transaction, you'll need to call
+       [`ChannelMonitor::get_latest_holder_commitment_txn`] and broadcast the resulting
+       transactions once you've safely ensured no further channel updates can be generated by your
+       [`ChannelManager`].
        
-       This failure may also signal a failure to update the local persisted copy of one of
-       the channel monitor instance.
+       Note that at least one final [`ChannelMonitorUpdate`] may still be provided, which must
+       still be processed by a running [`ChannelMonitor`]. This final update will mark the
+       [`ChannelMonitor`] as finalized, ensuring no further updates (e.g. revocation of the latest
+       commitment transaction) are allowed.
        
-       Note that even when you fail a holder commitment transaction update, you must store the
-       update to ensure you can claim from it in case of a duplicate copy of this ChannelMonitor
-       broadcasts it (e.g distributed channel-monitor deployment)
+       Note that even if you return a [`PermanentFailure`] due to unavailability of secondary
+       [`ChannelMonitor`] copies, you should still make an attempt to store the update where
+       possible to ensure you can claim HTLC outputs on the latest commitment transaction
+       broadcasted later.
        
        In case of distributed watchtowers deployment, the new version must be written to disk, as
        state may have been stored but rejected due to a block forcing a commitment broadcast. This
        storage is used to claim outputs of rejected state confirmed onchain by another watchtower,
        lagging behind on block processing.
+       
+       [`PermanentFailure`]: ChannelMonitorUpdateStatus::PermanentFailure
+       [`ChannelManager`]: crate::ln::channelmanager::ChannelManager
         */
-       LDKChannelMonitorUpdateErr_PermanentFailure,
+       LDKChannelMonitorUpdateStatus_PermanentFailure,
        
 }
 
@@ -405,6 +447,12 @@ export enum CreationError {
        [phantom invoices]: crate::utils::create_phantom_invoice
         */
        LDKCreationError_MissingRouteHints,
+       /**
+        * The provided `min_final_cltv_expiry_delta` was less than [`MIN_FINAL_CLTV_EXPIRY_DELTA`].
+       
+       [`MIN_FINAL_CLTV_EXPIRY_DELTA`]: lightning::ln::channelmanager::MIN_FINAL_CLTV_EXPIRY_DELTA
+        */
+       LDKCreationError_MinFinalCltvExpiryDeltaTooShort,
        
 }
 
@@ -435,6 +483,60 @@ export enum Currency {
        
 }
 
+/**
+ * This enum is used to specify which error data to send to peers when failing back an HTLC
+ * using [`ChannelManager::fail_htlc_backwards_with_reason`].
+ * 
+ * For more info on failure codes, see <https://github.com/lightning/bolts/blob/master/04-onion-routing.md#failure-messages>.
+ */
+export enum FailureCode {
+       /**
+        * We had a temporary error processing the payment. Useful if no other error codes fit
+       and you want to indicate that the payer may want to retry.
+        */
+       LDKFailureCode_TemporaryNodeFailure,
+       /**
+        * We have a required feature which was not in this onion. For example, you may require
+       some additional metadata that was not provided with this payment.
+        */
+       LDKFailureCode_RequiredNodeFeatureMissing,
+       /**
+        * You may wish to use this when a `payment_preimage` is unknown, or the CLTV expiry of
+       the HTLC is too close to the current block height for safe handling.
+       Using this failure code in [`ChannelManager::fail_htlc_backwards_with_reason`] is
+       equivalent to calling [`ChannelManager::fail_htlc_backwards`].
+        */
+       LDKFailureCode_IncorrectOrUnknownPaymentDetails,
+       
+}
+
+/**
+ * Describes the type of HTLC claim as determined by analyzing the witness.
+ */
+export enum HTLCClaim {
+       /**
+        * Claims an offered output on a commitment transaction through the timeout path.
+        */
+       LDKHTLCClaim_OfferedTimeout,
+       /**
+        * Claims an offered output on a commitment transaction through the success path.
+        */
+       LDKHTLCClaim_OfferedPreimage,
+       /**
+        * Claims an accepted output on a commitment transaction through the timeout path.
+        */
+       LDKHTLCClaim_AcceptedTimeout,
+       /**
+        * Claims an accepted output on a commitment transaction through the success path.
+        */
+       LDKHTLCClaim_AcceptedPreimage,
+       /**
+        * Claims an offered/accepted output on a commitment transaction through the revocation path.
+        */
+       LDKHTLCClaim_Revocation,
+       
+}
+
 /**
  * Represents an IO Error. Note that some information is lost in the conversion from Rust.
  */
@@ -515,8 +617,10 @@ export enum Network {
 }
 
 /**
- * Specifies the recipient of an invoice, to indicate to [`KeysInterface::sign_invoice`] what node
- * secret key should be used to sign the invoice.
+ * Specifies the recipient of an invoice.
+ * 
+ * This indicates to [`NodeSigner::sign_invoice`] what node secret key should be used to sign
+ * the invoice.
  */
 export enum Recipient {
        /**
@@ -533,6 +637,38 @@ export enum Recipient {
        
 }
 
+/**
+ * Indicates an immediate error on [`ChannelManager::send_payment_with_retry`]. Further errors
+ * may be surfaced later via [`Event::PaymentPathFailed`] and [`Event::PaymentFailed`].
+ * 
+ * [`ChannelManager::send_payment_with_retry`]: crate::ln::channelmanager::ChannelManager::send_payment_with_retry
+ * [`Event::PaymentPathFailed`]: crate::util::events::Event::PaymentPathFailed
+ * [`Event::PaymentFailed`]: crate::util::events::Event::PaymentFailed
+ */
+export enum RetryableSendFailure {
+       /**
+        * The provided [`PaymentParameters::expiry_time`] indicated that the payment has expired. Note
+       that this error is *not* caused by [`Retry::Timeout`].
+       
+       [`PaymentParameters::expiry_time`]: crate::routing::router::PaymentParameters::expiry_time
+        */
+       LDKRetryableSendFailure_PaymentExpired,
+       /**
+        * We were unable to find a route to the destination.
+        */
+       LDKRetryableSendFailure_RouteNotFound,
+       /**
+        * Indicates that a payment for the provided [`PaymentId`] is already in-flight and has not
+       yet completed (i.e. generated an [`Event::PaymentSent`] or [`Event::PaymentFailed`]).
+       
+       [`PaymentId`]: crate::ln::channelmanager::PaymentId
+       [`Event::PaymentSent`]: crate::util::events::Event::PaymentSent
+       [`Event::PaymentFailed`]: crate::util::events::Event::PaymentFailed
+        */
+       LDKRetryableSendFailure_DuplicatePayment,
+       
+}
+
 /**
  * Represents an error returned from libsecp256k1 during validation of some secp256k1 data
  */
@@ -655,6 +791,39 @@ export enum SiPrefix {
        LDKSiPrefix_Pico,
        
 }
+
+/**
+ * An error when accessing the chain via [`UtxoLookup`].
+ */
+export enum UtxoLookupError {
+       /**
+        * The requested chain is unknown.
+        */
+       LDKUtxoLookupError_UnknownChain,
+       /**
+        * The requested transaction doesn't exist or hasn't confirmed.
+        */
+       LDKUtxoLookupError_UnknownTx,
+       
+}
+       // struct LDKThirtyTwoBytes BigEndianScalar_get_bytes (struct LDKBigEndianScalar* thing)
+/* @internal */
+export function BigEndianScalar_get_bytes(thing: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BigEndianScalar_get_bytes(thing);
+       return nativeResponseValue;
+}
+       // static void BigEndianScalar_free (struct LDKBigEndianScalar thing)
+/* @internal */
+export function BigEndianScalar_free(thing: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BigEndianScalar_free(thing);
+       // debug statements here
+}
 /* @internal */
 export class LDKBech32Error {
        protected constructor() {}
@@ -701,76 +870,158 @@ export function TxOut_get_value(thing: bigint): bigint {
        const nativeResponseValue = wasm.TS_TxOut_get_value(thing);
        return nativeResponseValue;
 }
-       // void CResult_NoneNoneZ_get_ok(LDKCResult_NoneNoneZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_NoneNoneZ_get_ok(owner: bigint): void {
+export class LDKAPIError {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKAPIError_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NoneNoneZ_get_ok(owner);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_LDKAPIError_ty_from_ptr(ptr);
+       return nativeResponseValue;
 }
-       // void CResult_NoneNoneZ_get_err(LDKCResult_NoneNoneZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_NoneNoneZ_get_err(owner: bigint): void {
+export function LDKAPIError_APIMisuseError_get_err(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NoneNoneZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_LDKAPIError_APIMisuseError_get_err(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKAPIError_FeeRateTooHigh_get_err(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKAPIError_FeeRateTooHigh_get_err(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKAPIError_FeeRateTooHigh_get_feerate(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKAPIError_FeeRateTooHigh_get_feerate(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKAPIError_InvalidRoute_get_err(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKAPIError_InvalidRoute_get_err(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKAPIError_ChannelUnavailable_get_err(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKAPIError_ChannelUnavailable_get_err(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKAPIError_IncompatibleShutdownScript_get_script(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKAPIError_IncompatibleShutdownScript_get_script(ptr);
+       return nativeResponseValue;
+}
+       // void CResult_NoneAPIErrorZ_get_ok(LDKCResult_NoneAPIErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_NoneAPIErrorZ_get_ok(owner: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_get_ok(owner);
        // debug statements here
 }
-       // struct LDKCounterpartyCommitmentSecrets CResult_CounterpartyCommitmentSecretsDecodeErrorZ_get_ok(LDKCResult_CounterpartyCommitmentSecretsDecodeErrorZ *NONNULL_PTR owner);
+       // struct LDKAPIError CResult_NoneAPIErrorZ_get_err(LDKCResult_NoneAPIErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_CounterpartyCommitmentSecretsDecodeErrorZ_get_ok(owner: bigint): bigint {
+export function CResult_NoneAPIErrorZ_get_err(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_CounterpartyCommitmentSecretsDecodeErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_get_err(owner);
        return nativeResponseValue;
 }
-       // struct LDKDecodeError CResult_CounterpartyCommitmentSecretsDecodeErrorZ_get_err(LDKCResult_CounterpartyCommitmentSecretsDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_CounterpartyCommitmentSecretsDecodeErrorZ_get_err(owner: bigint): bigint {
+export class LDKCOption_HTLCClaimZ {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKCOption_HTLCClaimZ_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_CounterpartyCommitmentSecretsDecodeErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_LDKCOption_HTLCClaimZ_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
-       // struct LDKSecretKey CResult_SecretKeyErrorZ_get_ok(LDKCResult_SecretKeyErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_SecretKeyErrorZ_get_ok(owner: bigint): number {
+export function LDKCOption_HTLCClaimZ_Some_get_some(ptr: bigint): HTLCClaim {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SecretKeyErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_LDKCOption_HTLCClaimZ_Some_get_some(ptr);
        return nativeResponseValue;
 }
-       // enum LDKSecp256k1Error CResult_SecretKeyErrorZ_get_err(LDKCResult_SecretKeyErrorZ *NONNULL_PTR owner);
+       // void CResult_NoneNoneZ_get_ok(LDKCResult_NoneNoneZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_NoneNoneZ_get_ok(owner: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NoneNoneZ_get_ok(owner);
+       // debug statements here
+}
+       // void CResult_NoneNoneZ_get_err(LDKCResult_NoneNoneZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_SecretKeyErrorZ_get_err(owner: bigint): Secp256k1Error {
+export function CResult_NoneNoneZ_get_err(owner: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SecretKeyErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_CResult_NoneNoneZ_get_err(owner);
+       // debug statements here
+}
+/* @internal */
+export class LDKDecodeError {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKDecodeError_ty_from_ptr(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKDecodeError_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
-       // struct LDKPublicKey CResult_PublicKeyErrorZ_get_ok(LDKCResult_PublicKeyErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_PublicKeyErrorZ_get_ok(owner: bigint): number {
+export function LDKDecodeError_Io_get_io(ptr: bigint): IOError {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_LDKDecodeError_Io_get_io(ptr);
        return nativeResponseValue;
 }
-       // enum LDKSecp256k1Error CResult_PublicKeyErrorZ_get_err(LDKCResult_PublicKeyErrorZ *NONNULL_PTR owner);
+       // struct LDKCounterpartyCommitmentSecrets CResult_CounterpartyCommitmentSecretsDecodeErrorZ_get_ok(LDKCResult_CounterpartyCommitmentSecretsDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_PublicKeyErrorZ_get_err(owner: bigint): Secp256k1Error {
+export function CResult_CounterpartyCommitmentSecretsDecodeErrorZ_get_ok(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_CResult_CounterpartyCommitmentSecretsDecodeErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError CResult_CounterpartyCommitmentSecretsDecodeErrorZ_get_err(LDKCResult_CounterpartyCommitmentSecretsDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_CounterpartyCommitmentSecretsDecodeErrorZ_get_err(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_CounterpartyCommitmentSecretsDecodeErrorZ_get_err(owner);
        return nativeResponseValue;
 }
        // struct LDKTxCreationKeys CResult_TxCreationKeysDecodeErrorZ_get_ok(LDKCResult_TxCreationKeysDecodeErrorZ *NONNULL_PTR owner);
@@ -808,24 +1059,6 @@ export function CResult_ChannelPublicKeysDecodeErrorZ_get_err(owner: bigint): bi
        }
        const nativeResponseValue = wasm.TS_CResult_ChannelPublicKeysDecodeErrorZ_get_err(owner);
        return nativeResponseValue;
-}
-       // struct LDKTxCreationKeys CResult_TxCreationKeysErrorZ_get_ok(LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR owner);
-/* @internal */
-export function CResult_TxCreationKeysErrorZ_get_ok(owner: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_TxCreationKeysErrorZ_get_ok(owner);
-       return nativeResponseValue;
-}
-       // enum LDKSecp256k1Error CResult_TxCreationKeysErrorZ_get_err(LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR owner);
-/* @internal */
-export function CResult_TxCreationKeysErrorZ_get_err(owner: bigint): Secp256k1Error {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_TxCreationKeysErrorZ_get_err(owner);
-       return nativeResponseValue;
 }
 /* @internal */
 export class LDKCOption_u32Z {
@@ -1044,6 +1277,116 @@ export function CResult_ShutdownScriptInvalidShutdownScriptZ_get_err(owner: bigi
        }
        const nativeResponseValue = wasm.TS_CResult_ShutdownScriptInvalidShutdownScriptZ_get_err(owner);
        return nativeResponseValue;
+}
+       // struct LDKBlindedPath CResult_BlindedPathNoneZ_get_ok(LDKCResult_BlindedPathNoneZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_BlindedPathNoneZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedPathNoneZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // void CResult_BlindedPathNoneZ_get_err(LDKCResult_BlindedPathNoneZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_BlindedPathNoneZ_get_err(owner: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedPathNoneZ_get_err(owner);
+       // debug statements here
+}
+       // struct LDKBlindedPath CResult_BlindedPathDecodeErrorZ_get_ok(LDKCResult_BlindedPathDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_BlindedPathDecodeErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedPathDecodeErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError CResult_BlindedPathDecodeErrorZ_get_err(LDKCResult_BlindedPathDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_BlindedPathDecodeErrorZ_get_err(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedPathDecodeErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+       // struct LDKBlindedHop CResult_BlindedHopDecodeErrorZ_get_ok(LDKCResult_BlindedHopDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_BlindedHopDecodeErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedHopDecodeErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError CResult_BlindedHopDecodeErrorZ_get_err(LDKCResult_BlindedHopDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_BlindedHopDecodeErrorZ_get_err(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedHopDecodeErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+       // struct LDKRoute CResult_RouteLightningErrorZ_get_ok(LDKCResult_RouteLightningErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_RouteLightningErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // struct LDKLightningError CResult_RouteLightningErrorZ_get_err(LDKCResult_RouteLightningErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_RouteLightningErrorZ_get_err(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+/* @internal */
+export class LDKCOption_u64Z {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKCOption_u64Z_ty_from_ptr(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKCOption_u64Z_ty_from_ptr(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKCOption_u64Z_Some_get_some(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKCOption_u64Z_Some_get_some(ptr);
+       return nativeResponseValue;
+}
+       // struct LDKInFlightHtlcs CResult_InFlightHtlcsDecodeErrorZ_get_ok(LDKCResult_InFlightHtlcsDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_InFlightHtlcsDecodeErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_InFlightHtlcsDecodeErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError CResult_InFlightHtlcsDecodeErrorZ_get_err(LDKCResult_InFlightHtlcsDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_InFlightHtlcsDecodeErrorZ_get_err(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_InFlightHtlcsDecodeErrorZ_get_err(owner);
+       return nativeResponseValue;
 }
        // struct LDKRouteHop CResult_RouteHopDecodeErrorZ_get_ok(LDKCResult_RouteHopDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
@@ -1098,26 +1441,6 @@ export function CResult_RouteParametersDecodeErrorZ_get_err(owner: bigint): bigi
        }
        const nativeResponseValue = wasm.TS_CResult_RouteParametersDecodeErrorZ_get_err(owner);
        return nativeResponseValue;
-}
-/* @internal */
-export class LDKCOption_u64Z {
-       protected constructor() {}
-}
-/* @internal */
-export function LDKCOption_u64Z_ty_from_ptr(ptr: bigint): number {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_LDKCOption_u64Z_ty_from_ptr(ptr);
-       return nativeResponseValue;
-}
-/* @internal */
-export function LDKCOption_u64Z_Some_get_some(ptr: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_LDKCOption_u64Z_Some_get_some(ptr);
-       return nativeResponseValue;
 }
        // struct LDKPaymentParameters CResult_PaymentParametersDecodeErrorZ_get_ok(LDKCResult_PaymentParametersDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
@@ -1172,24 +1495,6 @@ export function CResult_RouteHintHopDecodeErrorZ_get_err(owner: bigint): bigint
        }
        const nativeResponseValue = wasm.TS_CResult_RouteHintHopDecodeErrorZ_get_err(owner);
        return nativeResponseValue;
-}
-       // struct LDKRoute CResult_RouteLightningErrorZ_get_ok(LDKCResult_RouteLightningErrorZ *NONNULL_PTR owner);
-/* @internal */
-export function CResult_RouteLightningErrorZ_get_ok(owner: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_get_ok(owner);
-       return nativeResponseValue;
-}
-       // struct LDKLightningError CResult_RouteLightningErrorZ_get_err(LDKCResult_RouteLightningErrorZ *NONNULL_PTR owner);
-/* @internal */
-export function CResult_RouteLightningErrorZ_get_err(owner: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_get_err(owner);
-       return nativeResponseValue;
 }
 /* @internal */
 export class LDKPaymentPurpose {
@@ -1246,479 +1551,597 @@ export function CResult_PaymentPurposeDecodeErrorZ_get_err(owner: bigint): bigin
        return nativeResponseValue;
 }
 /* @internal */
-export class LDKClosureReason {
+export class LDKNetworkUpdate {
        protected constructor() {}
 }
 /* @internal */
-export function LDKClosureReason_ty_from_ptr(ptr: bigint): number {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_LDKClosureReason_ty_from_ptr(ptr);
-       return nativeResponseValue;
-}
-/* @internal */
-export function LDKClosureReason_CounterpartyForceClosed_get_peer_msg(ptr: bigint): number {
+export function LDKNetworkUpdate_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKClosureReason_CounterpartyForceClosed_get_peer_msg(ptr);
+       const nativeResponseValue = wasm.TS_LDKNetworkUpdate_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKClosureReason_ProcessingError_get_err(ptr: bigint): number {
+export function LDKNetworkUpdate_ChannelUpdateMessage_get_msg(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKClosureReason_ProcessingError_get_err(ptr);
+       const nativeResponseValue = wasm.TS_LDKNetworkUpdate_ChannelUpdateMessage_get_msg(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export class LDKCOption_ClosureReasonZ {
-       protected constructor() {}
-}
-/* @internal */
-export function LDKCOption_ClosureReasonZ_ty_from_ptr(ptr: bigint): number {
+export function LDKNetworkUpdate_ChannelFailure_get_short_channel_id(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKCOption_ClosureReasonZ_ty_from_ptr(ptr);
+       const nativeResponseValue = wasm.TS_LDKNetworkUpdate_ChannelFailure_get_short_channel_id(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKCOption_ClosureReasonZ_Some_get_some(ptr: bigint): bigint {
+export function LDKNetworkUpdate_ChannelFailure_get_is_permanent(ptr: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKCOption_ClosureReasonZ_Some_get_some(ptr);
+       const nativeResponseValue = wasm.TS_LDKNetworkUpdate_ChannelFailure_get_is_permanent(ptr);
        return nativeResponseValue;
 }
-       // struct LDKCOption_ClosureReasonZ CResult_COption_ClosureReasonZDecodeErrorZ_get_ok(LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_COption_ClosureReasonZDecodeErrorZ_get_ok(owner: bigint): bigint {
+export function LDKNetworkUpdate_NodeFailure_get_node_id(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_COption_ClosureReasonZDecodeErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_LDKNetworkUpdate_NodeFailure_get_node_id(ptr);
        return nativeResponseValue;
 }
-       // struct LDKDecodeError CResult_COption_ClosureReasonZDecodeErrorZ_get_err(LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_COption_ClosureReasonZDecodeErrorZ_get_err(owner: bigint): bigint {
+export function LDKNetworkUpdate_NodeFailure_get_is_permanent(ptr: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_COption_ClosureReasonZDecodeErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_LDKNetworkUpdate_NodeFailure_get_is_permanent(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export class LDKHTLCDestination {
+export class LDKCOption_NetworkUpdateZ {
        protected constructor() {}
 }
 /* @internal */
-export function LDKHTLCDestination_ty_from_ptr(ptr: bigint): number {
+export function LDKCOption_NetworkUpdateZ_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKHTLCDestination_ty_from_ptr(ptr);
+       const nativeResponseValue = wasm.TS_LDKCOption_NetworkUpdateZ_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKHTLCDestination_NextHopChannel_get_node_id(ptr: bigint): number {
+export function LDKCOption_NetworkUpdateZ_Some_get_some(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKHTLCDestination_NextHopChannel_get_node_id(ptr);
+       const nativeResponseValue = wasm.TS_LDKCOption_NetworkUpdateZ_Some_get_some(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKHTLCDestination_NextHopChannel_get_channel_id(ptr: bigint): number {
+export class LDKPathFailure {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKPathFailure_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKHTLCDestination_NextHopChannel_get_channel_id(ptr);
+       const nativeResponseValue = wasm.TS_LDKPathFailure_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKHTLCDestination_UnknownNextHop_get_requested_forward_scid(ptr: bigint): bigint {
+export function LDKPathFailure_InitialSend_get_err(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKHTLCDestination_UnknownNextHop_get_requested_forward_scid(ptr);
+       const nativeResponseValue = wasm.TS_LDKPathFailure_InitialSend_get_err(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKHTLCDestination_FailedPayment_get_payment_hash(ptr: bigint): number {
+export function LDKPathFailure_OnPath_get_network_update(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKHTLCDestination_FailedPayment_get_payment_hash(ptr);
+       const nativeResponseValue = wasm.TS_LDKPathFailure_OnPath_get_network_update(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export class LDKCOption_HTLCDestinationZ {
+export class LDKCOption_PathFailureZ {
        protected constructor() {}
 }
 /* @internal */
-export function LDKCOption_HTLCDestinationZ_ty_from_ptr(ptr: bigint): number {
+export function LDKCOption_PathFailureZ_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKCOption_HTLCDestinationZ_ty_from_ptr(ptr);
+       const nativeResponseValue = wasm.TS_LDKCOption_PathFailureZ_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKCOption_HTLCDestinationZ_Some_get_some(ptr: bigint): bigint {
+export function LDKCOption_PathFailureZ_Some_get_some(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKCOption_HTLCDestinationZ_Some_get_some(ptr);
+       const nativeResponseValue = wasm.TS_LDKCOption_PathFailureZ_Some_get_some(ptr);
        return nativeResponseValue;
 }
-       // struct LDKCOption_HTLCDestinationZ CResult_COption_HTLCDestinationZDecodeErrorZ_get_ok(LDKCResult_COption_HTLCDestinationZDecodeErrorZ *NONNULL_PTR owner);
+       // struct LDKCOption_PathFailureZ CResult_COption_PathFailureZDecodeErrorZ_get_ok(LDKCResult_COption_PathFailureZDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_COption_HTLCDestinationZDecodeErrorZ_get_ok(owner: bigint): bigint {
+export function CResult_COption_PathFailureZDecodeErrorZ_get_ok(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_COption_HTLCDestinationZDecodeErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_CResult_COption_PathFailureZDecodeErrorZ_get_ok(owner);
        return nativeResponseValue;
 }
-       // struct LDKDecodeError CResult_COption_HTLCDestinationZDecodeErrorZ_get_err(LDKCResult_COption_HTLCDestinationZDecodeErrorZ *NONNULL_PTR owner);
+       // struct LDKDecodeError CResult_COption_PathFailureZDecodeErrorZ_get_err(LDKCResult_COption_PathFailureZDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_COption_HTLCDestinationZDecodeErrorZ_get_err(owner: bigint): bigint {
+export function CResult_COption_PathFailureZDecodeErrorZ_get_err(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_COption_HTLCDestinationZDecodeErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_CResult_COption_PathFailureZDecodeErrorZ_get_err(owner);
        return nativeResponseValue;
 }
 /* @internal */
-export class LDKNetworkUpdate {
+export class LDKClosureReason {
        protected constructor() {}
 }
 /* @internal */
-export function LDKNetworkUpdate_ty_from_ptr(ptr: bigint): number {
+export function LDKClosureReason_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKNetworkUpdate_ty_from_ptr(ptr);
+       const nativeResponseValue = wasm.TS_LDKClosureReason_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKNetworkUpdate_ChannelUpdateMessage_get_msg(ptr: bigint): bigint {
+export function LDKClosureReason_CounterpartyForceClosed_get_peer_msg(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKNetworkUpdate_ChannelUpdateMessage_get_msg(ptr);
+       const nativeResponseValue = wasm.TS_LDKClosureReason_CounterpartyForceClosed_get_peer_msg(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKNetworkUpdate_ChannelFailure_get_short_channel_id(ptr: bigint): bigint {
+export function LDKClosureReason_ProcessingError_get_err(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKNetworkUpdate_ChannelFailure_get_short_channel_id(ptr);
+       const nativeResponseValue = wasm.TS_LDKClosureReason_ProcessingError_get_err(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKNetworkUpdate_ChannelFailure_get_is_permanent(ptr: bigint): boolean {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_LDKNetworkUpdate_ChannelFailure_get_is_permanent(ptr);
-       return nativeResponseValue;
+export class LDKCOption_ClosureReasonZ {
+       protected constructor() {}
 }
 /* @internal */
-export function LDKNetworkUpdate_NodeFailure_get_node_id(ptr: bigint): number {
+export function LDKCOption_ClosureReasonZ_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKNetworkUpdate_NodeFailure_get_node_id(ptr);
+       const nativeResponseValue = wasm.TS_LDKCOption_ClosureReasonZ_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKNetworkUpdate_NodeFailure_get_is_permanent(ptr: bigint): boolean {
+export function LDKCOption_ClosureReasonZ_Some_get_some(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKNetworkUpdate_NodeFailure_get_is_permanent(ptr);
+       const nativeResponseValue = wasm.TS_LDKCOption_ClosureReasonZ_Some_get_some(ptr);
        return nativeResponseValue;
 }
+       // struct LDKCOption_ClosureReasonZ CResult_COption_ClosureReasonZDecodeErrorZ_get_ok(LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export class LDKCOption_NetworkUpdateZ {
-       protected constructor() {}
-}
-/* @internal */
-export function LDKCOption_NetworkUpdateZ_ty_from_ptr(ptr: bigint): number {
+export function CResult_COption_ClosureReasonZDecodeErrorZ_get_ok(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKCOption_NetworkUpdateZ_ty_from_ptr(ptr);
+       const nativeResponseValue = wasm.TS_CResult_COption_ClosureReasonZDecodeErrorZ_get_ok(owner);
        return nativeResponseValue;
 }
+       // struct LDKDecodeError CResult_COption_ClosureReasonZDecodeErrorZ_get_err(LDKCResult_COption_ClosureReasonZDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function LDKCOption_NetworkUpdateZ_Some_get_some(ptr: bigint): bigint {
+export function CResult_COption_ClosureReasonZDecodeErrorZ_get_err(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKCOption_NetworkUpdateZ_Some_get_some(ptr);
+       const nativeResponseValue = wasm.TS_CResult_COption_ClosureReasonZDecodeErrorZ_get_err(owner);
        return nativeResponseValue;
 }
 /* @internal */
-export class LDKSpendableOutputDescriptor {
+export class LDKHTLCDestination {
        protected constructor() {}
 }
 /* @internal */
-export function LDKSpendableOutputDescriptor_ty_from_ptr(ptr: bigint): number {
+export function LDKHTLCDestination_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKSpendableOutputDescriptor_ty_from_ptr(ptr);
+       const nativeResponseValue = wasm.TS_LDKHTLCDestination_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKSpendableOutputDescriptor_StaticOutput_get_outpoint(ptr: bigint): bigint {
+export function LDKHTLCDestination_NextHopChannel_get_node_id(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKSpendableOutputDescriptor_StaticOutput_get_outpoint(ptr);
+       const nativeResponseValue = wasm.TS_LDKHTLCDestination_NextHopChannel_get_node_id(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKSpendableOutputDescriptor_StaticOutput_get_output(ptr: bigint): bigint {
+export function LDKHTLCDestination_NextHopChannel_get_channel_id(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKSpendableOutputDescriptor_StaticOutput_get_output(ptr);
+       const nativeResponseValue = wasm.TS_LDKHTLCDestination_NextHopChannel_get_channel_id(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKSpendableOutputDescriptor_DelayedPaymentOutput_get_delayed_payment_output(ptr: bigint): bigint {
+export function LDKHTLCDestination_UnknownNextHop_get_requested_forward_scid(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKSpendableOutputDescriptor_DelayedPaymentOutput_get_delayed_payment_output(ptr);
+       const nativeResponseValue = wasm.TS_LDKHTLCDestination_UnknownNextHop_get_requested_forward_scid(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKSpendableOutputDescriptor_StaticPaymentOutput_get_static_payment_output(ptr: bigint): bigint {
+export function LDKHTLCDestination_InvalidForward_get_requested_forward_scid(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKSpendableOutputDescriptor_StaticPaymentOutput_get_static_payment_output(ptr);
+       const nativeResponseValue = wasm.TS_LDKHTLCDestination_InvalidForward_get_requested_forward_scid(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export class LDKEvent {
-       protected constructor() {}
-}
-/* @internal */
-export function LDKEvent_ty_from_ptr(ptr: bigint): number {
+export function LDKHTLCDestination_FailedPayment_get_payment_hash(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_ty_from_ptr(ptr);
+       const nativeResponseValue = wasm.TS_LDKHTLCDestination_FailedPayment_get_payment_hash(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_FundingGenerationReady_get_temporary_channel_id(ptr: bigint): number {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_LDKEvent_FundingGenerationReady_get_temporary_channel_id(ptr);
-       return nativeResponseValue;
+export class LDKCOption_HTLCDestinationZ {
+       protected constructor() {}
 }
 /* @internal */
-export function LDKEvent_FundingGenerationReady_get_counterparty_node_id(ptr: bigint): number {
+export function LDKCOption_HTLCDestinationZ_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_FundingGenerationReady_get_counterparty_node_id(ptr);
+       const nativeResponseValue = wasm.TS_LDKCOption_HTLCDestinationZ_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_FundingGenerationReady_get_channel_value_satoshis(ptr: bigint): bigint {
+export function LDKCOption_HTLCDestinationZ_Some_get_some(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_FundingGenerationReady_get_channel_value_satoshis(ptr);
+       const nativeResponseValue = wasm.TS_LDKCOption_HTLCDestinationZ_Some_get_some(ptr);
        return nativeResponseValue;
 }
+       // struct LDKCOption_HTLCDestinationZ CResult_COption_HTLCDestinationZDecodeErrorZ_get_ok(LDKCResult_COption_HTLCDestinationZDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function LDKEvent_FundingGenerationReady_get_output_script(ptr: bigint): number {
+export function CResult_COption_HTLCDestinationZDecodeErrorZ_get_ok(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_FundingGenerationReady_get_output_script(ptr);
+       const nativeResponseValue = wasm.TS_CResult_COption_HTLCDestinationZDecodeErrorZ_get_ok(owner);
        return nativeResponseValue;
 }
+       // struct LDKDecodeError CResult_COption_HTLCDestinationZDecodeErrorZ_get_err(LDKCResult_COption_HTLCDestinationZDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function LDKEvent_FundingGenerationReady_get_user_channel_id(ptr: bigint): bigint {
+export function CResult_COption_HTLCDestinationZDecodeErrorZ_get_err(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_FundingGenerationReady_get_user_channel_id(ptr);
+       const nativeResponseValue = wasm.TS_CResult_COption_HTLCDestinationZDecodeErrorZ_get_err(owner);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentReceived_get_payment_hash(ptr: bigint): number {
+export class LDKCOption_u128Z {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKCOption_u128Z_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentReceived_get_payment_hash(ptr);
+       const nativeResponseValue = wasm.TS_LDKCOption_u128Z_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentReceived_get_amount_msat(ptr: bigint): bigint {
+export function LDKCOption_u128Z_Some_get_some(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentReceived_get_amount_msat(ptr);
+       const nativeResponseValue = wasm.TS_LDKCOption_u128Z_Some_get_some(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentReceived_get_purpose(ptr: bigint): bigint {
+export class LDKSpendableOutputDescriptor {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKSpendableOutputDescriptor_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentReceived_get_purpose(ptr);
+       const nativeResponseValue = wasm.TS_LDKSpendableOutputDescriptor_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentClaimed_get_payment_hash(ptr: bigint): number {
+export function LDKSpendableOutputDescriptor_StaticOutput_get_outpoint(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentClaimed_get_payment_hash(ptr);
+       const nativeResponseValue = wasm.TS_LDKSpendableOutputDescriptor_StaticOutput_get_outpoint(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentClaimed_get_amount_msat(ptr: bigint): bigint {
+export function LDKSpendableOutputDescriptor_StaticOutput_get_output(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentClaimed_get_amount_msat(ptr);
+       const nativeResponseValue = wasm.TS_LDKSpendableOutputDescriptor_StaticOutput_get_output(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentClaimed_get_purpose(ptr: bigint): bigint {
+export function LDKSpendableOutputDescriptor_DelayedPaymentOutput_get_delayed_payment_output(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentClaimed_get_purpose(ptr);
+       const nativeResponseValue = wasm.TS_LDKSpendableOutputDescriptor_DelayedPaymentOutput_get_delayed_payment_output(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentSent_get_payment_id(ptr: bigint): number {
+export function LDKSpendableOutputDescriptor_StaticPaymentOutput_get_static_payment_output(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentSent_get_payment_id(ptr);
+       const nativeResponseValue = wasm.TS_LDKSpendableOutputDescriptor_StaticPaymentOutput_get_static_payment_output(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentSent_get_payment_preimage(ptr: bigint): number {
+export class LDKEvent {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKEvent_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentSent_get_payment_preimage(ptr);
+       const nativeResponseValue = wasm.TS_LDKEvent_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentSent_get_payment_hash(ptr: bigint): number {
+export function LDKEvent_FundingGenerationReady_get_temporary_channel_id(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentSent_get_payment_hash(ptr);
+       const nativeResponseValue = wasm.TS_LDKEvent_FundingGenerationReady_get_temporary_channel_id(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentSent_get_fee_paid_msat(ptr: bigint): bigint {
+export function LDKEvent_FundingGenerationReady_get_counterparty_node_id(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentSent_get_fee_paid_msat(ptr);
+       const nativeResponseValue = wasm.TS_LDKEvent_FundingGenerationReady_get_counterparty_node_id(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentFailed_get_payment_id(ptr: bigint): number {
+export function LDKEvent_FundingGenerationReady_get_channel_value_satoshis(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentFailed_get_payment_id(ptr);
+       const nativeResponseValue = wasm.TS_LDKEvent_FundingGenerationReady_get_channel_value_satoshis(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentFailed_get_payment_hash(ptr: bigint): number {
+export function LDKEvent_FundingGenerationReady_get_output_script(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentFailed_get_payment_hash(ptr);
+       const nativeResponseValue = wasm.TS_LDKEvent_FundingGenerationReady_get_output_script(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentPathSuccessful_get_payment_id(ptr: bigint): number {
+export function LDKEvent_FundingGenerationReady_get_user_channel_id(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentPathSuccessful_get_payment_id(ptr);
+       const nativeResponseValue = wasm.TS_LDKEvent_FundingGenerationReady_get_user_channel_id(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentPathSuccessful_get_payment_hash(ptr: bigint): number {
+export function LDKEvent_PaymentClaimable_get_receiver_node_id(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentPathSuccessful_get_payment_hash(ptr);
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentClaimable_get_receiver_node_id(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentPathSuccessful_get_path(ptr: bigint): number {
+export function LDKEvent_PaymentClaimable_get_payment_hash(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentPathSuccessful_get_path(ptr);
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentClaimable_get_payment_hash(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentPathFailed_get_payment_id(ptr: bigint): number {
+export function LDKEvent_PaymentClaimable_get_amount_msat(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentPathFailed_get_payment_id(ptr);
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentClaimable_get_amount_msat(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentPathFailed_get_payment_hash(ptr: bigint): number {
+export function LDKEvent_PaymentClaimable_get_purpose(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentPathFailed_get_payment_hash(ptr);
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentClaimable_get_purpose(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentPathFailed_get_rejected_by_dest(ptr: bigint): boolean {
+export function LDKEvent_PaymentClaimable_get_via_channel_id(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentPathFailed_get_rejected_by_dest(ptr);
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentClaimable_get_via_channel_id(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentPathFailed_get_network_update(ptr: bigint): bigint {
+export function LDKEvent_PaymentClaimable_get_via_user_channel_id(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentPathFailed_get_network_update(ptr);
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentClaimable_get_via_user_channel_id(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_PaymentPathFailed_get_all_paths_failed(ptr: bigint): boolean {
+export function LDKEvent_PaymentClaimed_get_receiver_node_id(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKEvent_PaymentPathFailed_get_all_paths_failed(ptr);
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentClaimed_get_receiver_node_id(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_PaymentClaimed_get_payment_hash(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentClaimed_get_payment_hash(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_PaymentClaimed_get_amount_msat(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentClaimed_get_amount_msat(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_PaymentClaimed_get_purpose(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentClaimed_get_purpose(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_PaymentSent_get_payment_id(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentSent_get_payment_id(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_PaymentSent_get_payment_preimage(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentSent_get_payment_preimage(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_PaymentSent_get_payment_hash(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentSent_get_payment_hash(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_PaymentSent_get_fee_paid_msat(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentSent_get_fee_paid_msat(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_PaymentFailed_get_payment_id(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentFailed_get_payment_id(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_PaymentFailed_get_payment_hash(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentFailed_get_payment_hash(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_PaymentPathSuccessful_get_payment_id(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentPathSuccessful_get_payment_id(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_PaymentPathSuccessful_get_payment_hash(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentPathSuccessful_get_payment_hash(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_PaymentPathSuccessful_get_path(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentPathSuccessful_get_path(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_PaymentPathFailed_get_payment_id(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentPathFailed_get_payment_id(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_PaymentPathFailed_get_payment_hash(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentPathFailed_get_payment_hash(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_PaymentPathFailed_get_payment_failed_permanently(ptr: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentPathFailed_get_payment_failed_permanently(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_PaymentPathFailed_get_failure(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_PaymentPathFailed_get_failure(ptr);
        return nativeResponseValue;
 }
 /* @internal */
@@ -1810,6 +2233,46 @@ export function LDKEvent_PendingHTLCsForwardable_get_time_forwardable(ptr: bigin
        return nativeResponseValue;
 }
 /* @internal */
+export function LDKEvent_HTLCIntercepted_get_intercept_id(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_HTLCIntercepted_get_intercept_id(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_HTLCIntercepted_get_requested_next_hop_scid(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_HTLCIntercepted_get_requested_next_hop_scid(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_HTLCIntercepted_get_payment_hash(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_HTLCIntercepted_get_payment_hash(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_HTLCIntercepted_get_inbound_amount_msat(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_HTLCIntercepted_get_inbound_amount_msat(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_HTLCIntercepted_get_expected_outbound_amount_msat(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_HTLCIntercepted_get_expected_outbound_amount_msat(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
 export function LDKEvent_SpendableOutputs_get_outputs(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
@@ -1850,6 +2313,38 @@ export function LDKEvent_PaymentForwarded_get_claim_from_onchain_tx(ptr: bigint)
        return nativeResponseValue;
 }
 /* @internal */
+export function LDKEvent_ChannelReady_get_channel_id(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_ChannelReady_get_channel_id(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_ChannelReady_get_user_channel_id(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_ChannelReady_get_user_channel_id(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_ChannelReady_get_counterparty_node_id(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_ChannelReady_get_counterparty_node_id(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKEvent_ChannelReady_get_channel_type(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKEvent_ChannelReady_get_channel_type(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
 export function LDKEvent_ChannelClosed_get_channel_id(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
@@ -1858,7 +2353,7 @@ export function LDKEvent_ChannelClosed_get_channel_id(ptr: bigint): number {
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKEvent_ChannelClosed_get_user_channel_id(ptr: bigint): bigint {
+export function LDKEvent_ChannelClosed_get_user_channel_id(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -2224,6 +2719,30 @@ export function LDKMessageSendEvent_SendChannelReestablish_get_msg(ptr: bigint):
        return nativeResponseValue;
 }
 /* @internal */
+export function LDKMessageSendEvent_SendChannelAnnouncement_get_node_id(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKMessageSendEvent_SendChannelAnnouncement_get_node_id(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKMessageSendEvent_SendChannelAnnouncement_get_msg(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKMessageSendEvent_SendChannelAnnouncement_get_msg(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKMessageSendEvent_SendChannelAnnouncement_get_update_msg(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKMessageSendEvent_SendChannelAnnouncement_get_update_msg(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
 export function LDKMessageSendEvent_BroadcastChannelAnnouncement_get_msg(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
@@ -2240,19 +2759,19 @@ export function LDKMessageSendEvent_BroadcastChannelAnnouncement_get_update_msg(
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKMessageSendEvent_BroadcastNodeAnnouncement_get_msg(ptr: bigint): bigint {
+export function LDKMessageSendEvent_BroadcastChannelUpdate_get_msg(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKMessageSendEvent_BroadcastNodeAnnouncement_get_msg(ptr);
+       const nativeResponseValue = wasm.TS_LDKMessageSendEvent_BroadcastChannelUpdate_get_msg(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKMessageSendEvent_BroadcastChannelUpdate_get_msg(ptr: bigint): bigint {
+export function LDKMessageSendEvent_BroadcastNodeAnnouncement_get_msg(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKMessageSendEvent_BroadcastChannelUpdate_get_msg(ptr);
+       const nativeResponseValue = wasm.TS_LDKMessageSendEvent_BroadcastNodeAnnouncement_get_msg(ptr);
        return nativeResponseValue;
 }
 /* @internal */
@@ -2350,24 +2869,6 @@ export function LDKMessageSendEvent_SendGossipTimestampFilter_get_msg(ptr: bigin
        }
        const nativeResponseValue = wasm.TS_LDKMessageSendEvent_SendGossipTimestampFilter_get_msg(ptr);
        return nativeResponseValue;
-}
-       // struct LDKTxOut CResult_TxOutAccessErrorZ_get_ok(LDKCResult_TxOutAccessErrorZ *NONNULL_PTR owner);
-/* @internal */
-export function CResult_TxOutAccessErrorZ_get_ok(owner: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_TxOutAccessErrorZ_get_ok(owner);
-       return nativeResponseValue;
-}
-       // enum LDKAccessError CResult_TxOutAccessErrorZ_get_err(LDKCResult_TxOutAccessErrorZ *NONNULL_PTR owner);
-/* @internal */
-export function CResult_TxOutAccessErrorZ_get_err(owner: bigint): AccessError {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_TxOutAccessErrorZ_get_err(owner);
-       return nativeResponseValue;
 }
        // uintptr_t C2Tuple_usizeTransactionZ_get_a(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR owner);
 /* @internal */
@@ -2387,22 +2888,22 @@ export function C2Tuple_usizeTransactionZ_get_b(owner: bigint): number {
        const nativeResponseValue = wasm.TS_C2Tuple_usizeTransactionZ_get_b(owner);
        return nativeResponseValue;
 }
-       // void CResult_NoneChannelMonitorUpdateErrZ_get_ok(LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR owner);
+       // struct LDKThirtyTwoBytes C2Tuple_TxidBlockHashZ_get_a(LDKC2Tuple_TxidBlockHashZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_NoneChannelMonitorUpdateErrZ_get_ok(owner: bigint): void {
+export function C2Tuple_TxidBlockHashZ_get_a(owner: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NoneChannelMonitorUpdateErrZ_get_ok(owner);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_C2Tuple_TxidBlockHashZ_get_a(owner);
+       return nativeResponseValue;
 }
-       // enum LDKChannelMonitorUpdateErr CResult_NoneChannelMonitorUpdateErrZ_get_err(LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR owner);
+       // struct LDKThirtyTwoBytes C2Tuple_TxidBlockHashZ_get_b(LDKC2Tuple_TxidBlockHashZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_NoneChannelMonitorUpdateErrZ_get_err(owner: bigint): ChannelMonitorUpdateErr {
+export function C2Tuple_TxidBlockHashZ_get_b(owner: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NoneChannelMonitorUpdateErrZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_C2Tuple_TxidBlockHashZ_get_b(owner);
        return nativeResponseValue;
 }
 /* @internal */
@@ -2434,19 +2935,19 @@ export function LDKMonitorEvent_CommitmentTxConfirmed_get_commitment_tx_confirme
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKMonitorEvent_UpdateCompleted_get_funding_txo(ptr: bigint): bigint {
+export function LDKMonitorEvent_Completed_get_funding_txo(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKMonitorEvent_UpdateCompleted_get_funding_txo(ptr);
+       const nativeResponseValue = wasm.TS_LDKMonitorEvent_Completed_get_funding_txo(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKMonitorEvent_UpdateCompleted_get_monitor_update_id(ptr: bigint): bigint {
+export function LDKMonitorEvent_Completed_get_monitor_update_id(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKMonitorEvent_UpdateCompleted_get_monitor_update_id(ptr);
+       const nativeResponseValue = wasm.TS_LDKMonitorEvent_Completed_get_monitor_update_id(ptr);
        return nativeResponseValue;
 }
 /* @internal */
@@ -2483,26 +2984,6 @@ export function C3Tuple_OutPointCVec_MonitorEventZPublicKeyZ_get_c(owner: bigint
        }
        const nativeResponseValue = wasm.TS_C3Tuple_OutPointCVec_MonitorEventZPublicKeyZ_get_c(owner);
        return nativeResponseValue;
-}
-/* @internal */
-export class LDKCOption_C2Tuple_usizeTransactionZZ {
-       protected constructor() {}
-}
-/* @internal */
-export function LDKCOption_C2Tuple_usizeTransactionZZ_ty_from_ptr(ptr: bigint): number {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_LDKCOption_C2Tuple_usizeTransactionZZ_ty_from_ptr(ptr);
-       return nativeResponseValue;
-}
-/* @internal */
-export function LDKCOption_C2Tuple_usizeTransactionZZ_Some_get_some(ptr: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_LDKCOption_C2Tuple_usizeTransactionZZ_Some_get_some(ptr);
-       return nativeResponseValue;
 }
        // struct LDKFixedPenaltyScorer CResult_FixedPenaltyScorerDecodeErrorZ_get_ok(LDKCResult_FixedPenaltyScorerDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
@@ -2559,6 +3040,62 @@ export function LDKCOption_C2Tuple_u64u64ZZ_Some_get_some(ptr: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_LDKCOption_C2Tuple_u64u64ZZ_Some_get_some(ptr);
        return nativeResponseValue;
+}
+       // struct LDKEightU16s C2Tuple_Z_get_a(LDKC2Tuple_Z *NONNULL_PTR owner);
+/* @internal */
+export function C2Tuple_Z_get_a(owner: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_Z_get_a(owner);
+       return nativeResponseValue;
+}
+       // struct LDKEightU16s C2Tuple_Z_get_b(LDKC2Tuple_Z *NONNULL_PTR owner);
+/* @internal */
+export function C2Tuple_Z_get_b(owner: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_Z_get_b(owner);
+       return nativeResponseValue;
+}
+       // struct LDKEightU16s C2Tuple__u168_u168Z_get_a(LDKC2Tuple__u168_u168Z *NONNULL_PTR owner);
+/* @internal */
+export function C2Tuple__u168_u168Z_get_a(owner: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple__u168_u168Z_get_a(owner);
+       return nativeResponseValue;
+}
+       // struct LDKEightU16s C2Tuple__u168_u168Z_get_b(LDKC2Tuple__u168_u168Z *NONNULL_PTR owner);
+/* @internal */
+export function C2Tuple__u168_u168Z_get_b(owner: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple__u168_u168Z_get_b(owner);
+       return nativeResponseValue;
+}
+/* @internal */
+export class LDKCOption_C2Tuple_EightU16sEightU16sZZ {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKCOption_C2Tuple_EightU16sEightU16sZZ_ty_from_ptr(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKCOption_C2Tuple_EightU16sEightU16sZZ_ty_from_ptr(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKCOption_C2Tuple_EightU16sEightU16sZZ_Some_get_some(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKCOption_C2Tuple_EightU16sEightU16sZZ_Some_get_some(ptr);
+       return nativeResponseValue;
 }
 /* @internal */
 export interface LDKLogger {
@@ -2566,7 +3103,7 @@ export interface LDKLogger {
 }
 
 /* @internal */
-export function LDKLogger_new(impl: LDKLogger): bigint {
+export function LDKLogger_new(impl: LDKLogger): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -2575,7 +3112,7 @@ export function LDKLogger_new(impl: LDKLogger): bigint {
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKLogger_new(i);
+       return [wasm.TS_LDKLogger_new(i), i];
 }
        // struct LDKProbabilisticScorer CResult_ProbabilisticScorerDecodeErrorZ_get_ok(LDKCResult_ProbabilisticScorerDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
@@ -2666,6 +3203,24 @@ export function CResult_InvoiceFeaturesDecodeErrorZ_get_err(owner: bigint): bigi
        }
        const nativeResponseValue = wasm.TS_CResult_InvoiceFeaturesDecodeErrorZ_get_err(owner);
        return nativeResponseValue;
+}
+       // struct LDKBlindedHopFeatures CResult_BlindedHopFeaturesDecodeErrorZ_get_ok(LDKCResult_BlindedHopFeaturesDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_BlindedHopFeaturesDecodeErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedHopFeaturesDecodeErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError CResult_BlindedHopFeaturesDecodeErrorZ_get_err(LDKCResult_BlindedHopFeaturesDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_BlindedHopFeaturesDecodeErrorZ_get_err(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedHopFeaturesDecodeErrorZ_get_err(owner);
+       return nativeResponseValue;
 }
        // struct LDKChannelTypeFeatures CResult_ChannelTypeFeaturesDecodeErrorZ_get_ok(LDKCResult_ChannelTypeFeaturesDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
@@ -2720,14 +3275,60 @@ export function CResult_COption_NetworkUpdateZDecodeErrorZ_get_err(owner: bigint
        }
        const nativeResponseValue = wasm.TS_CResult_COption_NetworkUpdateZDecodeErrorZ_get_err(owner);
        return nativeResponseValue;
+}
+       // struct LDKTxOut CResult_TxOutUtxoLookupErrorZ_get_ok(LDKCResult_TxOutUtxoLookupErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_TxOutUtxoLookupErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_TxOutUtxoLookupErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // enum LDKUtxoLookupError CResult_TxOutUtxoLookupErrorZ_get_err(LDKCResult_TxOutUtxoLookupErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_TxOutUtxoLookupErrorZ_get_err(owner: bigint): UtxoLookupError {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_TxOutUtxoLookupErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+/* @internal */
+export class LDKUtxoResult {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKUtxoResult_ty_from_ptr(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKUtxoResult_ty_from_ptr(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKUtxoResult_Sync_get_sync(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKUtxoResult_Sync_get_sync(ptr);
+       return nativeResponseValue;
 }
 /* @internal */
-export interface LDKAccess {
+export function LDKUtxoResult_Async_get_async(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKUtxoResult_Async_get_async(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export interface LDKUtxoLookup {
        get_utxo (genesis_hash: number, short_channel_id: bigint): bigint;
 }
 
 /* @internal */
-export function LDKAccess_new(impl: LDKAccess): bigint {
+export function LDKUtxoLookup_new(impl: LDKUtxoLookup): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -2736,35 +3337,35 @@ export function LDKAccess_new(impl: LDKAccess): bigint {
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKAccess_new(i);
+       return [wasm.TS_LDKUtxoLookup_new(i), i];
 }
-       // LDKCResult_TxOutAccessErrorZ Access_get_utxo LDKAccess *NONNULL_PTR this_arg, const uint8_t (*genesis_hash)[32], uint64_t short_channel_id
+       // LDKUtxoResult UtxoLookup_get_utxo LDKUtxoLookup *NONNULL_PTR this_arg, const uint8_t (*genesis_hash)[32], uint64_t short_channel_id
 /* @internal */
-export function Access_get_utxo(this_arg: bigint, genesis_hash: number, short_channel_id: bigint): bigint {
+export function UtxoLookup_get_utxo(this_arg: bigint, genesis_hash: number, short_channel_id: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Access_get_utxo(this_arg, genesis_hash, short_channel_id);
+       const nativeResponseValue = wasm.TS_UtxoLookup_get_utxo(this_arg, genesis_hash, short_channel_id);
        return nativeResponseValue;
 }
 /* @internal */
-export class LDKCOption_AccessZ {
+export class LDKCOption_UtxoLookupZ {
        protected constructor() {}
 }
 /* @internal */
-export function LDKCOption_AccessZ_ty_from_ptr(ptr: bigint): number {
+export function LDKCOption_UtxoLookupZ_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKCOption_AccessZ_ty_from_ptr(ptr);
+       const nativeResponseValue = wasm.TS_LDKCOption_UtxoLookupZ_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKCOption_AccessZ_Some_get_some(ptr: bigint): bigint {
+export function LDKCOption_UtxoLookupZ_Some_get_some(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKCOption_AccessZ_Some_get_some(ptr);
+       const nativeResponseValue = wasm.TS_LDKCOption_UtxoLookupZ_Some_get_some(ptr);
        return nativeResponseValue;
 }
        // bool CResult_boolLightningErrorZ_get_ok(LDKCResult_boolLightningErrorZ *NONNULL_PTR owner);
@@ -2811,6 +3412,26 @@ export function C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(own
        }
        const nativeResponseValue = wasm.TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(owner);
        return nativeResponseValue;
+}
+/* @internal */
+export class LDKCOption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKCOption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_ty_from_ptr(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKCOption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_ty_from_ptr(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKCOption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_Some_get_some(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKCOption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_Some_get_some(ptr);
+       return nativeResponseValue;
 }
        // void CResult_NoneLightningErrorZ_get_ok(LDKCResult_NoneLightningErrorZ *NONNULL_PTR owner);
 /* @internal */
@@ -3184,79 +3805,91 @@ export function CResult_SignatureNoneZ_get_err(owner: bigint): void {
        const nativeResponseValue = wasm.TS_CResult_SignatureNoneZ_get_err(owner);
        // debug statements here
 }
-       // struct LDKSignature C2Tuple_SignatureSignatureZ_get_a(LDKC2Tuple_SignatureSignatureZ *NONNULL_PTR owner);
+       // struct LDKPublicKey CResult_PublicKeyNoneZ_get_ok(LDKCResult_PublicKeyNoneZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_PublicKeyNoneZ_get_ok(owner: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PublicKeyNoneZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // void CResult_PublicKeyNoneZ_get_err(LDKCResult_PublicKeyNoneZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_PublicKeyNoneZ_get_err(owner: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PublicKeyNoneZ_get_err(owner);
+       // debug statements here
+}
 /* @internal */
-export function C2Tuple_SignatureSignatureZ_get_a(owner: bigint): number {
+export class LDKCOption_ScalarZ {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKCOption_ScalarZ_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_SignatureSignatureZ_get_a(owner);
+       const nativeResponseValue = wasm.TS_LDKCOption_ScalarZ_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
-       // struct LDKSignature C2Tuple_SignatureSignatureZ_get_b(LDKC2Tuple_SignatureSignatureZ *NONNULL_PTR owner);
 /* @internal */
-export function C2Tuple_SignatureSignatureZ_get_b(owner: bigint): number {
+export function LDKCOption_ScalarZ_Some_get_some(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_SignatureSignatureZ_get_b(owner);
+       const nativeResponseValue = wasm.TS_LDKCOption_ScalarZ_Some_get_some(ptr);
        return nativeResponseValue;
 }
-       // struct LDKC2Tuple_SignatureSignatureZ CResult_C2Tuple_SignatureSignatureZNoneZ_get_ok(LDKCResult_C2Tuple_SignatureSignatureZNoneZ *NONNULL_PTR owner);
+       // struct LDKThirtyTwoBytes CResult_SharedSecretNoneZ_get_ok(LDKCResult_SharedSecretNoneZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_C2Tuple_SignatureSignatureZNoneZ_get_ok(owner: bigint): bigint {
+export function CResult_SharedSecretNoneZ_get_ok(owner: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_C2Tuple_SignatureSignatureZNoneZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_CResult_SharedSecretNoneZ_get_ok(owner);
        return nativeResponseValue;
 }
-       // void CResult_C2Tuple_SignatureSignatureZNoneZ_get_err(LDKCResult_C2Tuple_SignatureSignatureZNoneZ *NONNULL_PTR owner);
+       // void CResult_SharedSecretNoneZ_get_err(LDKCResult_SharedSecretNoneZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_C2Tuple_SignatureSignatureZNoneZ_get_err(owner: bigint): void {
+export function CResult_SharedSecretNoneZ_get_err(owner: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_C2Tuple_SignatureSignatureZNoneZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_CResult_SharedSecretNoneZ_get_err(owner);
        // debug statements here
 }
-       // struct LDKSecretKey CResult_SecretKeyNoneZ_get_ok(LDKCResult_SecretKeyNoneZ *NONNULL_PTR owner);
+       // struct LDKRecoverableSignature CResult_RecoverableSignatureNoneZ_get_ok(LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_SecretKeyNoneZ_get_ok(owner: bigint): number {
+export function CResult_RecoverableSignatureNoneZ_get_ok(owner: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SecretKeyNoneZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_get_ok(owner);
        return nativeResponseValue;
 }
-       // void CResult_SecretKeyNoneZ_get_err(LDKCResult_SecretKeyNoneZ *NONNULL_PTR owner);
+       // void CResult_RecoverableSignatureNoneZ_get_err(LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_SecretKeyNoneZ_get_err(owner: bigint): void {
+export function CResult_RecoverableSignatureNoneZ_get_err(owner: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SecretKeyNoneZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_get_err(owner);
        // debug statements here
 }
 /* @internal */
-export interface LDKBaseSign {
+export interface LDKChannelSigner {
        get_per_commitment_point (idx: bigint): number;
        release_commitment_secret (idx: bigint): number;
        validate_holder_commitment (holder_tx: bigint, preimages: number): bigint;
        channel_keys_id (): number;
-       sign_counterparty_commitment (commitment_tx: bigint, preimages: number): bigint;
-       validate_counterparty_revocation (idx: bigint, secret: number): bigint;
-       sign_holder_commitment_and_htlcs (commitment_tx: bigint): bigint;
-       sign_justice_revoked_output (justice_tx: number, input: number, amount: bigint, per_commitment_key: number): bigint;
-       sign_justice_revoked_htlc (justice_tx: number, input: number, amount: bigint, per_commitment_key: number, htlc: bigint): bigint;
-       sign_counterparty_htlc_transaction (htlc_tx: number, input: number, amount: bigint, per_commitment_point: number, htlc: bigint): bigint;
-       sign_closing_transaction (closing_tx: bigint): bigint;
-       sign_channel_announcement (msg: bigint): bigint;
-       ready_channel (channel_parameters: bigint): void;
+       provide_channel_parameters (channel_parameters: bigint): void;
 }
 
 /* @internal */
-export function LDKBaseSign_new(impl: LDKBaseSign, pubkeys: bigint): bigint {
+export function LDKChannelSigner_new(impl: LDKChannelSigner, pubkeys: bigint): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -3265,141 +3898,175 @@ export function LDKBaseSign_new(impl: LDKBaseSign, pubkeys: bigint): bigint {
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKBaseSign_new(i);
+       return [wasm.TS_LDKChannelSigner_new(i, pubkeys), i];
 }
-       // LDKPublicKey BaseSign_get_per_commitment_point LDKBaseSign *NONNULL_PTR this_arg, uint64_t idx
+       // LDKPublicKey ChannelSigner_get_per_commitment_point LDKChannelSigner *NONNULL_PTR this_arg, uint64_t idx
 /* @internal */
-export function BaseSign_get_per_commitment_point(this_arg: bigint, idx: bigint): number {
+export function ChannelSigner_get_per_commitment_point(this_arg: bigint, idx: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_BaseSign_get_per_commitment_point(this_arg, idx);
+       const nativeResponseValue = wasm.TS_ChannelSigner_get_per_commitment_point(this_arg, idx);
        return nativeResponseValue;
 }
-       // LDKThirtyTwoBytes BaseSign_release_commitment_secret LDKBaseSign *NONNULL_PTR this_arg, uint64_t idx
+       // LDKThirtyTwoBytes ChannelSigner_release_commitment_secret LDKChannelSigner *NONNULL_PTR this_arg, uint64_t idx
 /* @internal */
-export function BaseSign_release_commitment_secret(this_arg: bigint, idx: bigint): number {
+export function ChannelSigner_release_commitment_secret(this_arg: bigint, idx: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_BaseSign_release_commitment_secret(this_arg, idx);
+       const nativeResponseValue = wasm.TS_ChannelSigner_release_commitment_secret(this_arg, idx);
        return nativeResponseValue;
 }
-       // LDKCResult_NoneNoneZ BaseSign_validate_holder_commitment LDKBaseSign *NONNULL_PTR this_arg, const struct LDKHolderCommitmentTransaction *NONNULL_PTR holder_tx, struct LDKCVec_PaymentPreimageZ preimages
+       // LDKCResult_NoneNoneZ ChannelSigner_validate_holder_commitment LDKChannelSigner *NONNULL_PTR this_arg, const struct LDKHolderCommitmentTransaction *NONNULL_PTR holder_tx, struct LDKCVec_PaymentPreimageZ preimages
 /* @internal */
-export function BaseSign_validate_holder_commitment(this_arg: bigint, holder_tx: bigint, preimages: number): bigint {
+export function ChannelSigner_validate_holder_commitment(this_arg: bigint, holder_tx: bigint, preimages: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_BaseSign_validate_holder_commitment(this_arg, holder_tx, preimages);
+       const nativeResponseValue = wasm.TS_ChannelSigner_validate_holder_commitment(this_arg, holder_tx, preimages);
        return nativeResponseValue;
 }
-       // LDKThirtyTwoBytes BaseSign_channel_keys_id LDKBaseSign *NONNULL_PTR this_arg
+       // LDKThirtyTwoBytes ChannelSigner_channel_keys_id LDKChannelSigner *NONNULL_PTR this_arg
 /* @internal */
-export function BaseSign_channel_keys_id(this_arg: bigint): number {
+export function ChannelSigner_channel_keys_id(this_arg: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_BaseSign_channel_keys_id(this_arg);
+       const nativeResponseValue = wasm.TS_ChannelSigner_channel_keys_id(this_arg);
        return nativeResponseValue;
 }
-       // LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ BaseSign_sign_counterparty_commitment LDKBaseSign *NONNULL_PTR this_arg, const struct LDKCommitmentTransaction *NONNULL_PTR commitment_tx, struct LDKCVec_PaymentPreimageZ preimages
+       // void ChannelSigner_provide_channel_parameters LDKChannelSigner *NONNULL_PTR this_arg, const struct LDKChannelTransactionParameters *NONNULL_PTR channel_parameters
+/* @internal */
+export function ChannelSigner_provide_channel_parameters(this_arg: bigint, channel_parameters: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelSigner_provide_channel_parameters(this_arg, channel_parameters);
+       // debug statements here
+}
+       // LDKChannelPublicKeys ChannelSigner_get_pubkeys LDKChannelSigner *NONNULL_PTR this_arg
 /* @internal */
-export function BaseSign_sign_counterparty_commitment(this_arg: bigint, commitment_tx: bigint, preimages: number): bigint {
+export function ChannelSigner_get_pubkeys(this_arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_BaseSign_sign_counterparty_commitment(this_arg, commitment_tx, preimages);
+       const nativeResponseValue = wasm.TS_ChannelSigner_get_pubkeys(this_arg);
        return nativeResponseValue;
 }
-       // LDKCResult_NoneNoneZ BaseSign_validate_counterparty_revocation LDKBaseSign *NONNULL_PTR this_arg, uint64_t idx, const uint8_t (*secret)[32]
 /* @internal */
-export function BaseSign_validate_counterparty_revocation(this_arg: bigint, idx: bigint, secret: number): bigint {
+export interface LDKEcdsaChannelSigner {
+       sign_counterparty_commitment (commitment_tx: bigint, preimages: number): bigint;
+       validate_counterparty_revocation (idx: bigint, secret: number): bigint;
+       sign_holder_commitment_and_htlcs (commitment_tx: bigint): bigint;
+       sign_justice_revoked_output (justice_tx: number, input: number, amount: bigint, per_commitment_key: number): bigint;
+       sign_justice_revoked_htlc (justice_tx: number, input: number, amount: bigint, per_commitment_key: number, htlc: bigint): bigint;
+       sign_counterparty_htlc_transaction (htlc_tx: number, input: number, amount: bigint, per_commitment_point: number, htlc: bigint): bigint;
+       sign_closing_transaction (closing_tx: bigint): bigint;
+       sign_holder_anchor_input (anchor_tx: number, input: number): bigint;
+       sign_channel_announcement_with_funding_key (msg: bigint): bigint;
+}
+
+/* @internal */
+export function LDKEcdsaChannelSigner_new(impl: LDKEcdsaChannelSigner, ChannelSigner: number, pubkeys: bigint): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_BaseSign_validate_counterparty_revocation(this_arg, idx, secret);
+       var new_obj_idx = js_objs.length;
+       for (var i = 0; i < js_objs.length; i++) {
+               if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
+       }
+       js_objs[i] = new WeakRef(impl);
+       return [wasm.TS_LDKEcdsaChannelSigner_new(i, ChannelSigner, pubkeys), i];
+}
+       // LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ EcdsaChannelSigner_sign_counterparty_commitment LDKEcdsaChannelSigner *NONNULL_PTR this_arg, const struct LDKCommitmentTransaction *NONNULL_PTR commitment_tx, struct LDKCVec_PaymentPreimageZ preimages
+/* @internal */
+export function EcdsaChannelSigner_sign_counterparty_commitment(this_arg: bigint, commitment_tx: bigint, preimages: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_EcdsaChannelSigner_sign_counterparty_commitment(this_arg, commitment_tx, preimages);
        return nativeResponseValue;
 }
-       // LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ BaseSign_sign_holder_commitment_and_htlcs LDKBaseSign *NONNULL_PTR this_arg, const struct LDKHolderCommitmentTransaction *NONNULL_PTR commitment_tx
+       // LDKCResult_NoneNoneZ EcdsaChannelSigner_validate_counterparty_revocation LDKEcdsaChannelSigner *NONNULL_PTR this_arg, uint64_t idx, const uint8_t (*secret)[32]
 /* @internal */
-export function BaseSign_sign_holder_commitment_and_htlcs(this_arg: bigint, commitment_tx: bigint): bigint {
+export function EcdsaChannelSigner_validate_counterparty_revocation(this_arg: bigint, idx: bigint, secret: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_BaseSign_sign_holder_commitment_and_htlcs(this_arg, commitment_tx);
+       const nativeResponseValue = wasm.TS_EcdsaChannelSigner_validate_counterparty_revocation(this_arg, idx, secret);
        return nativeResponseValue;
 }
-       // LDKCResult_SignatureNoneZ BaseSign_sign_justice_revoked_output LDKBaseSign *NONNULL_PTR this_arg, struct LDKTransaction justice_tx, uintptr_t input, uint64_t amount, const uint8_t (*per_commitment_key)[32]
+       // LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ EcdsaChannelSigner_sign_holder_commitment_and_htlcs LDKEcdsaChannelSigner *NONNULL_PTR this_arg, const struct LDKHolderCommitmentTransaction *NONNULL_PTR commitment_tx
 /* @internal */
-export function BaseSign_sign_justice_revoked_output(this_arg: bigint, justice_tx: number, input: number, amount: bigint, per_commitment_key: number): bigint {
+export function EcdsaChannelSigner_sign_holder_commitment_and_htlcs(this_arg: bigint, commitment_tx: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_BaseSign_sign_justice_revoked_output(this_arg, justice_tx, input, amount, per_commitment_key);
+       const nativeResponseValue = wasm.TS_EcdsaChannelSigner_sign_holder_commitment_and_htlcs(this_arg, commitment_tx);
        return nativeResponseValue;
 }
-       // LDKCResult_SignatureNoneZ BaseSign_sign_justice_revoked_htlc LDKBaseSign *NONNULL_PTR this_arg, struct LDKTransaction justice_tx, uintptr_t input, uint64_t amount, const uint8_t (*per_commitment_key)[32], const struct LDKHTLCOutputInCommitment *NONNULL_PTR htlc
+       // LDKCResult_SignatureNoneZ EcdsaChannelSigner_sign_justice_revoked_output LDKEcdsaChannelSigner *NONNULL_PTR this_arg, struct LDKTransaction justice_tx, uintptr_t input, uint64_t amount, const uint8_t (*per_commitment_key)[32]
 /* @internal */
-export function BaseSign_sign_justice_revoked_htlc(this_arg: bigint, justice_tx: number, input: number, amount: bigint, per_commitment_key: number, htlc: bigint): bigint {
+export function EcdsaChannelSigner_sign_justice_revoked_output(this_arg: bigint, justice_tx: number, input: number, amount: bigint, per_commitment_key: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_BaseSign_sign_justice_revoked_htlc(this_arg, justice_tx, input, amount, per_commitment_key, htlc);
+       const nativeResponseValue = wasm.TS_EcdsaChannelSigner_sign_justice_revoked_output(this_arg, justice_tx, input, amount, per_commitment_key);
        return nativeResponseValue;
 }
-       // LDKCResult_SignatureNoneZ BaseSign_sign_counterparty_htlc_transaction LDKBaseSign *NONNULL_PTR this_arg, struct LDKTransaction htlc_tx, uintptr_t input, uint64_t amount, struct LDKPublicKey per_commitment_point, const struct LDKHTLCOutputInCommitment *NONNULL_PTR htlc
+       // LDKCResult_SignatureNoneZ EcdsaChannelSigner_sign_justice_revoked_htlc LDKEcdsaChannelSigner *NONNULL_PTR this_arg, struct LDKTransaction justice_tx, uintptr_t input, uint64_t amount, const uint8_t (*per_commitment_key)[32], const struct LDKHTLCOutputInCommitment *NONNULL_PTR htlc
 /* @internal */
-export function BaseSign_sign_counterparty_htlc_transaction(this_arg: bigint, htlc_tx: number, input: number, amount: bigint, per_commitment_point: number, htlc: bigint): bigint {
+export function EcdsaChannelSigner_sign_justice_revoked_htlc(this_arg: bigint, justice_tx: number, input: number, amount: bigint, per_commitment_key: number, htlc: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_BaseSign_sign_counterparty_htlc_transaction(this_arg, htlc_tx, input, amount, per_commitment_point, htlc);
+       const nativeResponseValue = wasm.TS_EcdsaChannelSigner_sign_justice_revoked_htlc(this_arg, justice_tx, input, amount, per_commitment_key, htlc);
        return nativeResponseValue;
 }
-       // LDKCResult_SignatureNoneZ BaseSign_sign_closing_transaction LDKBaseSign *NONNULL_PTR this_arg, const struct LDKClosingTransaction *NONNULL_PTR closing_tx
+       // LDKCResult_SignatureNoneZ EcdsaChannelSigner_sign_counterparty_htlc_transaction LDKEcdsaChannelSigner *NONNULL_PTR this_arg, struct LDKTransaction htlc_tx, uintptr_t input, uint64_t amount, struct LDKPublicKey per_commitment_point, const struct LDKHTLCOutputInCommitment *NONNULL_PTR htlc
 /* @internal */
-export function BaseSign_sign_closing_transaction(this_arg: bigint, closing_tx: bigint): bigint {
+export function EcdsaChannelSigner_sign_counterparty_htlc_transaction(this_arg: bigint, htlc_tx: number, input: number, amount: bigint, per_commitment_point: number, htlc: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_BaseSign_sign_closing_transaction(this_arg, closing_tx);
+       const nativeResponseValue = wasm.TS_EcdsaChannelSigner_sign_counterparty_htlc_transaction(this_arg, htlc_tx, input, amount, per_commitment_point, htlc);
        return nativeResponseValue;
 }
-       // LDKCResult_C2Tuple_SignatureSignatureZNoneZ BaseSign_sign_channel_announcement LDKBaseSign *NONNULL_PTR this_arg, const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR msg
+       // LDKCResult_SignatureNoneZ EcdsaChannelSigner_sign_closing_transaction LDKEcdsaChannelSigner *NONNULL_PTR this_arg, const struct LDKClosingTransaction *NONNULL_PTR closing_tx
 /* @internal */
-export function BaseSign_sign_channel_announcement(this_arg: bigint, msg: bigint): bigint {
+export function EcdsaChannelSigner_sign_closing_transaction(this_arg: bigint, closing_tx: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_BaseSign_sign_channel_announcement(this_arg, msg);
+       const nativeResponseValue = wasm.TS_EcdsaChannelSigner_sign_closing_transaction(this_arg, closing_tx);
        return nativeResponseValue;
 }
-       // void BaseSign_ready_channel LDKBaseSign *NONNULL_PTR this_arg, const struct LDKChannelTransactionParameters *NONNULL_PTR channel_parameters
+       // LDKCResult_SignatureNoneZ EcdsaChannelSigner_sign_holder_anchor_input LDKEcdsaChannelSigner *NONNULL_PTR this_arg, struct LDKTransaction anchor_tx, uintptr_t input
 /* @internal */
-export function BaseSign_ready_channel(this_arg: bigint, channel_parameters: bigint): void {
+export function EcdsaChannelSigner_sign_holder_anchor_input(this_arg: bigint, anchor_tx: number, input: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_BaseSign_ready_channel(this_arg, channel_parameters);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_EcdsaChannelSigner_sign_holder_anchor_input(this_arg, anchor_tx, input);
+       return nativeResponseValue;
 }
-       // LDKChannelPublicKeys BaseSign_get_pubkeys LDKBaseSign *NONNULL_PTR this_arg
+       // LDKCResult_SignatureNoneZ EcdsaChannelSigner_sign_channel_announcement_with_funding_key LDKEcdsaChannelSigner *NONNULL_PTR this_arg, const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR msg
 /* @internal */
-export function BaseSign_get_pubkeys(this_arg: bigint): bigint {
+export function EcdsaChannelSigner_sign_channel_announcement_with_funding_key(this_arg: bigint, msg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_BaseSign_get_pubkeys(this_arg);
+       const nativeResponseValue = wasm.TS_EcdsaChannelSigner_sign_channel_announcement_with_funding_key(this_arg, msg);
        return nativeResponseValue;
 }
 /* @internal */
-export interface LDKSign {
+export interface LDKWriteableEcdsaChannelSigner {
        write (): number;
 }
 
 /* @internal */
-export function LDKSign_new(impl: LDKSign, BaseSign: LDKBaseSign, pubkeys: bigint): bigint {
+export function LDKWriteableEcdsaChannelSigner_new(impl: LDKWriteableEcdsaChannelSigner, EcdsaChannelSigner: number, ChannelSigner: number, pubkeys: bigint): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -3408,52 +4075,34 @@ export function LDKSign_new(impl: LDKSign, BaseSign: LDKBaseSign, pubkeys: bigin
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKSign_new(i);
-}
-       // LDKCVec_u8Z Sign_write LDKSign *NONNULL_PTR this_arg
-/* @internal */
-export function Sign_write(this_arg: bigint): number {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_Sign_write(this_arg);
-       return nativeResponseValue;
+       return [wasm.TS_LDKWriteableEcdsaChannelSigner_new(i, EcdsaChannelSigner, ChannelSigner, pubkeys), i];
 }
-       // struct LDKSign CResult_SignDecodeErrorZ_get_ok(LDKCResult_SignDecodeErrorZ *NONNULL_PTR owner);
+       // LDKCVec_u8Z WriteableEcdsaChannelSigner_write LDKWriteableEcdsaChannelSigner *NONNULL_PTR this_arg
 /* @internal */
-export function CResult_SignDecodeErrorZ_get_ok(owner: bigint): bigint {
+export function WriteableEcdsaChannelSigner_write(this_arg: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SignDecodeErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_WriteableEcdsaChannelSigner_write(this_arg);
        return nativeResponseValue;
 }
-       // struct LDKDecodeError CResult_SignDecodeErrorZ_get_err(LDKCResult_SignDecodeErrorZ *NONNULL_PTR owner);
+       // struct LDKWriteableEcdsaChannelSigner CResult_WriteableEcdsaChannelSignerDecodeErrorZ_get_ok(LDKCResult_WriteableEcdsaChannelSignerDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_SignDecodeErrorZ_get_err(owner: bigint): bigint {
+export function CResult_WriteableEcdsaChannelSignerDecodeErrorZ_get_ok(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SignDecodeErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_CResult_WriteableEcdsaChannelSignerDecodeErrorZ_get_ok(owner);
        return nativeResponseValue;
 }
-       // struct LDKRecoverableSignature CResult_RecoverableSignatureNoneZ_get_ok(LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR owner);
+       // struct LDKDecodeError CResult_WriteableEcdsaChannelSignerDecodeErrorZ_get_err(LDKCResult_WriteableEcdsaChannelSignerDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_RecoverableSignatureNoneZ_get_ok(owner: bigint): number {
+export function CResult_WriteableEcdsaChannelSignerDecodeErrorZ_get_err(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_CResult_WriteableEcdsaChannelSignerDecodeErrorZ_get_err(owner);
        return nativeResponseValue;
-}
-       // void CResult_RecoverableSignatureNoneZ_get_err(LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR owner);
-/* @internal */
-export function CResult_RecoverableSignatureNoneZ_get_err(owner: bigint): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_get_err(owner);
-       // debug statements here
 }
        // struct LDKCVec_CVec_u8ZZ CResult_CVec_CVec_u8ZZNoneZ_get_ok(LDKCResult_CVec_CVec_u8ZZNoneZ *NONNULL_PTR owner);
 /* @internal */
@@ -3529,196 +4178,198 @@ export function LDKCOption_u16Z_Some_get_some(ptr: bigint): number {
        const nativeResponseValue = wasm.TS_LDKCOption_u16Z_Some_get_some(ptr);
        return nativeResponseValue;
 }
+       // struct LDKThirtyTwoBytes CResult__u832APIErrorZ_get_ok(LDKCResult__u832APIErrorZ *NONNULL_PTR owner);
 /* @internal */
-export class LDKAPIError {
-       protected constructor() {}
-}
-/* @internal */
-export function LDKAPIError_ty_from_ptr(ptr: bigint): number {
+export function CResult__u832APIErrorZ_get_ok(owner: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKAPIError_ty_from_ptr(ptr);
+       const nativeResponseValue = wasm.TS_CResult__u832APIErrorZ_get_ok(owner);
        return nativeResponseValue;
 }
+       // struct LDKAPIError CResult__u832APIErrorZ_get_err(LDKCResult__u832APIErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function LDKAPIError_APIMisuseError_get_err(ptr: bigint): number {
+export function CResult__u832APIErrorZ_get_err(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKAPIError_APIMisuseError_get_err(ptr);
+       const nativeResponseValue = wasm.TS_CResult__u832APIErrorZ_get_err(owner);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKAPIError_FeeRateTooHigh_get_err(ptr: bigint): number {
+export class LDKRecentPaymentDetails {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKRecentPaymentDetails_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKAPIError_FeeRateTooHigh_get_err(ptr);
+       const nativeResponseValue = wasm.TS_LDKRecentPaymentDetails_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKAPIError_FeeRateTooHigh_get_feerate(ptr: bigint): number {
+export function LDKRecentPaymentDetails_Pending_get_payment_hash(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKAPIError_FeeRateTooHigh_get_feerate(ptr);
+       const nativeResponseValue = wasm.TS_LDKRecentPaymentDetails_Pending_get_payment_hash(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKAPIError_RouteError_get_err(ptr: bigint): number {
+export function LDKRecentPaymentDetails_Pending_get_total_msat(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKAPIError_RouteError_get_err(ptr);
+       const nativeResponseValue = wasm.TS_LDKRecentPaymentDetails_Pending_get_total_msat(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKAPIError_ChannelUnavailable_get_err(ptr: bigint): number {
+export function LDKRecentPaymentDetails_Fulfilled_get_payment_hash(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKAPIError_ChannelUnavailable_get_err(ptr);
+       const nativeResponseValue = wasm.TS_LDKRecentPaymentDetails_Fulfilled_get_payment_hash(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKAPIError_IncompatibleShutdownScript_get_script(ptr: bigint): bigint {
+export function LDKRecentPaymentDetails_Abandoned_get_payment_hash(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKAPIError_IncompatibleShutdownScript_get_script(ptr);
+       const nativeResponseValue = wasm.TS_LDKRecentPaymentDetails_Abandoned_get_payment_hash(ptr);
        return nativeResponseValue;
 }
-       // void CResult_NoneAPIErrorZ_get_ok(LDKCResult_NoneAPIErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_NoneAPIErrorZ_get_ok(owner: bigint): void {
+export class LDKPaymentSendFailure {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKPaymentSendFailure_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_get_ok(owner);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_LDKPaymentSendFailure_ty_from_ptr(ptr);
+       return nativeResponseValue;
 }
-       // struct LDKAPIError CResult_NoneAPIErrorZ_get_err(LDKCResult_NoneAPIErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_NoneAPIErrorZ_get_err(owner: bigint): bigint {
+export function LDKPaymentSendFailure_ParameterError_get_parameter_error(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_LDKPaymentSendFailure_ParameterError_get_parameter_error(ptr);
        return nativeResponseValue;
 }
-       // struct LDKThirtyTwoBytes CResult__u832APIErrorZ_get_ok(LDKCResult__u832APIErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult__u832APIErrorZ_get_ok(owner: bigint): number {
+export function LDKPaymentSendFailure_PathParameterError_get_path_parameter_error(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult__u832APIErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_LDKPaymentSendFailure_PathParameterError_get_path_parameter_error(ptr);
        return nativeResponseValue;
 }
-       // struct LDKAPIError CResult__u832APIErrorZ_get_err(LDKCResult__u832APIErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult__u832APIErrorZ_get_err(owner: bigint): bigint {
+export function LDKPaymentSendFailure_AllFailedResendSafe_get_all_failed_resend_safe(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult__u832APIErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_LDKPaymentSendFailure_AllFailedResendSafe_get_all_failed_resend_safe(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export class LDKPaymentSendFailure {
-       protected constructor() {}
-}
-/* @internal */
-export function LDKPaymentSendFailure_ty_from_ptr(ptr: bigint): number {
+export function LDKPaymentSendFailure_PartialFailure_get_results(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKPaymentSendFailure_ty_from_ptr(ptr);
+       const nativeResponseValue = wasm.TS_LDKPaymentSendFailure_PartialFailure_get_results(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKPaymentSendFailure_ParameterError_get_parameter_error(ptr: bigint): bigint {
+export function LDKPaymentSendFailure_PartialFailure_get_failed_paths_retry(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKPaymentSendFailure_ParameterError_get_parameter_error(ptr);
+       const nativeResponseValue = wasm.TS_LDKPaymentSendFailure_PartialFailure_get_failed_paths_retry(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKPaymentSendFailure_PathParameterError_get_path_parameter_error(ptr: bigint): number {
+export function LDKPaymentSendFailure_PartialFailure_get_payment_id(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKPaymentSendFailure_PathParameterError_get_path_parameter_error(ptr);
+       const nativeResponseValue = wasm.TS_LDKPaymentSendFailure_PartialFailure_get_payment_id(ptr);
        return nativeResponseValue;
 }
+       // void CResult_NonePaymentSendFailureZ_get_ok(LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR owner);
 /* @internal */
-export function LDKPaymentSendFailure_AllFailedRetrySafe_get_all_failed_retry_safe(ptr: bigint): number {
+export function CResult_NonePaymentSendFailureZ_get_ok(owner: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKPaymentSendFailure_AllFailedRetrySafe_get_all_failed_retry_safe(ptr);
-       return nativeResponseValue;
+       const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_get_ok(owner);
+       // debug statements here
 }
+       // struct LDKPaymentSendFailure CResult_NonePaymentSendFailureZ_get_err(LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR owner);
 /* @internal */
-export function LDKPaymentSendFailure_PartialFailure_get_results(ptr: bigint): number {
+export function CResult_NonePaymentSendFailureZ_get_err(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKPaymentSendFailure_PartialFailure_get_results(ptr);
+       const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_get_err(owner);
        return nativeResponseValue;
 }
+       // void CResult_NoneRetryableSendFailureZ_get_ok(LDKCResult_NoneRetryableSendFailureZ *NONNULL_PTR owner);
 /* @internal */
-export function LDKPaymentSendFailure_PartialFailure_get_failed_paths_retry(ptr: bigint): bigint {
+export function CResult_NoneRetryableSendFailureZ_get_ok(owner: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKPaymentSendFailure_PartialFailure_get_failed_paths_retry(ptr);
-       return nativeResponseValue;
+       const nativeResponseValue = wasm.TS_CResult_NoneRetryableSendFailureZ_get_ok(owner);
+       // debug statements here
 }
+       // enum LDKRetryableSendFailure CResult_NoneRetryableSendFailureZ_get_err(LDKCResult_NoneRetryableSendFailureZ *NONNULL_PTR owner);
 /* @internal */
-export function LDKPaymentSendFailure_PartialFailure_get_payment_id(ptr: bigint): number {
+export function CResult_NoneRetryableSendFailureZ_get_err(owner: bigint): RetryableSendFailure {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKPaymentSendFailure_PartialFailure_get_payment_id(ptr);
+       const nativeResponseValue = wasm.TS_CResult_NoneRetryableSendFailureZ_get_err(owner);
        return nativeResponseValue;
 }
-       // struct LDKThirtyTwoBytes CResult_PaymentIdPaymentSendFailureZ_get_ok(LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR owner);
+       // struct LDKThirtyTwoBytes CResult_PaymentHashPaymentSendFailureZ_get_ok(LDKCResult_PaymentHashPaymentSendFailureZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_PaymentIdPaymentSendFailureZ_get_ok(owner: bigint): number {
+export function CResult_PaymentHashPaymentSendFailureZ_get_ok(owner: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentSendFailureZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_CResult_PaymentHashPaymentSendFailureZ_get_ok(owner);
        return nativeResponseValue;
 }
-       // struct LDKPaymentSendFailure CResult_PaymentIdPaymentSendFailureZ_get_err(LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR owner);
+       // struct LDKPaymentSendFailure CResult_PaymentHashPaymentSendFailureZ_get_err(LDKCResult_PaymentHashPaymentSendFailureZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_PaymentIdPaymentSendFailureZ_get_err(owner: bigint): bigint {
+export function CResult_PaymentHashPaymentSendFailureZ_get_err(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentSendFailureZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_CResult_PaymentHashPaymentSendFailureZ_get_err(owner);
        return nativeResponseValue;
 }
-       // void CResult_NonePaymentSendFailureZ_get_ok(LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR owner);
+       // struct LDKThirtyTwoBytes CResult_PaymentHashRetryableSendFailureZ_get_ok(LDKCResult_PaymentHashRetryableSendFailureZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_NonePaymentSendFailureZ_get_ok(owner: bigint): void {
+export function CResult_PaymentHashRetryableSendFailureZ_get_ok(owner: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_get_ok(owner);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_CResult_PaymentHashRetryableSendFailureZ_get_ok(owner);
+       return nativeResponseValue;
 }
-       // struct LDKPaymentSendFailure CResult_NonePaymentSendFailureZ_get_err(LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR owner);
+       // enum LDKRetryableSendFailure CResult_PaymentHashRetryableSendFailureZ_get_err(LDKCResult_PaymentHashRetryableSendFailureZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_NonePaymentSendFailureZ_get_err(owner: bigint): bigint {
+export function CResult_PaymentHashRetryableSendFailureZ_get_err(owner: bigint): RetryableSendFailure {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_CResult_PaymentHashRetryableSendFailureZ_get_err(owner);
        return nativeResponseValue;
 }
        // struct LDKThirtyTwoBytes C2Tuple_PaymentHashPaymentIdZ_get_a(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR owner);
@@ -3939,13 +4590,13 @@ export function CResult_PhantomRouteHintsDecodeErrorZ_get_err(owner: bigint): bi
 }
 /* @internal */
 export interface LDKWatch {
-       watch_channel (funding_txo: bigint, monitor: bigint): bigint;
-       update_channel (funding_txo: bigint, update: bigint): bigint;
+       watch_channel (funding_txo: bigint, monitor: bigint): ChannelMonitorUpdateStatus;
+       update_channel (funding_txo: bigint, update: bigint): ChannelMonitorUpdateStatus;
        release_pending_monitor_events (): number;
 }
 
 /* @internal */
-export function LDKWatch_new(impl: LDKWatch): bigint {
+export function LDKWatch_new(impl: LDKWatch): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -3954,20 +4605,20 @@ export function LDKWatch_new(impl: LDKWatch): bigint {
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKWatch_new(i);
+       return [wasm.TS_LDKWatch_new(i), i];
 }
-       // LDKCResult_NoneChannelMonitorUpdateErrZ Watch_watch_channel LDKWatch *NONNULL_PTR this_arg, struct LDKOutPoint funding_txo, struct LDKChannelMonitor monitor
+       // LDKChannelMonitorUpdateStatus Watch_watch_channel LDKWatch *NONNULL_PTR this_arg, struct LDKOutPoint funding_txo, struct LDKChannelMonitor monitor
 /* @internal */
-export function Watch_watch_channel(this_arg: bigint, funding_txo: bigint, monitor: bigint): bigint {
+export function Watch_watch_channel(this_arg: bigint, funding_txo: bigint, monitor: bigint): ChannelMonitorUpdateStatus {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_Watch_watch_channel(this_arg, funding_txo, monitor);
        return nativeResponseValue;
 }
-       // LDKCResult_NoneChannelMonitorUpdateErrZ Watch_update_channel LDKWatch *NONNULL_PTR this_arg, struct LDKOutPoint funding_txo, struct LDKChannelMonitorUpdate update
+       // LDKChannelMonitorUpdateStatus Watch_update_channel LDKWatch *NONNULL_PTR this_arg, struct LDKOutPoint funding_txo, const struct LDKChannelMonitorUpdate *NONNULL_PTR update
 /* @internal */
-export function Watch_update_channel(this_arg: bigint, funding_txo: bigint, update: bigint): bigint {
+export function Watch_update_channel(this_arg: bigint, funding_txo: bigint, update: bigint): ChannelMonitorUpdateStatus {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -3989,7 +4640,7 @@ export interface LDKBroadcasterInterface {
 }
 
 /* @internal */
-export function LDKBroadcasterInterface_new(impl: LDKBroadcasterInterface): bigint {
+export function LDKBroadcasterInterface_new(impl: LDKBroadcasterInterface): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -3998,7 +4649,7 @@ export function LDKBroadcasterInterface_new(impl: LDKBroadcasterInterface): bigi
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKBroadcasterInterface_new(i);
+       return [wasm.TS_LDKBroadcasterInterface_new(i), i];
 }
        // void BroadcasterInterface_broadcast_transaction LDKBroadcasterInterface *NONNULL_PTR this_arg, struct LDKTransaction tx
 /* @internal */
@@ -4010,19 +4661,78 @@ export function BroadcasterInterface_broadcast_transaction(this_arg: bigint, tx:
        // debug statements here
 }
 /* @internal */
-export interface LDKKeysInterface {
-       get_node_secret (recipient: Recipient): bigint;
-       get_destination_script (): number;
-       get_shutdown_scriptpubkey (): bigint;
-       get_channel_signer (inbound: boolean, channel_value_satoshis: bigint): bigint;
+export interface LDKEntropySource {
        get_secure_random_bytes (): number;
-       read_chan_signer (reader: number): bigint;
-       sign_invoice (hrp_bytes: number, invoice_data: number, receipient: Recipient): bigint;
+}
+
+/* @internal */
+export function LDKEntropySource_new(impl: LDKEntropySource): [bigint, number] {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       var new_obj_idx = js_objs.length;
+       for (var i = 0; i < js_objs.length; i++) {
+               if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
+       }
+       js_objs[i] = new WeakRef(impl);
+       return [wasm.TS_LDKEntropySource_new(i), i];
+}
+       // LDKThirtyTwoBytes EntropySource_get_secure_random_bytes LDKEntropySource *NONNULL_PTR this_arg
+/* @internal */
+export function EntropySource_get_secure_random_bytes(this_arg: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_EntropySource_get_secure_random_bytes(this_arg);
+       return nativeResponseValue;
+}
+/* @internal */
+export class LDKUnsignedGossipMessage {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKUnsignedGossipMessage_ty_from_ptr(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKUnsignedGossipMessage_ty_from_ptr(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKUnsignedGossipMessage_ChannelAnnouncement_get_channel_announcement(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKUnsignedGossipMessage_ChannelAnnouncement_get_channel_announcement(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKUnsignedGossipMessage_ChannelUpdate_get_channel_update(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKUnsignedGossipMessage_ChannelUpdate_get_channel_update(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKUnsignedGossipMessage_NodeAnnouncement_get_node_announcement(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKUnsignedGossipMessage_NodeAnnouncement_get_node_announcement(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export interface LDKNodeSigner {
        get_inbound_payment_key_material (): number;
+       get_node_id (recipient: Recipient): bigint;
+       ecdh (recipient: Recipient, other_key: number, tweak: bigint): bigint;
+       sign_invoice (hrp_bytes: number, invoice_data: number, recipient: Recipient): bigint;
+       sign_gossip_message (msg: bigint): bigint;
 }
 
 /* @internal */
-export function LDKKeysInterface_new(impl: LDKKeysInterface): bigint {
+export function LDKNodeSigner_new(impl: LDKNodeSigner): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -4031,87 +4741,64 @@ export function LDKKeysInterface_new(impl: LDKKeysInterface): bigint {
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKKeysInterface_new(i);
+       return [wasm.TS_LDKNodeSigner_new(i), i];
 }
-       // LDKCResult_SecretKeyNoneZ KeysInterface_get_node_secret LDKKeysInterface *NONNULL_PTR this_arg, enum LDKRecipient recipient
+       // LDKThirtyTwoBytes NodeSigner_get_inbound_payment_key_material LDKNodeSigner *NONNULL_PTR this_arg
 /* @internal */
-export function KeysInterface_get_node_secret(this_arg: bigint, recipient: Recipient): bigint {
+export function NodeSigner_get_inbound_payment_key_material(this_arg: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_KeysInterface_get_node_secret(this_arg, recipient);
+       const nativeResponseValue = wasm.TS_NodeSigner_get_inbound_payment_key_material(this_arg);
        return nativeResponseValue;
 }
-       // LDKCVec_u8Z KeysInterface_get_destination_script LDKKeysInterface *NONNULL_PTR this_arg
+       // LDKCResult_PublicKeyNoneZ NodeSigner_get_node_id LDKNodeSigner *NONNULL_PTR this_arg, enum LDKRecipient recipient
 /* @internal */
-export function KeysInterface_get_destination_script(this_arg: bigint): number {
+export function NodeSigner_get_node_id(this_arg: bigint, recipient: Recipient): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_KeysInterface_get_destination_script(this_arg);
+       const nativeResponseValue = wasm.TS_NodeSigner_get_node_id(this_arg, recipient);
        return nativeResponseValue;
 }
-       // LDKShutdownScript KeysInterface_get_shutdown_scriptpubkey LDKKeysInterface *NONNULL_PTR this_arg
+       // LDKCResult_SharedSecretNoneZ NodeSigner_ecdh LDKNodeSigner *NONNULL_PTR this_arg, enum LDKRecipient recipient, struct LDKPublicKey other_key, struct LDKCOption_ScalarZ tweak
 /* @internal */
-export function KeysInterface_get_shutdown_scriptpubkey(this_arg: bigint): bigint {
+export function NodeSigner_ecdh(this_arg: bigint, recipient: Recipient, other_key: number, tweak: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_KeysInterface_get_shutdown_scriptpubkey(this_arg);
+       const nativeResponseValue = wasm.TS_NodeSigner_ecdh(this_arg, recipient, other_key, tweak);
        return nativeResponseValue;
 }
-       // LDKSign KeysInterface_get_channel_signer LDKKeysInterface *NONNULL_PTR this_arg, bool inbound, uint64_t channel_value_satoshis
+       // LDKCResult_RecoverableSignatureNoneZ NodeSigner_sign_invoice LDKNodeSigner *NONNULL_PTR this_arg, struct LDKu8slice hrp_bytes, struct LDKCVec_U5Z invoice_data, enum LDKRecipient recipient
 /* @internal */
-export function KeysInterface_get_channel_signer(this_arg: bigint, inbound: boolean, channel_value_satoshis: bigint): bigint {
+export function NodeSigner_sign_invoice(this_arg: bigint, hrp_bytes: number, invoice_data: number, recipient: Recipient): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_KeysInterface_get_channel_signer(this_arg, inbound, channel_value_satoshis);
+       const nativeResponseValue = wasm.TS_NodeSigner_sign_invoice(this_arg, hrp_bytes, invoice_data, recipient);
        return nativeResponseValue;
 }
-       // LDKThirtyTwoBytes KeysInterface_get_secure_random_bytes LDKKeysInterface *NONNULL_PTR this_arg
+       // LDKCResult_SignatureNoneZ NodeSigner_sign_gossip_message LDKNodeSigner *NONNULL_PTR this_arg, struct LDKUnsignedGossipMessage msg
 /* @internal */
-export function KeysInterface_get_secure_random_bytes(this_arg: bigint): number {
+export function NodeSigner_sign_gossip_message(this_arg: bigint, msg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_KeysInterface_get_secure_random_bytes(this_arg);
+       const nativeResponseValue = wasm.TS_NodeSigner_sign_gossip_message(this_arg, msg);
        return nativeResponseValue;
 }
-       // LDKCResult_SignDecodeErrorZ KeysInterface_read_chan_signer LDKKeysInterface *NONNULL_PTR this_arg, struct LDKu8slice reader
 /* @internal */
-export function KeysInterface_read_chan_signer(this_arg: bigint, reader: number): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_KeysInterface_read_chan_signer(this_arg, reader);
-       return nativeResponseValue;
-}
-       // LDKCResult_RecoverableSignatureNoneZ KeysInterface_sign_invoice LDKKeysInterface *NONNULL_PTR this_arg, struct LDKu8slice hrp_bytes, struct LDKCVec_u5Z invoice_data, enum LDKRecipient receipient
-/* @internal */
-export function KeysInterface_sign_invoice(this_arg: bigint, hrp_bytes: number, invoice_data: number, receipient: Recipient): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_KeysInterface_sign_invoice(this_arg, hrp_bytes, invoice_data, receipient);
-       return nativeResponseValue;
-}
-       // LDKThirtyTwoBytes KeysInterface_get_inbound_payment_key_material LDKKeysInterface *NONNULL_PTR this_arg
-/* @internal */
-export function KeysInterface_get_inbound_payment_key_material(this_arg: bigint): number {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_KeysInterface_get_inbound_payment_key_material(this_arg);
-       return nativeResponseValue;
-}
-/* @internal */
-export interface LDKFeeEstimator {
-       get_est_sat_per_1000_weight (confirmation_target: ConfirmationTarget): number;
+export interface LDKSignerProvider {
+       generate_channel_keys_id (inbound: boolean, channel_value_satoshis: bigint, user_channel_id: number): number;
+       derive_channel_signer (channel_value_satoshis: bigint, channel_keys_id: number): bigint;
+       read_chan_signer (reader: number): bigint;
+       get_destination_script (): number;
+       get_shutdown_scriptpubkey (): bigint;
 }
 
 /* @internal */
-export function LDKFeeEstimator_new(impl: LDKFeeEstimator): bigint {
+export function LDKSignerProvider_new(impl: LDKSignerProvider): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -4120,98 +4807,87 @@ export function LDKFeeEstimator_new(impl: LDKFeeEstimator): bigint {
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKFeeEstimator_new(i);
+       return [wasm.TS_LDKSignerProvider_new(i), i];
 }
-       // uint32_t FeeEstimator_get_est_sat_per_1000_weight LDKFeeEstimator *NONNULL_PTR this_arg, enum LDKConfirmationTarget confirmation_target
+       // LDKThirtyTwoBytes SignerProvider_generate_channel_keys_id LDKSignerProvider *NONNULL_PTR this_arg, bool inbound, uint64_t channel_value_satoshis, struct LDKU128 user_channel_id
 /* @internal */
-export function FeeEstimator_get_est_sat_per_1000_weight(this_arg: bigint, confirmation_target: ConfirmationTarget): number {
+export function SignerProvider_generate_channel_keys_id(this_arg: bigint, inbound: boolean, channel_value_satoshis: bigint, user_channel_id: number): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_FeeEstimator_get_est_sat_per_1000_weight(this_arg, confirmation_target);
+       const nativeResponseValue = wasm.TS_SignerProvider_generate_channel_keys_id(this_arg, inbound, channel_value_satoshis, user_channel_id);
        return nativeResponseValue;
 }
-       // struct LDKThirtyTwoBytes C2Tuple_BlockHashChannelManagerZ_get_a(LDKC2Tuple_BlockHashChannelManagerZ *NONNULL_PTR owner);
+       // LDKWriteableEcdsaChannelSigner SignerProvider_derive_channel_signer LDKSignerProvider *NONNULL_PTR this_arg, uint64_t channel_value_satoshis, struct LDKThirtyTwoBytes channel_keys_id
 /* @internal */
-export function C2Tuple_BlockHashChannelManagerZ_get_a(owner: bigint): number {
+export function SignerProvider_derive_channel_signer(this_arg: bigint, channel_value_satoshis: bigint, channel_keys_id: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelManagerZ_get_a(owner);
+       const nativeResponseValue = wasm.TS_SignerProvider_derive_channel_signer(this_arg, channel_value_satoshis, channel_keys_id);
        return nativeResponseValue;
 }
-       // struct LDKChannelManager C2Tuple_BlockHashChannelManagerZ_get_b(LDKC2Tuple_BlockHashChannelManagerZ *NONNULL_PTR owner);
+       // LDKCResult_WriteableEcdsaChannelSignerDecodeErrorZ SignerProvider_read_chan_signer LDKSignerProvider *NONNULL_PTR this_arg, struct LDKu8slice reader
 /* @internal */
-export function C2Tuple_BlockHashChannelManagerZ_get_b(owner: bigint): bigint {
+export function SignerProvider_read_chan_signer(this_arg: bigint, reader: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelManagerZ_get_b(owner);
+       const nativeResponseValue = wasm.TS_SignerProvider_read_chan_signer(this_arg, reader);
        return nativeResponseValue;
 }
-       // struct LDKC2Tuple_BlockHashChannelManagerZ *CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ *NONNULL_PTR owner);
+       // LDKCVec_u8Z SignerProvider_get_destination_script LDKSignerProvider *NONNULL_PTR this_arg
 /* @internal */
-export function CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(owner: bigint): bigint {
+export function SignerProvider_get_destination_script(this_arg: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_SignerProvider_get_destination_script(this_arg);
        return nativeResponseValue;
 }
-       // struct LDKDecodeError CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ *NONNULL_PTR owner);
+       // LDKShutdownScript SignerProvider_get_shutdown_scriptpubkey LDKSignerProvider *NONNULL_PTR this_arg
 /* @internal */
-export function CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(owner: bigint): bigint {
+export function SignerProvider_get_shutdown_scriptpubkey(this_arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_SignerProvider_get_shutdown_scriptpubkey(this_arg);
        return nativeResponseValue;
 }
-       // struct LDKChannelConfig CResult_ChannelConfigDecodeErrorZ_get_ok(LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_ChannelConfigDecodeErrorZ_get_ok(owner: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_ChannelConfigDecodeErrorZ_get_ok(owner);
-       return nativeResponseValue;
+export interface LDKFeeEstimator {
+       get_est_sat_per_1000_weight (confirmation_target: ConfirmationTarget): number;
 }
-       // struct LDKDecodeError CResult_ChannelConfigDecodeErrorZ_get_err(LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR owner);
+
 /* @internal */
-export function CResult_ChannelConfigDecodeErrorZ_get_err(owner: bigint): bigint {
+export function LDKFeeEstimator_new(impl: LDKFeeEstimator): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_ChannelConfigDecodeErrorZ_get_err(owner);
-       return nativeResponseValue;
-}
-       // struct LDKOutPoint CResult_OutPointDecodeErrorZ_get_ok(LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR owner);
-/* @internal */
-export function CResult_OutPointDecodeErrorZ_get_ok(owner: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
+       var new_obj_idx = js_objs.length;
+       for (var i = 0; i < js_objs.length; i++) {
+               if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
-       const nativeResponseValue = wasm.TS_CResult_OutPointDecodeErrorZ_get_ok(owner);
-       return nativeResponseValue;
+       js_objs[i] = new WeakRef(impl);
+       return [wasm.TS_LDKFeeEstimator_new(i), i];
 }
-       // struct LDKDecodeError CResult_OutPointDecodeErrorZ_get_err(LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR owner);
+       // uint32_t FeeEstimator_get_est_sat_per_1000_weight LDKFeeEstimator *NONNULL_PTR this_arg, enum LDKConfirmationTarget confirmation_target
 /* @internal */
-export function CResult_OutPointDecodeErrorZ_get_err(owner: bigint): bigint {
+export function FeeEstimator_get_est_sat_per_1000_weight(this_arg: bigint, confirmation_target: ConfirmationTarget): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_OutPointDecodeErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_FeeEstimator_get_est_sat_per_1000_weight(this_arg, confirmation_target);
        return nativeResponseValue;
 }
 /* @internal */
-export interface LDKType {
-       type_id (): number;
-       debug_str (): number;
-       write (): number;
+export interface LDKRouter {
+       find_route (payer: number, route_params: bigint, first_hops: number, inflight_htlcs: bigint): bigint;
+       find_route_with_id (payer: number, route_params: bigint, first_hops: number, inflight_htlcs: bigint, _payment_hash: number, _payment_id: number): bigint;
 }
 
 /* @internal */
-export function LDKType_new(impl: LDKType): bigint {
+export function LDKRouter_new(impl: LDKRouter): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -4220,412 +4896,318 @@ export function LDKType_new(impl: LDKType): bigint {
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKType_new(i);
+       return [wasm.TS_LDKRouter_new(i), i];
 }
-       // uint16_t Type_type_id LDKType *NONNULL_PTR this_arg
+       // LDKCResult_RouteLightningErrorZ Router_find_route LDKRouter *NONNULL_PTR this_arg, struct LDKPublicKey payer, const struct LDKRouteParameters *NONNULL_PTR route_params, struct LDKCVec_ChannelDetailsZ *first_hops, const struct LDKInFlightHtlcs *NONNULL_PTR inflight_htlcs
 /* @internal */
-export function Type_type_id(this_arg: bigint): number {
+export function Router_find_route(this_arg: bigint, payer: number, route_params: bigint, first_hops: number, inflight_htlcs: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Type_type_id(this_arg);
+       const nativeResponseValue = wasm.TS_Router_find_route(this_arg, payer, route_params, first_hops, inflight_htlcs);
        return nativeResponseValue;
 }
-       // LDKStr Type_debug_str LDKType *NONNULL_PTR this_arg
+       // LDKCResult_RouteLightningErrorZ Router_find_route_with_id LDKRouter *NONNULL_PTR this_arg, struct LDKPublicKey payer, const struct LDKRouteParameters *NONNULL_PTR route_params, struct LDKCVec_ChannelDetailsZ *first_hops, const struct LDKInFlightHtlcs *NONNULL_PTR inflight_htlcs, struct LDKThirtyTwoBytes _payment_hash, struct LDKThirtyTwoBytes _payment_id
 /* @internal */
-export function Type_debug_str(this_arg: bigint): number {
+export function Router_find_route_with_id(this_arg: bigint, payer: number, route_params: bigint, first_hops: number, inflight_htlcs: bigint, _payment_hash: number, _payment_id: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Type_debug_str(this_arg);
+       const nativeResponseValue = wasm.TS_Router_find_route_with_id(this_arg, payer, route_params, first_hops, inflight_htlcs, _payment_hash, _payment_id);
        return nativeResponseValue;
 }
-       // LDKCVec_u8Z Type_write LDKType *NONNULL_PTR this_arg
+       // struct LDKThirtyTwoBytes C2Tuple_BlockHashChannelManagerZ_get_a(LDKC2Tuple_BlockHashChannelManagerZ *NONNULL_PTR owner);
 /* @internal */
-export function Type_write(this_arg: bigint): number {
+export function C2Tuple_BlockHashChannelManagerZ_get_a(owner: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Type_write(this_arg);
+       const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelManagerZ_get_a(owner);
        return nativeResponseValue;
 }
+       // struct LDKChannelManager C2Tuple_BlockHashChannelManagerZ_get_b(LDKC2Tuple_BlockHashChannelManagerZ *NONNULL_PTR owner);
 /* @internal */
-export class LDKCOption_TypeZ {
-       protected constructor() {}
-}
-/* @internal */
-export function LDKCOption_TypeZ_ty_from_ptr(ptr: bigint): number {
+export function C2Tuple_BlockHashChannelManagerZ_get_b(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKCOption_TypeZ_ty_from_ptr(ptr);
+       const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelManagerZ_get_b(owner);
        return nativeResponseValue;
 }
+       // struct LDKC2Tuple_BlockHashChannelManagerZ *CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function LDKCOption_TypeZ_Some_get_some(ptr: bigint): bigint {
+export function CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKCOption_TypeZ_Some_get_some(ptr);
+       const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_ok(owner);
        return nativeResponseValue;
 }
-       // struct LDKCOption_TypeZ CResult_COption_TypeZDecodeErrorZ_get_ok(LDKCResult_COption_TypeZDecodeErrorZ *NONNULL_PTR owner);
+       // struct LDKDecodeError CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_COption_TypeZDecodeErrorZ_get_ok(owner: bigint): bigint {
+export function CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_COption_TypeZDecodeErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ_get_err(owner);
        return nativeResponseValue;
 }
-       // struct LDKDecodeError CResult_COption_TypeZDecodeErrorZ_get_err(LDKCResult_COption_TypeZDecodeErrorZ *NONNULL_PTR owner);
+       // struct LDKChannelConfig CResult_ChannelConfigDecodeErrorZ_get_ok(LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_COption_TypeZDecodeErrorZ_get_err(owner: bigint): bigint {
+export function CResult_ChannelConfigDecodeErrorZ_get_ok(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_COption_TypeZDecodeErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_CResult_ChannelConfigDecodeErrorZ_get_ok(owner);
        return nativeResponseValue;
 }
+       // struct LDKDecodeError CResult_ChannelConfigDecodeErrorZ_get_err(LDKCResult_ChannelConfigDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export class LDKPaymentError {
-       protected constructor() {}
-}
-/* @internal */
-export function LDKPaymentError_ty_from_ptr(ptr: bigint): number {
+export function CResult_ChannelConfigDecodeErrorZ_get_err(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKPaymentError_ty_from_ptr(ptr);
+       const nativeResponseValue = wasm.TS_CResult_ChannelConfigDecodeErrorZ_get_err(owner);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKPaymentError_Invoice_get_invoice(ptr: bigint): number {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_LDKPaymentError_Invoice_get_invoice(ptr);
-       return nativeResponseValue;
+export class LDKCOption_APIErrorZ {
+       protected constructor() {}
 }
 /* @internal */
-export function LDKPaymentError_Routing_get_routing(ptr: bigint): bigint {
+export function LDKCOption_APIErrorZ_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKPaymentError_Routing_get_routing(ptr);
+       const nativeResponseValue = wasm.TS_LDKCOption_APIErrorZ_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKPaymentError_Sending_get_sending(ptr: bigint): bigint {
+export function LDKCOption_APIErrorZ_Some_get_some(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKPaymentError_Sending_get_sending(ptr);
+       const nativeResponseValue = wasm.TS_LDKCOption_APIErrorZ_Some_get_some(ptr);
        return nativeResponseValue;
 }
-       // struct LDKThirtyTwoBytes CResult_PaymentIdPaymentErrorZ_get_ok(LDKCResult_PaymentIdPaymentErrorZ *NONNULL_PTR owner);
+       // struct LDKCOption_APIErrorZ CResult_COption_APIErrorZDecodeErrorZ_get_ok(LDKCResult_COption_APIErrorZDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_PaymentIdPaymentErrorZ_get_ok(owner: bigint): number {
+export function CResult_COption_APIErrorZDecodeErrorZ_get_ok(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_CResult_COption_APIErrorZDecodeErrorZ_get_ok(owner);
        return nativeResponseValue;
 }
-       // struct LDKPaymentError CResult_PaymentIdPaymentErrorZ_get_err(LDKCResult_PaymentIdPaymentErrorZ *NONNULL_PTR owner);
+       // struct LDKDecodeError CResult_COption_APIErrorZDecodeErrorZ_get_err(LDKCResult_COption_APIErrorZDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_PaymentIdPaymentErrorZ_get_err(owner: bigint): bigint {
+export function CResult_COption_APIErrorZDecodeErrorZ_get_err(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_CResult_COption_APIErrorZDecodeErrorZ_get_err(owner);
        return nativeResponseValue;
 }
+       // struct LDKOutPoint CResult_OutPointDecodeErrorZ_get_ok(LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export class LDKParseError {
-       protected constructor() {}
-}
-/* @internal */
-export function LDKParseError_ty_from_ptr(ptr: bigint): number {
+export function CResult_OutPointDecodeErrorZ_get_ok(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKParseError_ty_from_ptr(ptr);
+       const nativeResponseValue = wasm.TS_CResult_OutPointDecodeErrorZ_get_ok(owner);
        return nativeResponseValue;
 }
+       // struct LDKDecodeError CResult_OutPointDecodeErrorZ_get_err(LDKCResult_OutPointDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function LDKParseError_Bech32Error_get_bech32_error(ptr: bigint): bigint {
+export function CResult_OutPointDecodeErrorZ_get_err(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKParseError_Bech32Error_get_bech32_error(ptr);
+       const nativeResponseValue = wasm.TS_CResult_OutPointDecodeErrorZ_get_err(owner);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKParseError_ParseAmountError_get_parse_amount_error(ptr: bigint): number {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_LDKParseError_ParseAmountError_get_parse_amount_error(ptr);
-       return nativeResponseValue;
+export interface LDKType {
+       type_id (): number;
+       debug_str (): number;
+       write (): number;
 }
+
 /* @internal */
-export function LDKParseError_MalformedSignature_get_malformed_signature(ptr: bigint): Secp256k1Error {
+export function LDKType_new(impl: LDKType): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKParseError_MalformedSignature_get_malformed_signature(ptr);
-       return nativeResponseValue;
-}
-/* @internal */
-export function LDKParseError_DescriptionDecodeError_get_description_decode_error(ptr: bigint): number {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
+       var new_obj_idx = js_objs.length;
+       for (var i = 0; i < js_objs.length; i++) {
+               if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
-       const nativeResponseValue = wasm.TS_LDKParseError_DescriptionDecodeError_get_description_decode_error(ptr);
-       return nativeResponseValue;
+       js_objs[i] = new WeakRef(impl);
+       return [wasm.TS_LDKType_new(i), i];
 }
+       // uint16_t Type_type_id LDKType *NONNULL_PTR this_arg
 /* @internal */
-export function LDKParseError_InvalidSliceLength_get_invalid_slice_length(ptr: bigint): number {
+export function Type_type_id(this_arg: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKParseError_InvalidSliceLength_get_invalid_slice_length(ptr);
+       const nativeResponseValue = wasm.TS_Type_type_id(this_arg);
        return nativeResponseValue;
 }
-       // enum LDKSiPrefix CResult_SiPrefixParseErrorZ_get_ok(LDKCResult_SiPrefixParseErrorZ *NONNULL_PTR owner);
+       // LDKStr Type_debug_str LDKType *NONNULL_PTR this_arg
 /* @internal */
-export function CResult_SiPrefixParseErrorZ_get_ok(owner: bigint): SiPrefix {
+export function Type_debug_str(this_arg: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SiPrefixParseErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_Type_debug_str(this_arg);
        return nativeResponseValue;
 }
-       // struct LDKParseError CResult_SiPrefixParseErrorZ_get_err(LDKCResult_SiPrefixParseErrorZ *NONNULL_PTR owner);
+       // LDKCVec_u8Z Type_write LDKType *NONNULL_PTR this_arg
 /* @internal */
-export function CResult_SiPrefixParseErrorZ_get_err(owner: bigint): bigint {
+export function Type_write(this_arg: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SiPrefixParseErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_Type_write(this_arg);
        return nativeResponseValue;
 }
 /* @internal */
-export class LDKParseOrSemanticError {
+export class LDKCOption_TypeZ {
        protected constructor() {}
 }
 /* @internal */
-export function LDKParseOrSemanticError_ty_from_ptr(ptr: bigint): number {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_LDKParseOrSemanticError_ty_from_ptr(ptr);
-       return nativeResponseValue;
-}
-/* @internal */
-export function LDKParseOrSemanticError_ParseError_get_parse_error(ptr: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_LDKParseOrSemanticError_ParseError_get_parse_error(ptr);
-       return nativeResponseValue;
-}
-/* @internal */
-export function LDKParseOrSemanticError_SemanticError_get_semantic_error(ptr: bigint): SemanticError {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_LDKParseOrSemanticError_SemanticError_get_semantic_error(ptr);
-       return nativeResponseValue;
-}
-       // struct LDKInvoice CResult_InvoiceParseOrSemanticErrorZ_get_ok(LDKCResult_InvoiceParseOrSemanticErrorZ *NONNULL_PTR owner);
-/* @internal */
-export function CResult_InvoiceParseOrSemanticErrorZ_get_ok(owner: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_InvoiceParseOrSemanticErrorZ_get_ok(owner);
-       return nativeResponseValue;
-}
-       // struct LDKParseOrSemanticError CResult_InvoiceParseOrSemanticErrorZ_get_err(LDKCResult_InvoiceParseOrSemanticErrorZ *NONNULL_PTR owner);
-/* @internal */
-export function CResult_InvoiceParseOrSemanticErrorZ_get_err(owner: bigint): bigint {
+export function LDKCOption_TypeZ_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_InvoiceParseOrSemanticErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_LDKCOption_TypeZ_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
-       // struct LDKSignedRawInvoice CResult_SignedRawInvoiceParseErrorZ_get_ok(LDKCResult_SignedRawInvoiceParseErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_SignedRawInvoiceParseErrorZ_get_ok(owner: bigint): bigint {
+export function LDKCOption_TypeZ_Some_get_some(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SignedRawInvoiceParseErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_LDKCOption_TypeZ_Some_get_some(ptr);
        return nativeResponseValue;
 }
-       // struct LDKParseError CResult_SignedRawInvoiceParseErrorZ_get_err(LDKCResult_SignedRawInvoiceParseErrorZ *NONNULL_PTR owner);
+       // struct LDKCOption_TypeZ CResult_COption_TypeZDecodeErrorZ_get_ok(LDKCResult_COption_TypeZDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_SignedRawInvoiceParseErrorZ_get_err(owner: bigint): bigint {
+export function CResult_COption_TypeZDecodeErrorZ_get_ok(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SignedRawInvoiceParseErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_CResult_COption_TypeZDecodeErrorZ_get_ok(owner);
        return nativeResponseValue;
 }
-       // struct LDKRawInvoice C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_a(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR owner);
+       // struct LDKDecodeError CResult_COption_TypeZDecodeErrorZ_get_err(LDKCResult_COption_TypeZDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_a(owner: bigint): bigint {
+export function CResult_COption_TypeZDecodeErrorZ_get_err(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_a(owner);
+       const nativeResponseValue = wasm.TS_CResult_COption_TypeZDecodeErrorZ_get_err(owner);
        return nativeResponseValue;
 }
-       // struct LDKThirtyTwoBytes C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_b(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR owner);
 /* @internal */
-export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_b(owner: bigint): number {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_b(owner);
-       return nativeResponseValue;
+export class LDKPaymentError {
+       protected constructor() {}
 }
-       // struct LDKInvoiceSignature C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_c(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR owner);
 /* @internal */
-export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_c(owner: bigint): bigint {
+export function LDKPaymentError_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_c(owner);
+       const nativeResponseValue = wasm.TS_LDKPaymentError_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
-       // struct LDKPayeePubKey CResult_PayeePubKeyErrorZ_get_ok(LDKCResult_PayeePubKeyErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_PayeePubKeyErrorZ_get_ok(owner: bigint): bigint {
+export function LDKPaymentError_Invoice_get_invoice(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PayeePubKeyErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_LDKPaymentError_Invoice_get_invoice(ptr);
        return nativeResponseValue;
 }
-       // enum LDKSecp256k1Error CResult_PayeePubKeyErrorZ_get_err(LDKCResult_PayeePubKeyErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_PayeePubKeyErrorZ_get_err(owner: bigint): Secp256k1Error {
+export function LDKPaymentError_Sending_get_sending(ptr: bigint): RetryableSendFailure {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PayeePubKeyErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_LDKPaymentError_Sending_get_sending(ptr);
        return nativeResponseValue;
 }
-       // struct LDKPositiveTimestamp CResult_PositiveTimestampCreationErrorZ_get_ok(LDKCResult_PositiveTimestampCreationErrorZ *NONNULL_PTR owner);
+       // struct LDKThirtyTwoBytes CResult_PaymentIdPaymentErrorZ_get_ok(LDKCResult_PaymentIdPaymentErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_PositiveTimestampCreationErrorZ_get_ok(owner: bigint): bigint {
+export function CResult_PaymentIdPaymentErrorZ_get_ok(owner: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PositiveTimestampCreationErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentErrorZ_get_ok(owner);
        return nativeResponseValue;
 }
-       // enum LDKCreationError CResult_PositiveTimestampCreationErrorZ_get_err(LDKCResult_PositiveTimestampCreationErrorZ *NONNULL_PTR owner);
+       // struct LDKPaymentError CResult_PaymentIdPaymentErrorZ_get_err(LDKCResult_PaymentIdPaymentErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_PositiveTimestampCreationErrorZ_get_err(owner: bigint): CreationError {
+export function CResult_PaymentIdPaymentErrorZ_get_err(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PositiveTimestampCreationErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentErrorZ_get_err(owner);
        return nativeResponseValue;
 }
-       // void CResult_NoneSemanticErrorZ_get_ok(LDKCResult_NoneSemanticErrorZ *NONNULL_PTR owner);
+       // void CResult_NonePaymentErrorZ_get_ok(LDKCResult_NonePaymentErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_NoneSemanticErrorZ_get_ok(owner: bigint): void {
+export function CResult_NonePaymentErrorZ_get_ok(owner: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NoneSemanticErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_CResult_NonePaymentErrorZ_get_ok(owner);
        // debug statements here
 }
-       // enum LDKSemanticError CResult_NoneSemanticErrorZ_get_err(LDKCResult_NoneSemanticErrorZ *NONNULL_PTR owner);
-/* @internal */
-export function CResult_NoneSemanticErrorZ_get_err(owner: bigint): SemanticError {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_NoneSemanticErrorZ_get_err(owner);
-       return nativeResponseValue;
-}
-       // struct LDKInvoice CResult_InvoiceSemanticErrorZ_get_ok(LDKCResult_InvoiceSemanticErrorZ *NONNULL_PTR owner);
-/* @internal */
-export function CResult_InvoiceSemanticErrorZ_get_ok(owner: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_InvoiceSemanticErrorZ_get_ok(owner);
-       return nativeResponseValue;
-}
-       // enum LDKSemanticError CResult_InvoiceSemanticErrorZ_get_err(LDKCResult_InvoiceSemanticErrorZ *NONNULL_PTR owner);
-/* @internal */
-export function CResult_InvoiceSemanticErrorZ_get_err(owner: bigint): SemanticError {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_InvoiceSemanticErrorZ_get_err(owner);
-       return nativeResponseValue;
-}
-       // struct LDKDescription CResult_DescriptionCreationErrorZ_get_ok(LDKCResult_DescriptionCreationErrorZ *NONNULL_PTR owner);
-/* @internal */
-export function CResult_DescriptionCreationErrorZ_get_ok(owner: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_DescriptionCreationErrorZ_get_ok(owner);
-       return nativeResponseValue;
-}
-       // enum LDKCreationError CResult_DescriptionCreationErrorZ_get_err(LDKCResult_DescriptionCreationErrorZ *NONNULL_PTR owner);
+       // struct LDKPaymentError CResult_NonePaymentErrorZ_get_err(LDKCResult_NonePaymentErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_DescriptionCreationErrorZ_get_err(owner: bigint): CreationError {
+export function CResult_NonePaymentErrorZ_get_err(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_DescriptionCreationErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_CResult_NonePaymentErrorZ_get_err(owner);
        return nativeResponseValue;
 }
-       // struct LDKPrivateRoute CResult_PrivateRouteCreationErrorZ_get_ok(LDKCResult_PrivateRouteCreationErrorZ *NONNULL_PTR owner);
+       // struct LDKStr CResult_StringErrorZ_get_ok(LDKCResult_StringErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_PrivateRouteCreationErrorZ_get_ok(owner: bigint): bigint {
+export function CResult_StringErrorZ_get_ok(owner: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PrivateRouteCreationErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_CResult_StringErrorZ_get_ok(owner);
        return nativeResponseValue;
 }
-       // enum LDKCreationError CResult_PrivateRouteCreationErrorZ_get_err(LDKCResult_PrivateRouteCreationErrorZ *NONNULL_PTR owner);
+       // enum LDKSecp256k1Error CResult_StringErrorZ_get_err(LDKCResult_StringErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_PrivateRouteCreationErrorZ_get_err(owner: bigint): CreationError {
+export function CResult_StringErrorZ_get_err(owner: bigint): Secp256k1Error {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PrivateRouteCreationErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_CResult_StringErrorZ_get_err(owner);
        return nativeResponseValue;
 }
-       // struct LDKStr CResult_StringErrorZ_get_ok(LDKCResult_StringErrorZ *NONNULL_PTR owner);
+       // struct LDKPublicKey CResult_PublicKeyErrorZ_get_ok(LDKCResult_PublicKeyErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_StringErrorZ_get_ok(owner: bigint): number {
+export function CResult_PublicKeyErrorZ_get_ok(owner: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_StringErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_get_ok(owner);
        return nativeResponseValue;
 }
-       // enum LDKSecp256k1Error CResult_StringErrorZ_get_err(LDKCResult_StringErrorZ *NONNULL_PTR owner);
+       // enum LDKSecp256k1Error CResult_PublicKeyErrorZ_get_err(LDKCResult_PublicKeyErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_StringErrorZ_get_err(owner: bigint): Secp256k1Error {
+export function CResult_PublicKeyErrorZ_get_err(owner: bigint): Secp256k1Error {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_StringErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_get_err(owner);
        return nativeResponseValue;
 }
        // struct LDKChannelMonitorUpdate CResult_ChannelMonitorUpdateDecodeErrorZ_get_ok(LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR owner);
@@ -4845,19 +5427,43 @@ export function LDKBalance_ContentiousClaimable_get_timeout_height(ptr: bigint):
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKBalance_MaybeClaimableHTLCAwaitingTimeout_get_claimable_amount_satoshis(ptr: bigint): bigint {
+export function LDKBalance_MaybeTimeoutClaimableHTLC_get_claimable_amount_satoshis(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKBalance_MaybeTimeoutClaimableHTLC_get_claimable_amount_satoshis(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKBalance_MaybeTimeoutClaimableHTLC_get_claimable_height(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKBalance_MaybeTimeoutClaimableHTLC_get_claimable_height(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKBalance_MaybePreimageClaimableHTLC_get_claimable_amount_satoshis(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKBalance_MaybePreimageClaimableHTLC_get_claimable_amount_satoshis(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKBalance_MaybePreimageClaimableHTLC_get_expiry_height(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKBalance_MaybeClaimableHTLCAwaitingTimeout_get_claimable_amount_satoshis(ptr);
+       const nativeResponseValue = wasm.TS_LDKBalance_MaybePreimageClaimableHTLC_get_expiry_height(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKBalance_MaybeClaimableHTLCAwaitingTimeout_get_claimable_height(ptr: bigint): number {
+export function LDKBalance_CounterpartyRevokedOutputClaimable_get_claimable_amount_satoshis(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKBalance_MaybeClaimableHTLCAwaitingTimeout_get_claimable_height(ptr);
+       const nativeResponseValue = wasm.TS_LDKBalance_CounterpartyRevokedOutputClaimable_get_claimable_amount_satoshis(ptr);
        return nativeResponseValue;
 }
        // struct LDKThirtyTwoBytes C2Tuple_BlockHashChannelMonitorZ_get_a(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR owner);
@@ -4915,6 +5521,80 @@ export function C2Tuple_PublicKeyTypeZ_get_b(owner: bigint): bigint {
        return nativeResponseValue;
 }
 /* @internal */
+export interface LDKCustomOnionMessageContents {
+       tlv_type (): bigint;
+       write (): number;
+}
+
+/* @internal */
+export function LDKCustomOnionMessageContents_new(impl: LDKCustomOnionMessageContents): [bigint, number] {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       var new_obj_idx = js_objs.length;
+       for (var i = 0; i < js_objs.length; i++) {
+               if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
+       }
+       js_objs[i] = new WeakRef(impl);
+       return [wasm.TS_LDKCustomOnionMessageContents_new(i), i];
+}
+       // uint64_t CustomOnionMessageContents_tlv_type LDKCustomOnionMessageContents *NONNULL_PTR this_arg
+/* @internal */
+export function CustomOnionMessageContents_tlv_type(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CustomOnionMessageContents_tlv_type(this_arg);
+       return nativeResponseValue;
+}
+       // LDKCVec_u8Z CustomOnionMessageContents_write LDKCustomOnionMessageContents *NONNULL_PTR this_arg
+/* @internal */
+export function CustomOnionMessageContents_write(this_arg: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CustomOnionMessageContents_write(this_arg);
+       return nativeResponseValue;
+}
+/* @internal */
+export class LDKCOption_CustomOnionMessageContentsZ {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKCOption_CustomOnionMessageContentsZ_ty_from_ptr(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKCOption_CustomOnionMessageContentsZ_ty_from_ptr(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKCOption_CustomOnionMessageContentsZ_Some_get_some(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKCOption_CustomOnionMessageContentsZ_Some_get_some(ptr);
+       return nativeResponseValue;
+}
+       // struct LDKCOption_CustomOnionMessageContentsZ CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_get_ok(LDKCResult_COption_CustomOnionMessageContentsZDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_get_err(LDKCResult_COption_CustomOnionMessageContentsZDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_get_err(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+/* @internal */
 export class LDKCOption_NetAddressZ {
        protected constructor() {}
 }
@@ -4933,6 +5613,24 @@ export function LDKCOption_NetAddressZ_Some_get_some(ptr: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_LDKCOption_NetAddressZ_Some_get_some(ptr);
        return nativeResponseValue;
+}
+       // struct LDKPublicKey C2Tuple_PublicKeyCOption_NetAddressZZ_get_a(LDKC2Tuple_PublicKeyCOption_NetAddressZZ *NONNULL_PTR owner);
+/* @internal */
+export function C2Tuple_PublicKeyCOption_NetAddressZZ_get_a(owner: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyCOption_NetAddressZZ_get_a(owner);
+       return nativeResponseValue;
+}
+       // struct LDKCOption_NetAddressZ C2Tuple_PublicKeyCOption_NetAddressZZ_get_b(LDKC2Tuple_PublicKeyCOption_NetAddressZZ *NONNULL_PTR owner);
+/* @internal */
+export function C2Tuple_PublicKeyCOption_NetAddressZZ_get_b(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyCOption_NetAddressZZ_get_b(owner);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z CResult_CVec_u8ZPeerHandleErrorZ_get_ok(LDKCResult_CVec_u8ZPeerHandleErrorZ *NONNULL_PTR owner);
 /* @internal */
@@ -4988,157 +5686,510 @@ export function CResult_boolPeerHandleErrorZ_get_err(owner: bigint): bigint {
        const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_get_err(owner);
        return nativeResponseValue;
 }
-       // void CResult_NoneErrorZ_get_ok(LDKCResult_NoneErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_NoneErrorZ_get_ok(owner: bigint): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_NoneErrorZ_get_ok(owner);
-       // debug statements here
+export class LDKSendError {
+       protected constructor() {}
 }
-       // enum LDKIOError CResult_NoneErrorZ_get_err(LDKCResult_NoneErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_NoneErrorZ_get_err(owner: bigint): IOError {
+export function LDKSendError_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NoneErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_LDKSendError_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
-       // struct LDKNetAddress CResult_NetAddressDecodeErrorZ_get_ok(LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_NetAddressDecodeErrorZ_get_ok(owner: bigint): bigint {
+export function LDKSendError_Secp256k1_get_secp256k1(ptr: bigint): Secp256k1Error {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NetAddressDecodeErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_LDKSendError_Secp256k1_get_secp256k1(ptr);
        return nativeResponseValue;
 }
-       // struct LDKDecodeError CResult_NetAddressDecodeErrorZ_get_err(LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR owner);
+       // void CResult_NoneSendErrorZ_get_ok(LDKCResult_NoneSendErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_NetAddressDecodeErrorZ_get_err(owner: bigint): bigint {
+export function CResult_NoneSendErrorZ_get_ok(owner: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NetAddressDecodeErrorZ_get_err(owner);
-       return nativeResponseValue;
+       const nativeResponseValue = wasm.TS_CResult_NoneSendErrorZ_get_ok(owner);
+       // debug statements here
 }
-       // struct LDKAcceptChannel CResult_AcceptChannelDecodeErrorZ_get_ok(LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR owner);
+       // struct LDKSendError CResult_NoneSendErrorZ_get_err(LDKCResult_NoneSendErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_AcceptChannelDecodeErrorZ_get_ok(owner: bigint): bigint {
+export function CResult_NoneSendErrorZ_get_err(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_AcceptChannelDecodeErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_CResult_NoneSendErrorZ_get_err(owner);
        return nativeResponseValue;
 }
-       // struct LDKDecodeError CResult_AcceptChannelDecodeErrorZ_get_err(LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_AcceptChannelDecodeErrorZ_get_err(owner: bigint): bigint {
+export class LDKGraphSyncError {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKGraphSyncError_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_AcceptChannelDecodeErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_LDKGraphSyncError_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
-       // struct LDKAnnouncementSignatures CResult_AnnouncementSignaturesDecodeErrorZ_get_ok(LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_AnnouncementSignaturesDecodeErrorZ_get_ok(owner: bigint): bigint {
+export function LDKGraphSyncError_DecodeError_get_decode_error(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_AnnouncementSignaturesDecodeErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_LDKGraphSyncError_DecodeError_get_decode_error(ptr);
        return nativeResponseValue;
 }
-       // struct LDKDecodeError CResult_AnnouncementSignaturesDecodeErrorZ_get_err(LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_AnnouncementSignaturesDecodeErrorZ_get_err(owner: bigint): bigint {
+export function LDKGraphSyncError_LightningError_get_lightning_error(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_AnnouncementSignaturesDecodeErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_LDKGraphSyncError_LightningError_get_lightning_error(ptr);
        return nativeResponseValue;
 }
-       // struct LDKChannelReestablish CResult_ChannelReestablishDecodeErrorZ_get_ok(LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR owner);
+       // uint32_t CResult_u32GraphSyncErrorZ_get_ok(LDKCResult_u32GraphSyncErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_ChannelReestablishDecodeErrorZ_get_ok(owner: bigint): bigint {
+export function CResult_u32GraphSyncErrorZ_get_ok(owner: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_ChannelReestablishDecodeErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_CResult_u32GraphSyncErrorZ_get_ok(owner);
        return nativeResponseValue;
 }
-       // struct LDKDecodeError CResult_ChannelReestablishDecodeErrorZ_get_err(LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR owner);
+       // struct LDKGraphSyncError CResult_u32GraphSyncErrorZ_get_err(LDKCResult_u32GraphSyncErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_ChannelReestablishDecodeErrorZ_get_err(owner: bigint): bigint {
+export function CResult_u32GraphSyncErrorZ_get_err(owner: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_ChannelReestablishDecodeErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_CResult_u32GraphSyncErrorZ_get_err(owner);
        return nativeResponseValue;
 }
-       // struct LDKClosingSigned CResult_ClosingSignedDecodeErrorZ_get_ok(LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_ClosingSignedDecodeErrorZ_get_ok(owner: bigint): bigint {
+export class LDKParseError {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKParseError_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_ClosingSignedDecodeErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_LDKParseError_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
-       // struct LDKDecodeError CResult_ClosingSignedDecodeErrorZ_get_err(LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_ClosingSignedDecodeErrorZ_get_err(owner: bigint): bigint {
+export function LDKParseError_Bech32Error_get_bech32_error(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_ClosingSignedDecodeErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_LDKParseError_Bech32Error_get_bech32_error(ptr);
        return nativeResponseValue;
 }
-       // struct LDKClosingSignedFeeRange CResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(owner: bigint): bigint {
+export function LDKParseError_ParseAmountError_get_parse_amount_error(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_LDKParseError_ParseAmountError_get_parse_amount_error(ptr);
        return nativeResponseValue;
 }
-       // struct LDKDecodeError CResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(owner: bigint): bigint {
+export function LDKParseError_MalformedSignature_get_malformed_signature(ptr: bigint): Secp256k1Error {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_LDKParseError_MalformedSignature_get_malformed_signature(ptr);
        return nativeResponseValue;
 }
-       // struct LDKCommitmentSigned CResult_CommitmentSignedDecodeErrorZ_get_ok(LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_CommitmentSignedDecodeErrorZ_get_ok(owner: bigint): bigint {
+export function LDKParseError_DescriptionDecodeError_get_description_decode_error(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_CommitmentSignedDecodeErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_LDKParseError_DescriptionDecodeError_get_description_decode_error(ptr);
        return nativeResponseValue;
 }
-       // struct LDKDecodeError CResult_CommitmentSignedDecodeErrorZ_get_err(LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_CommitmentSignedDecodeErrorZ_get_err(owner: bigint): bigint {
+export function LDKParseError_InvalidSliceLength_get_invalid_slice_length(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_CommitmentSignedDecodeErrorZ_get_err(owner);
+       const nativeResponseValue = wasm.TS_LDKParseError_InvalidSliceLength_get_invalid_slice_length(ptr);
        return nativeResponseValue;
 }
-       // struct LDKFundingCreated CResult_FundingCreatedDecodeErrorZ_get_ok(LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR owner);
+       // enum LDKSiPrefix CResult_SiPrefixParseErrorZ_get_ok(LDKCResult_SiPrefixParseErrorZ *NONNULL_PTR owner);
 /* @internal */
-export function CResult_FundingCreatedDecodeErrorZ_get_ok(owner: bigint): bigint {
+export function CResult_SiPrefixParseErrorZ_get_ok(owner: bigint): SiPrefix {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_FundingCreatedDecodeErrorZ_get_ok(owner);
+       const nativeResponseValue = wasm.TS_CResult_SiPrefixParseErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // struct LDKParseError CResult_SiPrefixParseErrorZ_get_err(LDKCResult_SiPrefixParseErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_SiPrefixParseErrorZ_get_err(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_SiPrefixParseErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+/* @internal */
+export class LDKParseOrSemanticError {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKParseOrSemanticError_ty_from_ptr(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKParseOrSemanticError_ty_from_ptr(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKParseOrSemanticError_ParseError_get_parse_error(ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKParseOrSemanticError_ParseError_get_parse_error(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKParseOrSemanticError_SemanticError_get_semantic_error(ptr: bigint): SemanticError {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKParseOrSemanticError_SemanticError_get_semantic_error(ptr);
+       return nativeResponseValue;
+}
+       // struct LDKInvoice CResult_InvoiceParseOrSemanticErrorZ_get_ok(LDKCResult_InvoiceParseOrSemanticErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_InvoiceParseOrSemanticErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_InvoiceParseOrSemanticErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // struct LDKParseOrSemanticError CResult_InvoiceParseOrSemanticErrorZ_get_err(LDKCResult_InvoiceParseOrSemanticErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_InvoiceParseOrSemanticErrorZ_get_err(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_InvoiceParseOrSemanticErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+       // struct LDKSignedRawInvoice CResult_SignedRawInvoiceParseErrorZ_get_ok(LDKCResult_SignedRawInvoiceParseErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_SignedRawInvoiceParseErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_SignedRawInvoiceParseErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // struct LDKParseError CResult_SignedRawInvoiceParseErrorZ_get_err(LDKCResult_SignedRawInvoiceParseErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_SignedRawInvoiceParseErrorZ_get_err(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_SignedRawInvoiceParseErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+       // struct LDKRawInvoice C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_a(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR owner);
+/* @internal */
+export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_a(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_a(owner);
+       return nativeResponseValue;
+}
+       // struct LDKThirtyTwoBytes C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_b(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR owner);
+/* @internal */
+export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_b(owner: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_b(owner);
+       return nativeResponseValue;
+}
+       // struct LDKInvoiceSignature C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_c(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR owner);
+/* @internal */
+export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_c(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_get_c(owner);
+       return nativeResponseValue;
+}
+       // struct LDKPayeePubKey CResult_PayeePubKeyErrorZ_get_ok(LDKCResult_PayeePubKeyErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_PayeePubKeyErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PayeePubKeyErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // enum LDKSecp256k1Error CResult_PayeePubKeyErrorZ_get_err(LDKCResult_PayeePubKeyErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_PayeePubKeyErrorZ_get_err(owner: bigint): Secp256k1Error {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PayeePubKeyErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+       // struct LDKPositiveTimestamp CResult_PositiveTimestampCreationErrorZ_get_ok(LDKCResult_PositiveTimestampCreationErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_PositiveTimestampCreationErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PositiveTimestampCreationErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // enum LDKCreationError CResult_PositiveTimestampCreationErrorZ_get_err(LDKCResult_PositiveTimestampCreationErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_PositiveTimestampCreationErrorZ_get_err(owner: bigint): CreationError {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PositiveTimestampCreationErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+       // void CResult_NoneSemanticErrorZ_get_ok(LDKCResult_NoneSemanticErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_NoneSemanticErrorZ_get_ok(owner: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NoneSemanticErrorZ_get_ok(owner);
+       // debug statements here
+}
+       // enum LDKSemanticError CResult_NoneSemanticErrorZ_get_err(LDKCResult_NoneSemanticErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_NoneSemanticErrorZ_get_err(owner: bigint): SemanticError {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NoneSemanticErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+       // struct LDKInvoice CResult_InvoiceSemanticErrorZ_get_ok(LDKCResult_InvoiceSemanticErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_InvoiceSemanticErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_InvoiceSemanticErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // enum LDKSemanticError CResult_InvoiceSemanticErrorZ_get_err(LDKCResult_InvoiceSemanticErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_InvoiceSemanticErrorZ_get_err(owner: bigint): SemanticError {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_InvoiceSemanticErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+       // struct LDKDescription CResult_DescriptionCreationErrorZ_get_ok(LDKCResult_DescriptionCreationErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_DescriptionCreationErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_DescriptionCreationErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // enum LDKCreationError CResult_DescriptionCreationErrorZ_get_err(LDKCResult_DescriptionCreationErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_DescriptionCreationErrorZ_get_err(owner: bigint): CreationError {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_DescriptionCreationErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+       // struct LDKPrivateRoute CResult_PrivateRouteCreationErrorZ_get_ok(LDKCResult_PrivateRouteCreationErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_PrivateRouteCreationErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PrivateRouteCreationErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // enum LDKCreationError CResult_PrivateRouteCreationErrorZ_get_err(LDKCResult_PrivateRouteCreationErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_PrivateRouteCreationErrorZ_get_err(owner: bigint): CreationError {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PrivateRouteCreationErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+       // void CResult_NoneErrorZ_get_ok(LDKCResult_NoneErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_NoneErrorZ_get_ok(owner: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NoneErrorZ_get_ok(owner);
+       // debug statements here
+}
+       // enum LDKIOError CResult_NoneErrorZ_get_err(LDKCResult_NoneErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_NoneErrorZ_get_err(owner: bigint): IOError {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NoneErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+       // struct LDKNetAddress CResult_NetAddressDecodeErrorZ_get_ok(LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_NetAddressDecodeErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NetAddressDecodeErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError CResult_NetAddressDecodeErrorZ_get_err(LDKCResult_NetAddressDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_NetAddressDecodeErrorZ_get_err(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NetAddressDecodeErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+       // struct LDKAcceptChannel CResult_AcceptChannelDecodeErrorZ_get_ok(LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_AcceptChannelDecodeErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_AcceptChannelDecodeErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError CResult_AcceptChannelDecodeErrorZ_get_err(LDKCResult_AcceptChannelDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_AcceptChannelDecodeErrorZ_get_err(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_AcceptChannelDecodeErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+       // struct LDKAnnouncementSignatures CResult_AnnouncementSignaturesDecodeErrorZ_get_ok(LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_AnnouncementSignaturesDecodeErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_AnnouncementSignaturesDecodeErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError CResult_AnnouncementSignaturesDecodeErrorZ_get_err(LDKCResult_AnnouncementSignaturesDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_AnnouncementSignaturesDecodeErrorZ_get_err(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_AnnouncementSignaturesDecodeErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+       // struct LDKChannelReestablish CResult_ChannelReestablishDecodeErrorZ_get_ok(LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_ChannelReestablishDecodeErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_ChannelReestablishDecodeErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError CResult_ChannelReestablishDecodeErrorZ_get_err(LDKCResult_ChannelReestablishDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_ChannelReestablishDecodeErrorZ_get_err(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_ChannelReestablishDecodeErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+       // struct LDKClosingSigned CResult_ClosingSignedDecodeErrorZ_get_ok(LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_ClosingSignedDecodeErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_ClosingSignedDecodeErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError CResult_ClosingSignedDecodeErrorZ_get_err(LDKCResult_ClosingSignedDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_ClosingSignedDecodeErrorZ_get_err(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_ClosingSignedDecodeErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+       // struct LDKClosingSignedFeeRange CResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError CResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(LDKCResult_ClosingSignedFeeRangeDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_ClosingSignedFeeRangeDecodeErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+       // struct LDKCommitmentSigned CResult_CommitmentSignedDecodeErrorZ_get_ok(LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_CommitmentSignedDecodeErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_CommitmentSignedDecodeErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError CResult_CommitmentSignedDecodeErrorZ_get_err(LDKCResult_CommitmentSignedDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_CommitmentSignedDecodeErrorZ_get_err(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_CommitmentSignedDecodeErrorZ_get_err(owner);
+       return nativeResponseValue;
+}
+       // struct LDKFundingCreated CResult_FundingCreatedDecodeErrorZ_get_ok(LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_FundingCreatedDecodeErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_FundingCreatedDecodeErrorZ_get_ok(owner);
        return nativeResponseValue;
 }
        // struct LDKDecodeError CResult_FundingCreatedDecodeErrorZ_get_err(LDKCResult_FundingCreatedDecodeErrorZ *NONNULL_PTR owner);
@@ -5347,6 +6398,24 @@ export function CResult_UpdateAddHTLCDecodeErrorZ_get_err(owner: bigint): bigint
        }
        const nativeResponseValue = wasm.TS_CResult_UpdateAddHTLCDecodeErrorZ_get_err(owner);
        return nativeResponseValue;
+}
+       // struct LDKOnionMessage CResult_OnionMessageDecodeErrorZ_get_ok(LDKCResult_OnionMessageDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_OnionMessageDecodeErrorZ_get_ok(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_OnionMessageDecodeErrorZ_get_ok(owner);
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError CResult_OnionMessageDecodeErrorZ_get_err(LDKCResult_OnionMessageDecodeErrorZ *NONNULL_PTR owner);
+/* @internal */
+export function CResult_OnionMessageDecodeErrorZ_get_err(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_OnionMessageDecodeErrorZ_get_err(owner);
+       return nativeResponseValue;
 }
        // struct LDKPing CResult_PingDecodeErrorZ_get_ok(LDKCResult_PingDecodeErrorZ *NONNULL_PTR owner);
 /* @internal */
@@ -5659,11 +6728,11 @@ export function CResult_InvoiceSignOrCreationErrorZ_get_err(owner: bigint): bigi
 /* @internal */
 export interface LDKFilter {
        register_tx (txid: number, script_pubkey: number): void;
-       register_output (output: bigint): bigint;
+       register_output (output: bigint): void;
 }
 
 /* @internal */
-export function LDKFilter_new(impl: LDKFilter): bigint {
+export function LDKFilter_new(impl: LDKFilter): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -5672,7 +6741,7 @@ export function LDKFilter_new(impl: LDKFilter): bigint {
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKFilter_new(i);
+       return [wasm.TS_LDKFilter_new(i), i];
 }
        // void Filter_register_tx LDKFilter *NONNULL_PTR this_arg, const uint8_t (*txid)[32], struct LDKu8slice script_pubkey
 /* @internal */
@@ -5683,14 +6752,14 @@ export function Filter_register_tx(this_arg: bigint, txid: number, script_pubkey
        const nativeResponseValue = wasm.TS_Filter_register_tx(this_arg, txid, script_pubkey);
        // debug statements here
 }
-       // LDKCOption_C2Tuple_usizeTransactionZZ Filter_register_output LDKFilter *NONNULL_PTR this_arg, struct LDKWatchedOutput output
+       // void Filter_register_output LDKFilter *NONNULL_PTR this_arg, struct LDKWatchedOutput output
 /* @internal */
-export function Filter_register_output(this_arg: bigint, output: bigint): bigint {
+export function Filter_register_output(this_arg: bigint, output: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_Filter_register_output(this_arg, output);
-       return nativeResponseValue;
+       // debug statements here
 }
 /* @internal */
 export class LDKCOption_FilterZ {
@@ -5729,6 +6798,24 @@ export function CResult_LockedChannelMonitorNoneZ_get_err(owner: bigint): void {
        }
        const nativeResponseValue = wasm.TS_CResult_LockedChannelMonitorNoneZ_get_err(owner);
        // debug statements here
+}
+       // struct LDKOutPoint C2Tuple_OutPointCVec_MonitorUpdateIdZZ_get_a(LDKC2Tuple_OutPointCVec_MonitorUpdateIdZZ *NONNULL_PTR owner);
+/* @internal */
+export function C2Tuple_OutPointCVec_MonitorUpdateIdZZ_get_a(owner: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_OutPointCVec_MonitorUpdateIdZZ_get_a(owner);
+       return nativeResponseValue;
+}
+       // struct LDKCVec_MonitorUpdateIdZ C2Tuple_OutPointCVec_MonitorUpdateIdZZ_get_b(LDKC2Tuple_OutPointCVec_MonitorUpdateIdZZ *NONNULL_PTR owner);
+/* @internal */
+export function C2Tuple_OutPointCVec_MonitorUpdateIdZZ_get_b(owner: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_OutPointCVec_MonitorUpdateIdZZ_get_b(owner);
+       return nativeResponseValue;
 }
 /* @internal */
 export interface LDKMessageSendEventsProvider {
@@ -5736,7 +6823,7 @@ export interface LDKMessageSendEventsProvider {
 }
 
 /* @internal */
-export function LDKMessageSendEventsProvider_new(impl: LDKMessageSendEventsProvider): bigint {
+export function LDKMessageSendEventsProvider_new(impl: LDKMessageSendEventsProvider): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -5745,7 +6832,7 @@ export function LDKMessageSendEventsProvider_new(impl: LDKMessageSendEventsProvi
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKMessageSendEventsProvider_new(i);
+       return [wasm.TS_LDKMessageSendEventsProvider_new(i), i];
 }
        // LDKCVec_MessageSendEventZ MessageSendEventsProvider_get_and_clear_pending_msg_events LDKMessageSendEventsProvider *NONNULL_PTR this_arg
 /* @internal */
@@ -5757,12 +6844,38 @@ export function MessageSendEventsProvider_get_and_clear_pending_msg_events(this_
        return nativeResponseValue;
 }
 /* @internal */
+export interface LDKOnionMessageProvider {
+       next_onion_message_for_peer (peer_node_id: number): bigint;
+}
+
+/* @internal */
+export function LDKOnionMessageProvider_new(impl: LDKOnionMessageProvider): [bigint, number] {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       var new_obj_idx = js_objs.length;
+       for (var i = 0; i < js_objs.length; i++) {
+               if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
+       }
+       js_objs[i] = new WeakRef(impl);
+       return [wasm.TS_LDKOnionMessageProvider_new(i), i];
+}
+       // LDKOnionMessage OnionMessageProvider_next_onion_message_for_peer LDKOnionMessageProvider *NONNULL_PTR this_arg, struct LDKPublicKey peer_node_id
+/* @internal */
+export function OnionMessageProvider_next_onion_message_for_peer(this_arg: bigint, peer_node_id: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessageProvider_next_onion_message_for_peer(this_arg, peer_node_id);
+       return nativeResponseValue;
+}
+/* @internal */
 export interface LDKEventHandler {
        handle_event (event: bigint): void;
 }
 
 /* @internal */
-export function LDKEventHandler_new(impl: LDKEventHandler): bigint {
+export function LDKEventHandler_new(impl: LDKEventHandler): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -5771,9 +6884,9 @@ export function LDKEventHandler_new(impl: LDKEventHandler): bigint {
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKEventHandler_new(i);
+       return [wasm.TS_LDKEventHandler_new(i), i];
 }
-       // void EventHandler_handle_event LDKEventHandler *NONNULL_PTR this_arg, const struct LDKEvent *NONNULL_PTR event
+       // void EventHandler_handle_event LDKEventHandler *NONNULL_PTR this_arg, struct LDKEvent event
 /* @internal */
 export function EventHandler_handle_event(this_arg: bigint, event: bigint): void {
        if(!isWasmInitialized) {
@@ -5788,7 +6901,7 @@ export interface LDKEventsProvider {
 }
 
 /* @internal */
-export function LDKEventsProvider_new(impl: LDKEventsProvider): bigint {
+export function LDKEventsProvider_new(impl: LDKEventsProvider): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -5797,7 +6910,7 @@ export function LDKEventsProvider_new(impl: LDKEventsProvider): bigint {
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKEventsProvider_new(i);
+       return [wasm.TS_LDKEventsProvider_new(i), i];
 }
        // void EventsProvider_process_pending_events LDKEventsProvider *NONNULL_PTR this_arg, struct LDKEventHandler handler
 /* @internal */
@@ -5819,7 +6932,7 @@ export interface LDKScore {
 }
 
 /* @internal */
-export function LDKScore_new(impl: LDKScore): bigint {
+export function LDKScore_new(impl: LDKScore): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -5828,7 +6941,7 @@ export function LDKScore_new(impl: LDKScore): bigint {
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKScore_new(i);
+       return [wasm.TS_LDKScore_new(i), i];
 }
        // uint64_t Score_channel_penalty_msat LDKScore *NONNULL_PTR this_arg, uint64_t short_channel_id, const struct LDKNodeId *NONNULL_PTR source, const struct LDKNodeId *NONNULL_PTR target, struct LDKChannelUsage usage
 /* @internal */
@@ -5885,6 +6998,58 @@ export function Score_write(this_arg: bigint): number {
        return nativeResponseValue;
 }
 /* @internal */
+export interface LDKLockableScore {
+       lock (): bigint;
+}
+
+/* @internal */
+export function LDKLockableScore_new(impl: LDKLockableScore): [bigint, number] {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       var new_obj_idx = js_objs.length;
+       for (var i = 0; i < js_objs.length; i++) {
+               if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
+       }
+       js_objs[i] = new WeakRef(impl);
+       return [wasm.TS_LDKLockableScore_new(i), i];
+}
+       // LDKScore LockableScore_lock LDKLockableScore *NONNULL_PTR this_arg
+/* @internal */
+export function LockableScore_lock(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LockableScore_lock(this_arg);
+       return nativeResponseValue;
+}
+/* @internal */
+export interface LDKWriteableScore {
+       write (): number;
+}
+
+/* @internal */
+export function LDKWriteableScore_new(impl: LDKWriteableScore, LockableScore: number): [bigint, number] {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       var new_obj_idx = js_objs.length;
+       for (var i = 0; i < js_objs.length; i++) {
+               if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
+       }
+       js_objs[i] = new WeakRef(impl);
+       return [wasm.TS_LDKWriteableScore_new(i, LockableScore), i];
+}
+       // LDKCVec_u8Z WriteableScore_write LDKWriteableScore *NONNULL_PTR this_arg
+/* @internal */
+export function WriteableScore_write(this_arg: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_WriteableScore_write(this_arg);
+       return nativeResponseValue;
+}
+/* @internal */
 export interface LDKPersister {
        persist_manager (channel_manager: bigint): bigint;
        persist_graph (network_graph: bigint): bigint;
@@ -5892,7 +7057,7 @@ export interface LDKPersister {
 }
 
 /* @internal */
-export function LDKPersister_new(impl: LDKPersister): bigint {
+export function LDKPersister_new(impl: LDKPersister): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -5901,7 +7066,7 @@ export function LDKPersister_new(impl: LDKPersister): bigint {
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKPersister_new(i);
+       return [wasm.TS_LDKPersister_new(i), i];
 }
        // LDKCResult_NoneErrorZ Persister_persist_manager LDKPersister *NONNULL_PTR this_arg, const struct LDKChannelManager *NONNULL_PTR channel_manager
 /* @internal */
@@ -5921,7 +7086,7 @@ export function Persister_persist_graph(this_arg: bigint, network_graph: bigint)
        const nativeResponseValue = wasm.TS_Persister_persist_graph(this_arg, network_graph);
        return nativeResponseValue;
 }
-       // LDKCResult_NoneErrorZ Persister_persist_scorer LDKPersister *NONNULL_PTR this_arg, const struct LDKMultiThreadedLockableScore *NONNULL_PTR scorer
+       // LDKCResult_NoneErrorZ Persister_persist_scorer LDKPersister *NONNULL_PTR this_arg, const struct LDKWriteableScore *NONNULL_PTR scorer
 /* @internal */
 export function Persister_persist_scorer(this_arg: bigint, scorer: bigint): bigint {
        if(!isWasmInitialized) {
@@ -5931,6 +7096,32 @@ export function Persister_persist_scorer(this_arg: bigint, scorer: bigint): bigi
        return nativeResponseValue;
 }
 /* @internal */
+export interface LDKFutureCallback {
+       call (): void;
+}
+
+/* @internal */
+export function LDKFutureCallback_new(impl: LDKFutureCallback): [bigint, number] {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       var new_obj_idx = js_objs.length;
+       for (var i = 0; i < js_objs.length; i++) {
+               if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
+       }
+       js_objs[i] = new WeakRef(impl);
+       return [wasm.TS_LDKFutureCallback_new(i), i];
+}
+       // void FutureCallback_call LDKFutureCallback *NONNULL_PTR this_arg
+/* @internal */
+export function FutureCallback_call(this_arg: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_FutureCallback_call(this_arg);
+       // debug statements here
+}
+/* @internal */
 export interface LDKListen {
        filtered_block_connected (header: number, txdata: number, height: number): void;
        block_connected (block: number, height: number): void;
@@ -5938,7 +7129,7 @@ export interface LDKListen {
 }
 
 /* @internal */
-export function LDKListen_new(impl: LDKListen): bigint {
+export function LDKListen_new(impl: LDKListen): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -5947,7 +7138,7 @@ export function LDKListen_new(impl: LDKListen): bigint {
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKListen_new(i);
+       return [wasm.TS_LDKListen_new(i), i];
 }
        // void Listen_filtered_block_connected LDKListen *NONNULL_PTR this_arg, const uint8_t (*header)[80], struct LDKCVec_C2Tuple_usizeTransactionZZ txdata, uint32_t height
 /* @internal */
@@ -5985,7 +7176,7 @@ export interface LDKConfirm {
 }
 
 /* @internal */
-export function LDKConfirm_new(impl: LDKConfirm): bigint {
+export function LDKConfirm_new(impl: LDKConfirm): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -5994,7 +7185,7 @@ export function LDKConfirm_new(impl: LDKConfirm): bigint {
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKConfirm_new(i);
+       return [wasm.TS_LDKConfirm_new(i), i];
 }
        // void Confirm_transactions_confirmed LDKConfirm *NONNULL_PTR this_arg, const uint8_t (*header)[80], struct LDKCVec_C2Tuple_usizeTransactionZZ txdata, uint32_t height
 /* @internal */
@@ -6023,7 +7214,7 @@ export function Confirm_best_block_updated(this_arg: bigint, header: number, hei
        const nativeResponseValue = wasm.TS_Confirm_best_block_updated(this_arg, header, height);
        // debug statements here
 }
-       // LDKCVec_TxidZ Confirm_get_relevant_txids LDKConfirm *NONNULL_PTR this_arg
+       // LDKCVec_C2Tuple_TxidBlockHashZZ Confirm_get_relevant_txids LDKConfirm *NONNULL_PTR this_arg
 /* @internal */
 export function Confirm_get_relevant_txids(this_arg: bigint): number {
        if(!isWasmInitialized) {
@@ -6034,12 +7225,12 @@ export function Confirm_get_relevant_txids(this_arg: bigint): number {
 }
 /* @internal */
 export interface LDKPersist {
-       persist_new_channel (channel_id: bigint, data: bigint, update_id: bigint): bigint;
-       update_persisted_channel (channel_id: bigint, update: bigint, data: bigint, update_id: bigint): bigint;
+       persist_new_channel (channel_id: bigint, data: bigint, update_id: bigint): ChannelMonitorUpdateStatus;
+       update_persisted_channel (channel_id: bigint, update: bigint, data: bigint, update_id: bigint): ChannelMonitorUpdateStatus;
 }
 
 /* @internal */
-export function LDKPersist_new(impl: LDKPersist): bigint {
+export function LDKPersist_new(impl: LDKPersist): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -6048,20 +7239,20 @@ export function LDKPersist_new(impl: LDKPersist): bigint {
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKPersist_new(i);
+       return [wasm.TS_LDKPersist_new(i), i];
 }
-       // LDKCResult_NoneChannelMonitorUpdateErrZ Persist_persist_new_channel LDKPersist *NONNULL_PTR this_arg, struct LDKOutPoint channel_id, const struct LDKChannelMonitor *NONNULL_PTR data, struct LDKMonitorUpdateId update_id
+       // LDKChannelMonitorUpdateStatus Persist_persist_new_channel LDKPersist *NONNULL_PTR this_arg, struct LDKOutPoint channel_id, const struct LDKChannelMonitor *NONNULL_PTR data, struct LDKMonitorUpdateId update_id
 /* @internal */
-export function Persist_persist_new_channel(this_arg: bigint, channel_id: bigint, data: bigint, update_id: bigint): bigint {
+export function Persist_persist_new_channel(this_arg: bigint, channel_id: bigint, data: bigint, update_id: bigint): ChannelMonitorUpdateStatus {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_Persist_persist_new_channel(this_arg, channel_id, data, update_id);
        return nativeResponseValue;
 }
-       // LDKCResult_NoneChannelMonitorUpdateErrZ Persist_update_persisted_channel LDKPersist *NONNULL_PTR this_arg, struct LDKOutPoint channel_id, const struct LDKChannelMonitorUpdate *NONNULL_PTR update, const struct LDKChannelMonitor *NONNULL_PTR data, struct LDKMonitorUpdateId update_id
+       // LDKChannelMonitorUpdateStatus Persist_update_persisted_channel LDKPersist *NONNULL_PTR this_arg, struct LDKOutPoint channel_id, struct LDKChannelMonitorUpdate update, const struct LDKChannelMonitor *NONNULL_PTR data, struct LDKMonitorUpdateId update_id
 /* @internal */
-export function Persist_update_persisted_channel(this_arg: bigint, channel_id: bigint, update: bigint, data: bigint, update_id: bigint): bigint {
+export function Persist_update_persisted_channel(this_arg: bigint, channel_id: bigint, update: bigint, data: bigint, update_id: bigint): ChannelMonitorUpdateStatus {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -6069,13 +7260,33 @@ export function Persist_update_persisted_channel(this_arg: bigint, channel_id: b
        return nativeResponseValue;
 }
 /* @internal */
+export class LDKRetry {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKRetry_ty_from_ptr(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKRetry_ty_from_ptr(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
+export function LDKRetry_Attempts_get_attempts(ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_LDKRetry_Attempts_get_attempts(ptr);
+       return nativeResponseValue;
+}
+/* @internal */
 export interface LDKChannelMessageHandler {
-       handle_open_channel (their_node_id: number, their_features: bigint, msg: bigint): void;
-       handle_accept_channel (their_node_id: number, their_features: bigint, msg: bigint): void;
+       handle_open_channel (their_node_id: number, msg: bigint): void;
+       handle_accept_channel (their_node_id: number, msg: bigint): void;
        handle_funding_created (their_node_id: number, msg: bigint): void;
        handle_funding_signed (their_node_id: number, msg: bigint): void;
        handle_channel_ready (their_node_id: number, msg: bigint): void;
-       handle_shutdown (their_node_id: number, their_features: bigint, msg: bigint): void;
+       handle_shutdown (their_node_id: number, msg: bigint): void;
        handle_closing_signed (their_node_id: number, msg: bigint): void;
        handle_update_add_htlc (their_node_id: number, msg: bigint): void;
        handle_update_fulfill_htlc (their_node_id: number, msg: bigint): void;
@@ -6085,15 +7296,17 @@ export interface LDKChannelMessageHandler {
        handle_revoke_and_ack (their_node_id: number, msg: bigint): void;
        handle_update_fee (their_node_id: number, msg: bigint): void;
        handle_announcement_signatures (their_node_id: number, msg: bigint): void;
-       peer_disconnected (their_node_id: number, no_connection_possible: boolean): void;
-       peer_connected (their_node_id: number, msg: bigint): void;
+       peer_disconnected (their_node_id: number): void;
+       peer_connected (their_node_id: number, msg: bigint, inbound: boolean): bigint;
        handle_channel_reestablish (their_node_id: number, msg: bigint): void;
        handle_channel_update (their_node_id: number, msg: bigint): void;
        handle_error (their_node_id: number, msg: bigint): void;
+       provided_node_features (): bigint;
+       provided_init_features (their_node_id: number): bigint;
 }
 
 /* @internal */
-export function LDKChannelMessageHandler_new(impl: LDKChannelMessageHandler, MessageSendEventsProvider: LDKMessageSendEventsProvider): bigint {
+export function LDKChannelMessageHandler_new(impl: LDKChannelMessageHandler, MessageSendEventsProvider: number): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -6102,24 +7315,24 @@ export function LDKChannelMessageHandler_new(impl: LDKChannelMessageHandler, Mes
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKChannelMessageHandler_new(i);
+       return [wasm.TS_LDKChannelMessageHandler_new(i, MessageSendEventsProvider), i];
 }
-       // void ChannelMessageHandler_handle_open_channel LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, struct LDKInitFeatures their_features, const struct LDKOpenChannel *NONNULL_PTR msg
+       // void ChannelMessageHandler_handle_open_channel LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKOpenChannel *NONNULL_PTR msg
 /* @internal */
-export function ChannelMessageHandler_handle_open_channel(this_arg: bigint, their_node_id: number, their_features: bigint, msg: bigint): void {
+export function ChannelMessageHandler_handle_open_channel(this_arg: bigint, their_node_id: number, msg: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_open_channel(this_arg, their_node_id, their_features, msg);
+       const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_open_channel(this_arg, their_node_id, msg);
        // debug statements here
 }
-       // void ChannelMessageHandler_handle_accept_channel LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, struct LDKInitFeatures their_features, const struct LDKAcceptChannel *NONNULL_PTR msg
+       // void ChannelMessageHandler_handle_accept_channel LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKAcceptChannel *NONNULL_PTR msg
 /* @internal */
-export function ChannelMessageHandler_handle_accept_channel(this_arg: bigint, their_node_id: number, their_features: bigint, msg: bigint): void {
+export function ChannelMessageHandler_handle_accept_channel(this_arg: bigint, their_node_id: number, msg: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_accept_channel(this_arg, their_node_id, their_features, msg);
+       const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_accept_channel(this_arg, their_node_id, msg);
        // debug statements here
 }
        // void ChannelMessageHandler_handle_funding_created LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKFundingCreated *NONNULL_PTR msg
@@ -6149,13 +7362,13 @@ export function ChannelMessageHandler_handle_channel_ready(this_arg: bigint, the
        const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_channel_ready(this_arg, their_node_id, msg);
        // debug statements here
 }
-       // void ChannelMessageHandler_handle_shutdown LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKInitFeatures *NONNULL_PTR their_features, const struct LDKShutdown *NONNULL_PTR msg
+       // void ChannelMessageHandler_handle_shutdown LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKShutdown *NONNULL_PTR msg
 /* @internal */
-export function ChannelMessageHandler_handle_shutdown(this_arg: bigint, their_node_id: number, their_features: bigint, msg: bigint): void {
+export function ChannelMessageHandler_handle_shutdown(this_arg: bigint, their_node_id: number, msg: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_shutdown(this_arg, their_node_id, their_features, msg);
+       const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_shutdown(this_arg, their_node_id, msg);
        // debug statements here
 }
        // void ChannelMessageHandler_handle_closing_signed LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKClosingSigned *NONNULL_PTR msg
@@ -6239,23 +7452,23 @@ export function ChannelMessageHandler_handle_announcement_signatures(this_arg: b
        const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_announcement_signatures(this_arg, their_node_id, msg);
        // debug statements here
 }
-       // void ChannelMessageHandler_peer_disconnected LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, bool no_connection_possible
+       // void ChannelMessageHandler_peer_disconnected LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id
 /* @internal */
-export function ChannelMessageHandler_peer_disconnected(this_arg: bigint, their_node_id: number, no_connection_possible: boolean): void {
+export function ChannelMessageHandler_peer_disconnected(this_arg: bigint, their_node_id: number): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelMessageHandler_peer_disconnected(this_arg, their_node_id, no_connection_possible);
+       const nativeResponseValue = wasm.TS_ChannelMessageHandler_peer_disconnected(this_arg, their_node_id);
        // debug statements here
 }
-       // void ChannelMessageHandler_peer_connected LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKInit *NONNULL_PTR msg
+       // LDKCResult_NoneNoneZ ChannelMessageHandler_peer_connected LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKInit *NONNULL_PTR msg, bool inbound
 /* @internal */
-export function ChannelMessageHandler_peer_connected(this_arg: bigint, their_node_id: number, msg: bigint): void {
+export function ChannelMessageHandler_peer_connected(this_arg: bigint, their_node_id: number, msg: bigint, inbound: boolean): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelMessageHandler_peer_connected(this_arg, their_node_id, msg);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_ChannelMessageHandler_peer_connected(this_arg, their_node_id, msg, inbound);
+       return nativeResponseValue;
 }
        // void ChannelMessageHandler_handle_channel_reestablish LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKChannelReestablish *NONNULL_PTR msg
 /* @internal */
@@ -6283,23 +7496,44 @@ export function ChannelMessageHandler_handle_error(this_arg: bigint, their_node_
        }
        const nativeResponseValue = wasm.TS_ChannelMessageHandler_handle_error(this_arg, their_node_id, msg);
        // debug statements here
+}
+       // LDKNodeFeatures ChannelMessageHandler_provided_node_features LDKChannelMessageHandler *NONNULL_PTR this_arg
+/* @internal */
+export function ChannelMessageHandler_provided_node_features(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelMessageHandler_provided_node_features(this_arg);
+       return nativeResponseValue;
+}
+       // LDKInitFeatures ChannelMessageHandler_provided_init_features LDKChannelMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id
+/* @internal */
+export function ChannelMessageHandler_provided_init_features(this_arg: bigint, their_node_id: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelMessageHandler_provided_init_features(this_arg, their_node_id);
+       return nativeResponseValue;
 }
 /* @internal */
 export interface LDKRoutingMessageHandler {
        handle_node_announcement (msg: bigint): bigint;
        handle_channel_announcement (msg: bigint): bigint;
        handle_channel_update (msg: bigint): bigint;
-       get_next_channel_announcements (starting_point: bigint, batch_amount: number): number;
-       get_next_node_announcements (starting_point: number, batch_amount: number): number;
-       peer_connected (their_node_id: number, init: bigint): void;
+       get_next_channel_announcement (starting_point: bigint): bigint;
+       get_next_node_announcement (starting_point: bigint): bigint;
+       peer_connected (their_node_id: number, init: bigint, inbound: boolean): bigint;
        handle_reply_channel_range (their_node_id: number, msg: bigint): bigint;
        handle_reply_short_channel_ids_end (their_node_id: number, msg: bigint): bigint;
        handle_query_channel_range (their_node_id: number, msg: bigint): bigint;
        handle_query_short_channel_ids (their_node_id: number, msg: bigint): bigint;
+       processing_queue_high (): boolean;
+       provided_node_features (): bigint;
+       provided_init_features (their_node_id: number): bigint;
 }
 
 /* @internal */
-export function LDKRoutingMessageHandler_new(impl: LDKRoutingMessageHandler, MessageSendEventsProvider: LDKMessageSendEventsProvider): bigint {
+export function LDKRoutingMessageHandler_new(impl: LDKRoutingMessageHandler, MessageSendEventsProvider: number): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -6308,7 +7542,7 @@ export function LDKRoutingMessageHandler_new(impl: LDKRoutingMessageHandler, Mes
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKRoutingMessageHandler_new(i);
+       return [wasm.TS_LDKRoutingMessageHandler_new(i, MessageSendEventsProvider), i];
 }
        // LDKCResult_boolLightningErrorZ RoutingMessageHandler_handle_node_announcement LDKRoutingMessageHandler *NONNULL_PTR this_arg, const struct LDKNodeAnnouncement *NONNULL_PTR msg
 /* @internal */
@@ -6337,32 +7571,32 @@ export function RoutingMessageHandler_handle_channel_update(this_arg: bigint, ms
        const nativeResponseValue = wasm.TS_RoutingMessageHandler_handle_channel_update(this_arg, msg);
        return nativeResponseValue;
 }
-       // LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ RoutingMessageHandler_get_next_channel_announcements LDKRoutingMessageHandler *NONNULL_PTR this_arg, uint64_t starting_point, uint8_t batch_amount
+       // LDKCOption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ RoutingMessageHandler_get_next_channel_announcement LDKRoutingMessageHandler *NONNULL_PTR this_arg, uint64_t starting_point
 /* @internal */
-export function RoutingMessageHandler_get_next_channel_announcements(this_arg: bigint, starting_point: bigint, batch_amount: number): number {
+export function RoutingMessageHandler_get_next_channel_announcement(this_arg: bigint, starting_point: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_RoutingMessageHandler_get_next_channel_announcements(this_arg, starting_point, batch_amount);
+       const nativeResponseValue = wasm.TS_RoutingMessageHandler_get_next_channel_announcement(this_arg, starting_point);
        return nativeResponseValue;
 }
-       // LDKCVec_NodeAnnouncementZ RoutingMessageHandler_get_next_node_announcements LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey starting_point, uint8_t batch_amount
+       // LDKNodeAnnouncement RoutingMessageHandler_get_next_node_announcement LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKNodeId starting_point
 /* @internal */
-export function RoutingMessageHandler_get_next_node_announcements(this_arg: bigint, starting_point: number, batch_amount: number): number {
+export function RoutingMessageHandler_get_next_node_announcement(this_arg: bigint, starting_point: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_RoutingMessageHandler_get_next_node_announcements(this_arg, starting_point, batch_amount);
+       const nativeResponseValue = wasm.TS_RoutingMessageHandler_get_next_node_announcement(this_arg, starting_point);
        return nativeResponseValue;
 }
-       // void RoutingMessageHandler_peer_connected LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKInit *NONNULL_PTR init
+       // LDKCResult_NoneNoneZ RoutingMessageHandler_peer_connected LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKInit *NONNULL_PTR init, bool inbound
 /* @internal */
-export function RoutingMessageHandler_peer_connected(this_arg: bigint, their_node_id: number, init: bigint): void {
+export function RoutingMessageHandler_peer_connected(this_arg: bigint, their_node_id: number, init: bigint, inbound: boolean): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_RoutingMessageHandler_peer_connected(this_arg, their_node_id, init);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_RoutingMessageHandler_peer_connected(this_arg, their_node_id, init, inbound);
+       return nativeResponseValue;
 }
        // LDKCResult_NoneLightningErrorZ RoutingMessageHandler_handle_reply_channel_range LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, struct LDKReplyChannelRange msg
 /* @internal */
@@ -6399,6 +7633,99 @@ export function RoutingMessageHandler_handle_query_short_channel_ids(this_arg: b
        }
        const nativeResponseValue = wasm.TS_RoutingMessageHandler_handle_query_short_channel_ids(this_arg, their_node_id, msg);
        return nativeResponseValue;
+}
+       // bool RoutingMessageHandler_processing_queue_high LDKRoutingMessageHandler *NONNULL_PTR this_arg
+/* @internal */
+export function RoutingMessageHandler_processing_queue_high(this_arg: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_RoutingMessageHandler_processing_queue_high(this_arg);
+       return nativeResponseValue;
+}
+       // LDKNodeFeatures RoutingMessageHandler_provided_node_features LDKRoutingMessageHandler *NONNULL_PTR this_arg
+/* @internal */
+export function RoutingMessageHandler_provided_node_features(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_RoutingMessageHandler_provided_node_features(this_arg);
+       return nativeResponseValue;
+}
+       // LDKInitFeatures RoutingMessageHandler_provided_init_features LDKRoutingMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id
+/* @internal */
+export function RoutingMessageHandler_provided_init_features(this_arg: bigint, their_node_id: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_RoutingMessageHandler_provided_init_features(this_arg, their_node_id);
+       return nativeResponseValue;
+}
+/* @internal */
+export interface LDKOnionMessageHandler {
+       handle_onion_message (peer_node_id: number, msg: bigint): void;
+       peer_connected (their_node_id: number, init: bigint, inbound: boolean): bigint;
+       peer_disconnected (their_node_id: number): void;
+       provided_node_features (): bigint;
+       provided_init_features (their_node_id: number): bigint;
+}
+
+/* @internal */
+export function LDKOnionMessageHandler_new(impl: LDKOnionMessageHandler, OnionMessageProvider: number): [bigint, number] {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       var new_obj_idx = js_objs.length;
+       for (var i = 0; i < js_objs.length; i++) {
+               if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
+       }
+       js_objs[i] = new WeakRef(impl);
+       return [wasm.TS_LDKOnionMessageHandler_new(i, OnionMessageProvider), i];
+}
+       // void OnionMessageHandler_handle_onion_message LDKOnionMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey peer_node_id, const struct LDKOnionMessage *NONNULL_PTR msg
+/* @internal */
+export function OnionMessageHandler_handle_onion_message(this_arg: bigint, peer_node_id: number, msg: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessageHandler_handle_onion_message(this_arg, peer_node_id, msg);
+       // debug statements here
+}
+       // LDKCResult_NoneNoneZ OnionMessageHandler_peer_connected LDKOnionMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id, const struct LDKInit *NONNULL_PTR init, bool inbound
+/* @internal */
+export function OnionMessageHandler_peer_connected(this_arg: bigint, their_node_id: number, init: bigint, inbound: boolean): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessageHandler_peer_connected(this_arg, their_node_id, init, inbound);
+       return nativeResponseValue;
+}
+       // void OnionMessageHandler_peer_disconnected LDKOnionMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id
+/* @internal */
+export function OnionMessageHandler_peer_disconnected(this_arg: bigint, their_node_id: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessageHandler_peer_disconnected(this_arg, their_node_id);
+       // debug statements here
+}
+       // LDKNodeFeatures OnionMessageHandler_provided_node_features LDKOnionMessageHandler *NONNULL_PTR this_arg
+/* @internal */
+export function OnionMessageHandler_provided_node_features(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessageHandler_provided_node_features(this_arg);
+       return nativeResponseValue;
+}
+       // LDKInitFeatures OnionMessageHandler_provided_init_features LDKOnionMessageHandler *NONNULL_PTR this_arg, struct LDKPublicKey their_node_id
+/* @internal */
+export function OnionMessageHandler_provided_init_features(this_arg: bigint, their_node_id: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessageHandler_provided_init_features(this_arg, their_node_id);
+       return nativeResponseValue;
 }
 /* @internal */
 export interface LDKCustomMessageReader {
@@ -6406,7 +7733,7 @@ export interface LDKCustomMessageReader {
 }
 
 /* @internal */
-export function LDKCustomMessageReader_new(impl: LDKCustomMessageReader): bigint {
+export function LDKCustomMessageReader_new(impl: LDKCustomMessageReader): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -6415,7 +7742,7 @@ export function LDKCustomMessageReader_new(impl: LDKCustomMessageReader): bigint
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKCustomMessageReader_new(i);
+       return [wasm.TS_LDKCustomMessageReader_new(i), i];
 }
        // LDKCResult_COption_TypeZDecodeErrorZ CustomMessageReader_read LDKCustomMessageReader *NONNULL_PTR this_arg, uint16_t message_type, struct LDKu8slice buffer
 /* @internal */
@@ -6433,7 +7760,7 @@ export interface LDKCustomMessageHandler {
 }
 
 /* @internal */
-export function LDKCustomMessageHandler_new(impl: LDKCustomMessageHandler, CustomMessageReader: LDKCustomMessageReader): bigint {
+export function LDKCustomMessageHandler_new(impl: LDKCustomMessageHandler, CustomMessageReader: number): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -6442,7 +7769,7 @@ export function LDKCustomMessageHandler_new(impl: LDKCustomMessageHandler, Custo
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKCustomMessageHandler_new(i);
+       return [wasm.TS_LDKCustomMessageHandler_new(i, CustomMessageReader), i];
 }
        // LDKCResult_NoneLightningErrorZ CustomMessageHandler_handle_custom_message LDKCustomMessageHandler *NONNULL_PTR this_arg, struct LDKType msg, struct LDKPublicKey sender_node_id
 /* @internal */
@@ -6463,6 +7790,42 @@ export function CustomMessageHandler_get_and_clear_pending_msg(this_arg: bigint)
        return nativeResponseValue;
 }
 /* @internal */
+export interface LDKCustomOnionMessageHandler {
+       handle_custom_message (msg: bigint): void;
+       read_custom_message (message_type: bigint, buffer: number): bigint;
+}
+
+/* @internal */
+export function LDKCustomOnionMessageHandler_new(impl: LDKCustomOnionMessageHandler): [bigint, number] {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       var new_obj_idx = js_objs.length;
+       for (var i = 0; i < js_objs.length; i++) {
+               if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
+       }
+       js_objs[i] = new WeakRef(impl);
+       return [wasm.TS_LDKCustomOnionMessageHandler_new(i), i];
+}
+       // void CustomOnionMessageHandler_handle_custom_message LDKCustomOnionMessageHandler *NONNULL_PTR this_arg, struct LDKCustomOnionMessageContents msg
+/* @internal */
+export function CustomOnionMessageHandler_handle_custom_message(this_arg: bigint, msg: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CustomOnionMessageHandler_handle_custom_message(this_arg, msg);
+       // debug statements here
+}
+       // LDKCResult_COption_CustomOnionMessageContentsZDecodeErrorZ CustomOnionMessageHandler_read_custom_message LDKCustomOnionMessageHandler *NONNULL_PTR this_arg, uint64_t message_type, struct LDKu8slice buffer
+/* @internal */
+export function CustomOnionMessageHandler_read_custom_message(this_arg: bigint, message_type: bigint, buffer: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CustomOnionMessageHandler_read_custom_message(this_arg, message_type, buffer);
+       return nativeResponseValue;
+}
+/* @internal */
 export interface LDKSocketDescriptor {
        send_data (data: number, resume_read: boolean): number;
        disconnect_socket (): void;
@@ -6471,7 +7834,7 @@ export interface LDKSocketDescriptor {
 }
 
 /* @internal */
-export function LDKSocketDescriptor_new(impl: LDKSocketDescriptor): bigint {
+export function LDKSocketDescriptor_new(impl: LDKSocketDescriptor): [bigint, number] {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -6480,7 +7843,7 @@ export function LDKSocketDescriptor_new(impl: LDKSocketDescriptor): bigint {
                if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
        }
        js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKSocketDescriptor_new(i);
+       return [wasm.TS_LDKSocketDescriptor_new(i), i];
 }
        // uintptr_t SocketDescriptor_send_data LDKSocketDescriptor *NONNULL_PTR this_arg, struct LDKu8slice data, bool resume_read
 /* @internal */
@@ -6554,213 +7917,168 @@ export function LDKEffectiveCapacity_Total_get_htlc_maximum_msat(ptr: bigint): b
        return nativeResponseValue;
 }
 /* @internal */
-export interface LDKLockableScore {
-       lock (): bigint;
-}
-
-/* @internal */
-export function LDKLockableScore_new(impl: LDKLockableScore): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       var new_obj_idx = js_objs.length;
-       for (var i = 0; i < js_objs.length; i++) {
-               if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
-       }
-       js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKLockableScore_new(i);
+export class LDKDestination {
+       protected constructor() {}
 }
-       // LDKScore LockableScore_lock LDKLockableScore *NONNULL_PTR this_arg
 /* @internal */
-export function LockableScore_lock(this_arg: bigint): bigint {
+export function LDKDestination_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LockableScore_lock(this_arg);
+       const nativeResponseValue = wasm.TS_LDKDestination_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export class LDKFallback {
-       protected constructor() {}
-}
-/* @internal */
-export function LDKFallback_ty_from_ptr(ptr: bigint): number {
+export function LDKDestination_Node_get_node(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKFallback_ty_from_ptr(ptr);
+       const nativeResponseValue = wasm.TS_LDKDestination_Node_get_node(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKFallback_SegWitProgram_get_version(ptr: bigint): number {
+export function LDKDestination_BlindedPath_get_blinded_path(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKFallback_SegWitProgram_get_version(ptr);
+       const nativeResponseValue = wasm.TS_LDKDestination_BlindedPath_get_blinded_path(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKFallback_SegWitProgram_get_program(ptr: bigint): number {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_LDKFallback_SegWitProgram_get_program(ptr);
-       return nativeResponseValue;
+export class LDKOnionMessageContents {
+       protected constructor() {}
 }
 /* @internal */
-export function LDKFallback_PubKeyHash_get_pub_key_hash(ptr: bigint): number {
+export function LDKOnionMessageContents_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKFallback_PubKeyHash_get_pub_key_hash(ptr);
+       const nativeResponseValue = wasm.TS_LDKOnionMessageContents_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export function LDKFallback_ScriptHash_get_script_hash(ptr: bigint): number {
+export function LDKOnionMessageContents_Custom_get_custom(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKFallback_ScriptHash_get_script_hash(ptr);
+       const nativeResponseValue = wasm.TS_LDKOnionMessageContents_Custom_get_custom(ptr);
        return nativeResponseValue;
 }
 /* @internal */
-export interface LDKPayer {
-       node_id (): number;
-       first_hops (): number;
-       send_payment (route: bigint, payment_hash: number, payment_secret: number): bigint;
-       send_spontaneous_payment (route: bigint, payment_preimage: number): bigint;
-       retry_payment (route: bigint, payment_id: number): bigint;
-       abandon_payment (payment_id: number): void;
+export class LDKGossipSync {
+       protected constructor() {}
 }
-
 /* @internal */
-export function LDKPayer_new(impl: LDKPayer): bigint {
+export function LDKGossipSync_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       var new_obj_idx = js_objs.length;
-       for (var i = 0; i < js_objs.length; i++) {
-               if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
-       }
-       js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKPayer_new(i);
+       const nativeResponseValue = wasm.TS_LDKGossipSync_ty_from_ptr(ptr);
+       return nativeResponseValue;
 }
-       // LDKPublicKey Payer_node_id LDKPayer *NONNULL_PTR this_arg
 /* @internal */
-export function Payer_node_id(this_arg: bigint): number {
+export function LDKGossipSync_P2P_get_p2p(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Payer_node_id(this_arg);
+       const nativeResponseValue = wasm.TS_LDKGossipSync_P2P_get_p2p(ptr);
        return nativeResponseValue;
 }
-       // LDKCVec_ChannelDetailsZ Payer_first_hops LDKPayer *NONNULL_PTR this_arg
 /* @internal */
-export function Payer_first_hops(this_arg: bigint): number {
+export function LDKGossipSync_Rapid_get_rapid(ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Payer_first_hops(this_arg);
+       const nativeResponseValue = wasm.TS_LDKGossipSync_Rapid_get_rapid(ptr);
        return nativeResponseValue;
 }
-       // LDKCResult_PaymentIdPaymentSendFailureZ Payer_send_payment LDKPayer *NONNULL_PTR this_arg, const struct LDKRoute *NONNULL_PTR route, struct LDKThirtyTwoBytes payment_hash, struct LDKThirtyTwoBytes payment_secret
 /* @internal */
-export function Payer_send_payment(this_arg: bigint, route: bigint, payment_hash: number, payment_secret: number): bigint {
+export class LDKFallback {
+       protected constructor() {}
+}
+/* @internal */
+export function LDKFallback_ty_from_ptr(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Payer_send_payment(this_arg, route, payment_hash, payment_secret);
+       const nativeResponseValue = wasm.TS_LDKFallback_ty_from_ptr(ptr);
        return nativeResponseValue;
 }
-       // LDKCResult_PaymentIdPaymentSendFailureZ Payer_send_spontaneous_payment LDKPayer *NONNULL_PTR this_arg, const struct LDKRoute *NONNULL_PTR route, struct LDKThirtyTwoBytes payment_preimage
 /* @internal */
-export function Payer_send_spontaneous_payment(this_arg: bigint, route: bigint, payment_preimage: number): bigint {
+export function LDKFallback_SegWitProgram_get_version(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Payer_send_spontaneous_payment(this_arg, route, payment_preimage);
+       const nativeResponseValue = wasm.TS_LDKFallback_SegWitProgram_get_version(ptr);
        return nativeResponseValue;
 }
-       // LDKCResult_NonePaymentSendFailureZ Payer_retry_payment LDKPayer *NONNULL_PTR this_arg, const struct LDKRoute *NONNULL_PTR route, struct LDKThirtyTwoBytes payment_id
 /* @internal */
-export function Payer_retry_payment(this_arg: bigint, route: bigint, payment_id: number): bigint {
+export function LDKFallback_SegWitProgram_get_program(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Payer_retry_payment(this_arg, route, payment_id);
+       const nativeResponseValue = wasm.TS_LDKFallback_SegWitProgram_get_program(ptr);
        return nativeResponseValue;
 }
-       // void Payer_abandon_payment LDKPayer *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes payment_id
 /* @internal */
-export function Payer_abandon_payment(this_arg: bigint, payment_id: number): void {
+export function LDKFallback_PubKeyHash_get_pub_key_hash(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Payer_abandon_payment(this_arg, payment_id);
-       // debug statements here
-}
-/* @internal */
-export interface LDKRouter {
-       find_route (payer: number, route_params: bigint, payment_hash: number, first_hops: number, scorer: bigint): bigint;
+       const nativeResponseValue = wasm.TS_LDKFallback_PubKeyHash_get_pub_key_hash(ptr);
+       return nativeResponseValue;
 }
-
 /* @internal */
-export function LDKRouter_new(impl: LDKRouter): bigint {
+export function LDKFallback_ScriptHash_get_script_hash(ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       var new_obj_idx = js_objs.length;
-       for (var i = 0; i < js_objs.length; i++) {
-               if (js_objs[i] == null || js_objs[i] == undefined) { new_obj_idx = i; break; }
-       }
-       js_objs[i] = new WeakRef(impl);
-       return wasm.TS_LDKRouter_new(i);
+       const nativeResponseValue = wasm.TS_LDKFallback_ScriptHash_get_script_hash(ptr);
+       return nativeResponseValue;
 }
-       // LDKCResult_RouteLightningErrorZ Router_find_route LDKRouter *NONNULL_PTR this_arg, struct LDKPublicKey payer, const struct LDKRouteParameters *NONNULL_PTR route_params, const uint8_t (*payment_hash)[32], struct LDKCVec_ChannelDetailsZ *first_hops, const struct LDKScore *NONNULL_PTR scorer
+       // struct LDKStr _ldk_get_compiled_version(void);
 /* @internal */
-export function Router_find_route(this_arg: bigint, payer: number, route_params: bigint, payment_hash: number, first_hops: number, scorer: bigint): bigint {
+export function _ldk_get_compiled_version(): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Router_find_route(this_arg, payer, route_params, payment_hash, first_hops, scorer);
+       const nativeResponseValue = wasm.TS__ldk_get_compiled_version();
        return nativeResponseValue;
 }
+       // struct LDKStr _ldk_c_bindings_get_compiled_version(void);
 /* @internal */
-export class LDKRetry {
-       protected constructor() {}
-}
-/* @internal */
-export function LDKRetry_ty_from_ptr(ptr: bigint): number {
+export function _ldk_c_bindings_get_compiled_version(): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKRetry_ty_from_ptr(ptr);
+       const nativeResponseValue = wasm.TS__ldk_c_bindings_get_compiled_version();
        return nativeResponseValue;
 }
+       // struct LDKSixteenBytes U128_le_bytes(struct LDKU128 val);
 /* @internal */
-export function LDKRetry_Attempts_get_attempts(ptr: bigint): number {
+export function U128_le_bytes(val: number): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_LDKRetry_Attempts_get_attempts(ptr);
+       const nativeResponseValue = wasm.TS_U128_le_bytes(val);
        return nativeResponseValue;
 }
-       // struct LDKStr _ldk_get_compiled_version(void);
+       // struct LDKU128 U128_new(struct LDKSixteenBytes le_bytes);
 /* @internal */
-export function _ldk_get_compiled_version(): number {
+export function U128_new(le_bytes: number): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS__ldk_get_compiled_version();
+       const nativeResponseValue = wasm.TS_U128_new(le_bytes);
        return nativeResponseValue;
 }
-       // struct LDKStr _ldk_c_bindings_get_compiled_version(void);
+       // struct LDKBigEndianScalar BigEndianScalar_new(struct LDKThirtyTwoBytes big_endian_bytes);
 /* @internal */
-export function _ldk_c_bindings_get_compiled_version(): number {
+export function BigEndianScalar_new(big_endian_bytes: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS__ldk_c_bindings_get_compiled_version();
+       const nativeResponseValue = wasm.TS_BigEndianScalar_new(big_endian_bytes);
        return nativeResponseValue;
 }
        // uint64_t Bech32Error_clone_ptr(LDKBech32Error *NONNULL_PTR arg);
@@ -6798,6 +8116,15 @@ export function Transaction_free(_res: number): void {
        }
        const nativeResponseValue = wasm.TS_Transaction_free(_res);
        // debug statements here
+}
+       // void Witness_free(struct LDKWitness _res);
+/* @internal */
+export function Witness_free(_res: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Witness_free(_res);
+       // debug statements here
 }
        // struct LDKTxOut TxOut_new(struct LDKCVec_u8Z script_pubkey, uint64_t value);
 /* @internal */
@@ -6843,6 +8170,105 @@ export function Str_free(_res: number): void {
        }
        const nativeResponseValue = wasm.TS_Str_free(_res);
        // debug statements here
+}
+       // struct LDKCResult_NoneAPIErrorZ CResult_NoneAPIErrorZ_ok(void);
+/* @internal */
+export function CResult_NoneAPIErrorZ_ok(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_ok();
+       return nativeResponseValue;
+}
+       // struct LDKCResult_NoneAPIErrorZ CResult_NoneAPIErrorZ_err(struct LDKAPIError e);
+/* @internal */
+export function CResult_NoneAPIErrorZ_err(e: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_err(e);
+       return nativeResponseValue;
+}
+       // bool CResult_NoneAPIErrorZ_is_ok(const struct LDKCResult_NoneAPIErrorZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_NoneAPIErrorZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_NoneAPIErrorZ_free(struct LDKCResult_NoneAPIErrorZ _res);
+/* @internal */
+export function CResult_NoneAPIErrorZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_free(_res);
+       // debug statements here
+}
+       // uint64_t CResult_NoneAPIErrorZ_clone_ptr(LDKCResult_NoneAPIErrorZ *NONNULL_PTR arg);
+/* @internal */
+export function CResult_NoneAPIErrorZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_NoneAPIErrorZ CResult_NoneAPIErrorZ_clone(const struct LDKCResult_NoneAPIErrorZ *NONNULL_PTR orig);
+/* @internal */
+export function CResult_NoneAPIErrorZ_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_clone(orig);
+       return nativeResponseValue;
+}
+       // void CVec_CResult_NoneAPIErrorZZ_free(struct LDKCVec_CResult_NoneAPIErrorZZ _res);
+/* @internal */
+export function CVec_CResult_NoneAPIErrorZZ_free(_res: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CVec_CResult_NoneAPIErrorZZ_free(_res);
+       // debug statements here
+}
+       // void CVec_APIErrorZ_free(struct LDKCVec_APIErrorZ _res);
+/* @internal */
+export function CVec_APIErrorZ_free(_res: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CVec_APIErrorZ_free(_res);
+       // debug statements here
+}
+       // struct LDKCOption_HTLCClaimZ COption_HTLCClaimZ_some(enum LDKHTLCClaim o);
+/* @internal */
+export function COption_HTLCClaimZ_some(o: HTLCClaim): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_HTLCClaimZ_some(o);
+       return nativeResponseValue;
+}
+       // struct LDKCOption_HTLCClaimZ COption_HTLCClaimZ_none(void);
+/* @internal */
+export function COption_HTLCClaimZ_none(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_HTLCClaimZ_none();
+       return nativeResponseValue;
+}
+       // void COption_HTLCClaimZ_free(struct LDKCOption_HTLCClaimZ _res);
+/* @internal */
+export function COption_HTLCClaimZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_HTLCClaimZ_free(_res);
+       // debug statements here
 }
        // struct LDKCResult_NoneNoneZ CResult_NoneNoneZ_ok(void);
 /* @internal */
@@ -6951,114 +8377,6 @@ export function CResult_CounterpartyCommitmentSecretsDecodeErrorZ_clone(orig: bi
        }
        const nativeResponseValue = wasm.TS_CResult_CounterpartyCommitmentSecretsDecodeErrorZ_clone(orig);
        return nativeResponseValue;
-}
-       // struct LDKCResult_SecretKeyErrorZ CResult_SecretKeyErrorZ_ok(struct LDKSecretKey o);
-/* @internal */
-export function CResult_SecretKeyErrorZ_ok(o: number): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_SecretKeyErrorZ_ok(o);
-       return nativeResponseValue;
-}
-       // struct LDKCResult_SecretKeyErrorZ CResult_SecretKeyErrorZ_err(enum LDKSecp256k1Error e);
-/* @internal */
-export function CResult_SecretKeyErrorZ_err(e: Secp256k1Error): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_SecretKeyErrorZ_err(e);
-       return nativeResponseValue;
-}
-       // bool CResult_SecretKeyErrorZ_is_ok(const struct LDKCResult_SecretKeyErrorZ *NONNULL_PTR o);
-/* @internal */
-export function CResult_SecretKeyErrorZ_is_ok(o: bigint): boolean {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_SecretKeyErrorZ_is_ok(o);
-       return nativeResponseValue;
-}
-       // void CResult_SecretKeyErrorZ_free(struct LDKCResult_SecretKeyErrorZ _res);
-/* @internal */
-export function CResult_SecretKeyErrorZ_free(_res: bigint): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_SecretKeyErrorZ_free(_res);
-       // debug statements here
-}
-       // uint64_t CResult_SecretKeyErrorZ_clone_ptr(LDKCResult_SecretKeyErrorZ *NONNULL_PTR arg);
-/* @internal */
-export function CResult_SecretKeyErrorZ_clone_ptr(arg: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_SecretKeyErrorZ_clone_ptr(arg);
-       return nativeResponseValue;
-}
-       // struct LDKCResult_SecretKeyErrorZ CResult_SecretKeyErrorZ_clone(const struct LDKCResult_SecretKeyErrorZ *NONNULL_PTR orig);
-/* @internal */
-export function CResult_SecretKeyErrorZ_clone(orig: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_SecretKeyErrorZ_clone(orig);
-       return nativeResponseValue;
-}
-       // struct LDKCResult_PublicKeyErrorZ CResult_PublicKeyErrorZ_ok(struct LDKPublicKey o);
-/* @internal */
-export function CResult_PublicKeyErrorZ_ok(o: number): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_ok(o);
-       return nativeResponseValue;
-}
-       // struct LDKCResult_PublicKeyErrorZ CResult_PublicKeyErrorZ_err(enum LDKSecp256k1Error e);
-/* @internal */
-export function CResult_PublicKeyErrorZ_err(e: Secp256k1Error): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_err(e);
-       return nativeResponseValue;
-}
-       // bool CResult_PublicKeyErrorZ_is_ok(const struct LDKCResult_PublicKeyErrorZ *NONNULL_PTR o);
-/* @internal */
-export function CResult_PublicKeyErrorZ_is_ok(o: bigint): boolean {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_is_ok(o);
-       return nativeResponseValue;
-}
-       // void CResult_PublicKeyErrorZ_free(struct LDKCResult_PublicKeyErrorZ _res);
-/* @internal */
-export function CResult_PublicKeyErrorZ_free(_res: bigint): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_free(_res);
-       // debug statements here
-}
-       // uint64_t CResult_PublicKeyErrorZ_clone_ptr(LDKCResult_PublicKeyErrorZ *NONNULL_PTR arg);
-/* @internal */
-export function CResult_PublicKeyErrorZ_clone_ptr(arg: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_clone_ptr(arg);
-       return nativeResponseValue;
-}
-       // struct LDKCResult_PublicKeyErrorZ CResult_PublicKeyErrorZ_clone(const struct LDKCResult_PublicKeyErrorZ *NONNULL_PTR orig);
-/* @internal */
-export function CResult_PublicKeyErrorZ_clone(orig: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_clone(orig);
-       return nativeResponseValue;
 }
        // struct LDKCResult_TxCreationKeysDecodeErrorZ CResult_TxCreationKeysDecodeErrorZ_ok(struct LDKTxCreationKeys o);
 /* @internal */
@@ -7167,60 +8485,6 @@ export function CResult_ChannelPublicKeysDecodeErrorZ_clone(orig: bigint): bigin
        }
        const nativeResponseValue = wasm.TS_CResult_ChannelPublicKeysDecodeErrorZ_clone(orig);
        return nativeResponseValue;
-}
-       // struct LDKCResult_TxCreationKeysErrorZ CResult_TxCreationKeysErrorZ_ok(struct LDKTxCreationKeys o);
-/* @internal */
-export function CResult_TxCreationKeysErrorZ_ok(o: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_TxCreationKeysErrorZ_ok(o);
-       return nativeResponseValue;
-}
-       // struct LDKCResult_TxCreationKeysErrorZ CResult_TxCreationKeysErrorZ_err(enum LDKSecp256k1Error e);
-/* @internal */
-export function CResult_TxCreationKeysErrorZ_err(e: Secp256k1Error): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_TxCreationKeysErrorZ_err(e);
-       return nativeResponseValue;
-}
-       // bool CResult_TxCreationKeysErrorZ_is_ok(const struct LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR o);
-/* @internal */
-export function CResult_TxCreationKeysErrorZ_is_ok(o: bigint): boolean {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_TxCreationKeysErrorZ_is_ok(o);
-       return nativeResponseValue;
-}
-       // void CResult_TxCreationKeysErrorZ_free(struct LDKCResult_TxCreationKeysErrorZ _res);
-/* @internal */
-export function CResult_TxCreationKeysErrorZ_free(_res: bigint): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_TxCreationKeysErrorZ_free(_res);
-       // debug statements here
-}
-       // uint64_t CResult_TxCreationKeysErrorZ_clone_ptr(LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR arg);
-/* @internal */
-export function CResult_TxCreationKeysErrorZ_clone_ptr(arg: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_TxCreationKeysErrorZ_clone_ptr(arg);
-       return nativeResponseValue;
-}
-       // struct LDKCResult_TxCreationKeysErrorZ CResult_TxCreationKeysErrorZ_clone(const struct LDKCResult_TxCreationKeysErrorZ *NONNULL_PTR orig);
-/* @internal */
-export function CResult_TxCreationKeysErrorZ_clone(orig: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_TxCreationKeysErrorZ_clone(orig);
-       return nativeResponseValue;
 }
        // struct LDKCOption_u32Z COption_u32Z_some(uint32_t o);
 /* @internal */
@@ -7860,6 +9124,348 @@ export function CResult_ShutdownScriptInvalidShutdownScriptZ_clone(orig: bigint)
        }
        const nativeResponseValue = wasm.TS_CResult_ShutdownScriptInvalidShutdownScriptZ_clone(orig);
        return nativeResponseValue;
+}
+       // void CVec_PublicKeyZ_free(struct LDKCVec_PublicKeyZ _res);
+/* @internal */
+export function CVec_PublicKeyZ_free(_res: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CVec_PublicKeyZ_free(_res);
+       // debug statements here
+}
+       // struct LDKCResult_BlindedPathNoneZ CResult_BlindedPathNoneZ_ok(struct LDKBlindedPath o);
+/* @internal */
+export function CResult_BlindedPathNoneZ_ok(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedPathNoneZ_ok(o);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_BlindedPathNoneZ CResult_BlindedPathNoneZ_err(void);
+/* @internal */
+export function CResult_BlindedPathNoneZ_err(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedPathNoneZ_err();
+       return nativeResponseValue;
+}
+       // bool CResult_BlindedPathNoneZ_is_ok(const struct LDKCResult_BlindedPathNoneZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_BlindedPathNoneZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedPathNoneZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_BlindedPathNoneZ_free(struct LDKCResult_BlindedPathNoneZ _res);
+/* @internal */
+export function CResult_BlindedPathNoneZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedPathNoneZ_free(_res);
+       // debug statements here
+}
+       // uint64_t CResult_BlindedPathNoneZ_clone_ptr(LDKCResult_BlindedPathNoneZ *NONNULL_PTR arg);
+/* @internal */
+export function CResult_BlindedPathNoneZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedPathNoneZ_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_BlindedPathNoneZ CResult_BlindedPathNoneZ_clone(const struct LDKCResult_BlindedPathNoneZ *NONNULL_PTR orig);
+/* @internal */
+export function CResult_BlindedPathNoneZ_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedPathNoneZ_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_BlindedPathDecodeErrorZ CResult_BlindedPathDecodeErrorZ_ok(struct LDKBlindedPath o);
+/* @internal */
+export function CResult_BlindedPathDecodeErrorZ_ok(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedPathDecodeErrorZ_ok(o);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_BlindedPathDecodeErrorZ CResult_BlindedPathDecodeErrorZ_err(struct LDKDecodeError e);
+/* @internal */
+export function CResult_BlindedPathDecodeErrorZ_err(e: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedPathDecodeErrorZ_err(e);
+       return nativeResponseValue;
+}
+       // bool CResult_BlindedPathDecodeErrorZ_is_ok(const struct LDKCResult_BlindedPathDecodeErrorZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_BlindedPathDecodeErrorZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedPathDecodeErrorZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_BlindedPathDecodeErrorZ_free(struct LDKCResult_BlindedPathDecodeErrorZ _res);
+/* @internal */
+export function CResult_BlindedPathDecodeErrorZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedPathDecodeErrorZ_free(_res);
+       // debug statements here
+}
+       // uint64_t CResult_BlindedPathDecodeErrorZ_clone_ptr(LDKCResult_BlindedPathDecodeErrorZ *NONNULL_PTR arg);
+/* @internal */
+export function CResult_BlindedPathDecodeErrorZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedPathDecodeErrorZ_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_BlindedPathDecodeErrorZ CResult_BlindedPathDecodeErrorZ_clone(const struct LDKCResult_BlindedPathDecodeErrorZ *NONNULL_PTR orig);
+/* @internal */
+export function CResult_BlindedPathDecodeErrorZ_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedPathDecodeErrorZ_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_BlindedHopDecodeErrorZ CResult_BlindedHopDecodeErrorZ_ok(struct LDKBlindedHop o);
+/* @internal */
+export function CResult_BlindedHopDecodeErrorZ_ok(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedHopDecodeErrorZ_ok(o);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_BlindedHopDecodeErrorZ CResult_BlindedHopDecodeErrorZ_err(struct LDKDecodeError e);
+/* @internal */
+export function CResult_BlindedHopDecodeErrorZ_err(e: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedHopDecodeErrorZ_err(e);
+       return nativeResponseValue;
+}
+       // bool CResult_BlindedHopDecodeErrorZ_is_ok(const struct LDKCResult_BlindedHopDecodeErrorZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_BlindedHopDecodeErrorZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedHopDecodeErrorZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_BlindedHopDecodeErrorZ_free(struct LDKCResult_BlindedHopDecodeErrorZ _res);
+/* @internal */
+export function CResult_BlindedHopDecodeErrorZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedHopDecodeErrorZ_free(_res);
+       // debug statements here
+}
+       // uint64_t CResult_BlindedHopDecodeErrorZ_clone_ptr(LDKCResult_BlindedHopDecodeErrorZ *NONNULL_PTR arg);
+/* @internal */
+export function CResult_BlindedHopDecodeErrorZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedHopDecodeErrorZ_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_BlindedHopDecodeErrorZ CResult_BlindedHopDecodeErrorZ_clone(const struct LDKCResult_BlindedHopDecodeErrorZ *NONNULL_PTR orig);
+/* @internal */
+export function CResult_BlindedHopDecodeErrorZ_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedHopDecodeErrorZ_clone(orig);
+       return nativeResponseValue;
+}
+       // void CVec_ChannelDetailsZ_free(struct LDKCVec_ChannelDetailsZ _res);
+/* @internal */
+export function CVec_ChannelDetailsZ_free(_res: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CVec_ChannelDetailsZ_free(_res);
+       // debug statements here
+}
+       // struct LDKCResult_RouteLightningErrorZ CResult_RouteLightningErrorZ_ok(struct LDKRoute o);
+/* @internal */
+export function CResult_RouteLightningErrorZ_ok(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_ok(o);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_RouteLightningErrorZ CResult_RouteLightningErrorZ_err(struct LDKLightningError e);
+/* @internal */
+export function CResult_RouteLightningErrorZ_err(e: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_err(e);
+       return nativeResponseValue;
+}
+       // bool CResult_RouteLightningErrorZ_is_ok(const struct LDKCResult_RouteLightningErrorZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_RouteLightningErrorZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_RouteLightningErrorZ_free(struct LDKCResult_RouteLightningErrorZ _res);
+/* @internal */
+export function CResult_RouteLightningErrorZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_free(_res);
+       // debug statements here
+}
+       // uint64_t CResult_RouteLightningErrorZ_clone_ptr(LDKCResult_RouteLightningErrorZ *NONNULL_PTR arg);
+/* @internal */
+export function CResult_RouteLightningErrorZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_RouteLightningErrorZ CResult_RouteLightningErrorZ_clone(const struct LDKCResult_RouteLightningErrorZ *NONNULL_PTR orig);
+/* @internal */
+export function CResult_RouteLightningErrorZ_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_clone(orig);
+       return nativeResponseValue;
+}
+       // void CVec_RouteHopZ_free(struct LDKCVec_RouteHopZ _res);
+/* @internal */
+export function CVec_RouteHopZ_free(_res: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CVec_RouteHopZ_free(_res);
+       // debug statements here
+}
+       // struct LDKCOption_u64Z COption_u64Z_some(uint64_t o);
+/* @internal */
+export function COption_u64Z_some(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_u64Z_some(o);
+       return nativeResponseValue;
+}
+       // struct LDKCOption_u64Z COption_u64Z_none(void);
+/* @internal */
+export function COption_u64Z_none(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_u64Z_none();
+       return nativeResponseValue;
+}
+       // void COption_u64Z_free(struct LDKCOption_u64Z _res);
+/* @internal */
+export function COption_u64Z_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_u64Z_free(_res);
+       // debug statements here
+}
+       // uint64_t COption_u64Z_clone_ptr(LDKCOption_u64Z *NONNULL_PTR arg);
+/* @internal */
+export function COption_u64Z_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_u64Z_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKCOption_u64Z COption_u64Z_clone(const struct LDKCOption_u64Z *NONNULL_PTR orig);
+/* @internal */
+export function COption_u64Z_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_u64Z_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_InFlightHtlcsDecodeErrorZ CResult_InFlightHtlcsDecodeErrorZ_ok(struct LDKInFlightHtlcs o);
+/* @internal */
+export function CResult_InFlightHtlcsDecodeErrorZ_ok(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_InFlightHtlcsDecodeErrorZ_ok(o);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_InFlightHtlcsDecodeErrorZ CResult_InFlightHtlcsDecodeErrorZ_err(struct LDKDecodeError e);
+/* @internal */
+export function CResult_InFlightHtlcsDecodeErrorZ_err(e: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_InFlightHtlcsDecodeErrorZ_err(e);
+       return nativeResponseValue;
+}
+       // bool CResult_InFlightHtlcsDecodeErrorZ_is_ok(const struct LDKCResult_InFlightHtlcsDecodeErrorZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_InFlightHtlcsDecodeErrorZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_InFlightHtlcsDecodeErrorZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_InFlightHtlcsDecodeErrorZ_free(struct LDKCResult_InFlightHtlcsDecodeErrorZ _res);
+/* @internal */
+export function CResult_InFlightHtlcsDecodeErrorZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_InFlightHtlcsDecodeErrorZ_free(_res);
+       // debug statements here
+}
+       // uint64_t CResult_InFlightHtlcsDecodeErrorZ_clone_ptr(LDKCResult_InFlightHtlcsDecodeErrorZ *NONNULL_PTR arg);
+/* @internal */
+export function CResult_InFlightHtlcsDecodeErrorZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_InFlightHtlcsDecodeErrorZ_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_InFlightHtlcsDecodeErrorZ CResult_InFlightHtlcsDecodeErrorZ_clone(const struct LDKCResult_InFlightHtlcsDecodeErrorZ *NONNULL_PTR orig);
+/* @internal */
+export function CResult_InFlightHtlcsDecodeErrorZ_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_InFlightHtlcsDecodeErrorZ_clone(orig);
+       return nativeResponseValue;
 }
        // struct LDKCResult_RouteHopDecodeErrorZ CResult_RouteHopDecodeErrorZ_ok(struct LDKRouteHop o);
 /* @internal */
@@ -7914,15 +9520,6 @@ export function CResult_RouteHopDecodeErrorZ_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_CResult_RouteHopDecodeErrorZ_clone(orig);
        return nativeResponseValue;
-}
-       // void CVec_RouteHopZ_free(struct LDKCVec_RouteHopZ _res);
-/* @internal */
-export function CVec_RouteHopZ_free(_res: number): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CVec_RouteHopZ_free(_res);
-       // debug statements here
 }
        // void CVec_CVec_RouteHopZZ_free(struct LDKCVec_CVec_RouteHopZZ _res);
 /* @internal */
@@ -8049,51 +9646,6 @@ export function CVec_RouteHintZ_free(_res: number): void {
        }
        const nativeResponseValue = wasm.TS_CVec_RouteHintZ_free(_res);
        // debug statements here
-}
-       // struct LDKCOption_u64Z COption_u64Z_some(uint64_t o);
-/* @internal */
-export function COption_u64Z_some(o: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_COption_u64Z_some(o);
-       return nativeResponseValue;
-}
-       // struct LDKCOption_u64Z COption_u64Z_none(void);
-/* @internal */
-export function COption_u64Z_none(): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_COption_u64Z_none();
-       return nativeResponseValue;
-}
-       // void COption_u64Z_free(struct LDKCOption_u64Z _res);
-/* @internal */
-export function COption_u64Z_free(_res: bigint): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_COption_u64Z_free(_res);
-       // debug statements here
-}
-       // uint64_t COption_u64Z_clone_ptr(LDKCOption_u64Z *NONNULL_PTR arg);
-/* @internal */
-export function COption_u64Z_clone_ptr(arg: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_COption_u64Z_clone_ptr(arg);
-       return nativeResponseValue;
-}
-       // struct LDKCOption_u64Z COption_u64Z_clone(const struct LDKCOption_u64Z *NONNULL_PTR orig);
-/* @internal */
-export function COption_u64Z_clone(orig: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_COption_u64Z_clone(orig);
-       return nativeResponseValue;
 }
        // void CVec_u64Z_free(struct LDKCVec_u64Z _res);
 /* @internal */
@@ -8275,130 +9827,202 @@ export function CResult_RouteHintHopDecodeErrorZ_clone(orig: bigint): bigint {
        const nativeResponseValue = wasm.TS_CResult_RouteHintHopDecodeErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // void CVec_ChannelDetailsZ_free(struct LDKCVec_ChannelDetailsZ _res);
+       // struct LDKCResult_PaymentPurposeDecodeErrorZ CResult_PaymentPurposeDecodeErrorZ_ok(struct LDKPaymentPurpose o);
 /* @internal */
-export function CVec_ChannelDetailsZ_free(_res: number): void {
+export function CResult_PaymentPurposeDecodeErrorZ_ok(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CVec_ChannelDetailsZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_PaymentPurposeDecodeErrorZ_ok(o);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_PaymentPurposeDecodeErrorZ CResult_PaymentPurposeDecodeErrorZ_err(struct LDKDecodeError e);
+/* @internal */
+export function CResult_PaymentPurposeDecodeErrorZ_err(e: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PaymentPurposeDecodeErrorZ_err(e);
+       return nativeResponseValue;
+}
+       // bool CResult_PaymentPurposeDecodeErrorZ_is_ok(const struct LDKCResult_PaymentPurposeDecodeErrorZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_PaymentPurposeDecodeErrorZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PaymentPurposeDecodeErrorZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_PaymentPurposeDecodeErrorZ_free(struct LDKCResult_PaymentPurposeDecodeErrorZ _res);
+/* @internal */
+export function CResult_PaymentPurposeDecodeErrorZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PaymentPurposeDecodeErrorZ_free(_res);
        // debug statements here
 }
-       // struct LDKCResult_RouteLightningErrorZ CResult_RouteLightningErrorZ_ok(struct LDKRoute o);
+       // uint64_t CResult_PaymentPurposeDecodeErrorZ_clone_ptr(LDKCResult_PaymentPurposeDecodeErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_RouteLightningErrorZ_ok(o: bigint): bigint {
+export function CResult_PaymentPurposeDecodeErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_PaymentPurposeDecodeErrorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_RouteLightningErrorZ CResult_RouteLightningErrorZ_err(struct LDKLightningError e);
+       // struct LDKCResult_PaymentPurposeDecodeErrorZ CResult_PaymentPurposeDecodeErrorZ_clone(const struct LDKCResult_PaymentPurposeDecodeErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_RouteLightningErrorZ_err(e: bigint): bigint {
+export function CResult_PaymentPurposeDecodeErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_CResult_PaymentPurposeDecodeErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // bool CResult_RouteLightningErrorZ_is_ok(const struct LDKCResult_RouteLightningErrorZ *NONNULL_PTR o);
+       // struct LDKCOption_NetworkUpdateZ COption_NetworkUpdateZ_some(struct LDKNetworkUpdate o);
 /* @internal */
-export function CResult_RouteLightningErrorZ_is_ok(o: bigint): boolean {
+export function COption_NetworkUpdateZ_some(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_COption_NetworkUpdateZ_some(o);
        return nativeResponseValue;
 }
-       // void CResult_RouteLightningErrorZ_free(struct LDKCResult_RouteLightningErrorZ _res);
+       // struct LDKCOption_NetworkUpdateZ COption_NetworkUpdateZ_none(void);
 /* @internal */
-export function CResult_RouteLightningErrorZ_free(_res: bigint): void {
+export function COption_NetworkUpdateZ_none(): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_COption_NetworkUpdateZ_none();
+       return nativeResponseValue;
+}
+       // void COption_NetworkUpdateZ_free(struct LDKCOption_NetworkUpdateZ _res);
+/* @internal */
+export function COption_NetworkUpdateZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_NetworkUpdateZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_RouteLightningErrorZ_clone_ptr(LDKCResult_RouteLightningErrorZ *NONNULL_PTR arg);
+       // uint64_t COption_NetworkUpdateZ_clone_ptr(LDKCOption_NetworkUpdateZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_RouteLightningErrorZ_clone_ptr(arg: bigint): bigint {
+export function COption_NetworkUpdateZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_COption_NetworkUpdateZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_RouteLightningErrorZ CResult_RouteLightningErrorZ_clone(const struct LDKCResult_RouteLightningErrorZ *NONNULL_PTR orig);
+       // struct LDKCOption_NetworkUpdateZ COption_NetworkUpdateZ_clone(const struct LDKCOption_NetworkUpdateZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_RouteLightningErrorZ_clone(orig: bigint): bigint {
+export function COption_NetworkUpdateZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_RouteLightningErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_COption_NetworkUpdateZ_clone(orig);
        return nativeResponseValue;
 }
-       // void CVec_PublicKeyZ_free(struct LDKCVec_PublicKeyZ _res);
+       // struct LDKCOption_PathFailureZ COption_PathFailureZ_some(struct LDKPathFailure o);
 /* @internal */
-export function CVec_PublicKeyZ_free(_res: number): void {
+export function COption_PathFailureZ_some(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CVec_PublicKeyZ_free(_res);
+       const nativeResponseValue = wasm.TS_COption_PathFailureZ_some(o);
+       return nativeResponseValue;
+}
+       // struct LDKCOption_PathFailureZ COption_PathFailureZ_none(void);
+/* @internal */
+export function COption_PathFailureZ_none(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_PathFailureZ_none();
+       return nativeResponseValue;
+}
+       // void COption_PathFailureZ_free(struct LDKCOption_PathFailureZ _res);
+/* @internal */
+export function COption_PathFailureZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_PathFailureZ_free(_res);
        // debug statements here
 }
-       // struct LDKCResult_PaymentPurposeDecodeErrorZ CResult_PaymentPurposeDecodeErrorZ_ok(struct LDKPaymentPurpose o);
+       // uint64_t COption_PathFailureZ_clone_ptr(LDKCOption_PathFailureZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_PaymentPurposeDecodeErrorZ_ok(o: bigint): bigint {
+export function COption_PathFailureZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PaymentPurposeDecodeErrorZ_ok(o);
+       const nativeResponseValue = wasm.TS_COption_PathFailureZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_PaymentPurposeDecodeErrorZ CResult_PaymentPurposeDecodeErrorZ_err(struct LDKDecodeError e);
+       // struct LDKCOption_PathFailureZ COption_PathFailureZ_clone(const struct LDKCOption_PathFailureZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_PaymentPurposeDecodeErrorZ_err(e: bigint): bigint {
+export function COption_PathFailureZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PaymentPurposeDecodeErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_COption_PathFailureZ_clone(orig);
        return nativeResponseValue;
 }
-       // bool CResult_PaymentPurposeDecodeErrorZ_is_ok(const struct LDKCResult_PaymentPurposeDecodeErrorZ *NONNULL_PTR o);
+       // struct LDKCResult_COption_PathFailureZDecodeErrorZ CResult_COption_PathFailureZDecodeErrorZ_ok(struct LDKCOption_PathFailureZ o);
 /* @internal */
-export function CResult_PaymentPurposeDecodeErrorZ_is_ok(o: bigint): boolean {
+export function CResult_COption_PathFailureZDecodeErrorZ_ok(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PaymentPurposeDecodeErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_COption_PathFailureZDecodeErrorZ_ok(o);
        return nativeResponseValue;
 }
-       // void CResult_PaymentPurposeDecodeErrorZ_free(struct LDKCResult_PaymentPurposeDecodeErrorZ _res);
+       // struct LDKCResult_COption_PathFailureZDecodeErrorZ CResult_COption_PathFailureZDecodeErrorZ_err(struct LDKDecodeError e);
 /* @internal */
-export function CResult_PaymentPurposeDecodeErrorZ_free(_res: bigint): void {
+export function CResult_COption_PathFailureZDecodeErrorZ_err(e: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PaymentPurposeDecodeErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_COption_PathFailureZDecodeErrorZ_err(e);
+       return nativeResponseValue;
+}
+       // bool CResult_COption_PathFailureZDecodeErrorZ_is_ok(const struct LDKCResult_COption_PathFailureZDecodeErrorZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_COption_PathFailureZDecodeErrorZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_COption_PathFailureZDecodeErrorZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_COption_PathFailureZDecodeErrorZ_free(struct LDKCResult_COption_PathFailureZDecodeErrorZ _res);
+/* @internal */
+export function CResult_COption_PathFailureZDecodeErrorZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_COption_PathFailureZDecodeErrorZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_PaymentPurposeDecodeErrorZ_clone_ptr(LDKCResult_PaymentPurposeDecodeErrorZ *NONNULL_PTR arg);
+       // uint64_t CResult_COption_PathFailureZDecodeErrorZ_clone_ptr(LDKCResult_COption_PathFailureZDecodeErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_PaymentPurposeDecodeErrorZ_clone_ptr(arg: bigint): bigint {
+export function CResult_COption_PathFailureZDecodeErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PaymentPurposeDecodeErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_COption_PathFailureZDecodeErrorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_PaymentPurposeDecodeErrorZ CResult_PaymentPurposeDecodeErrorZ_clone(const struct LDKCResult_PaymentPurposeDecodeErrorZ *NONNULL_PTR orig);
+       // struct LDKCResult_COption_PathFailureZDecodeErrorZ CResult_COption_PathFailureZDecodeErrorZ_clone(const struct LDKCResult_COption_PathFailureZDecodeErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_PaymentPurposeDecodeErrorZ_clone(orig: bigint): bigint {
+export function CResult_COption_PathFailureZDecodeErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PaymentPurposeDecodeErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_COption_PathFailureZDecodeErrorZ_clone(orig);
        return nativeResponseValue;
 }
        // struct LDKCOption_ClosureReasonZ COption_ClosureReasonZ_some(struct LDKClosureReason o);
@@ -8599,49 +10223,49 @@ export function CResult_COption_HTLCDestinationZDecodeErrorZ_clone(orig: bigint)
        const nativeResponseValue = wasm.TS_CResult_COption_HTLCDestinationZDecodeErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCOption_NetworkUpdateZ COption_NetworkUpdateZ_some(struct LDKNetworkUpdate o);
+       // struct LDKCOption_u128Z COption_u128Z_some(struct LDKU128 o);
 /* @internal */
-export function COption_NetworkUpdateZ_some(o: bigint): bigint {
+export function COption_u128Z_some(o: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_COption_NetworkUpdateZ_some(o);
+       const nativeResponseValue = wasm.TS_COption_u128Z_some(o);
        return nativeResponseValue;
 }
-       // struct LDKCOption_NetworkUpdateZ COption_NetworkUpdateZ_none(void);
+       // struct LDKCOption_u128Z COption_u128Z_none(void);
 /* @internal */
-export function COption_NetworkUpdateZ_none(): bigint {
+export function COption_u128Z_none(): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_COption_NetworkUpdateZ_none();
+       const nativeResponseValue = wasm.TS_COption_u128Z_none();
        return nativeResponseValue;
 }
-       // void COption_NetworkUpdateZ_free(struct LDKCOption_NetworkUpdateZ _res);
+       // void COption_u128Z_free(struct LDKCOption_u128Z _res);
 /* @internal */
-export function COption_NetworkUpdateZ_free(_res: bigint): void {
+export function COption_u128Z_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_COption_NetworkUpdateZ_free(_res);
+       const nativeResponseValue = wasm.TS_COption_u128Z_free(_res);
        // debug statements here
 }
-       // uint64_t COption_NetworkUpdateZ_clone_ptr(LDKCOption_NetworkUpdateZ *NONNULL_PTR arg);
+       // uint64_t COption_u128Z_clone_ptr(LDKCOption_u128Z *NONNULL_PTR arg);
 /* @internal */
-export function COption_NetworkUpdateZ_clone_ptr(arg: bigint): bigint {
+export function COption_u128Z_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_COption_NetworkUpdateZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_COption_u128Z_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCOption_NetworkUpdateZ COption_NetworkUpdateZ_clone(const struct LDKCOption_NetworkUpdateZ *NONNULL_PTR orig);
+       // struct LDKCOption_u128Z COption_u128Z_clone(const struct LDKCOption_u128Z *NONNULL_PTR orig);
 /* @internal */
-export function COption_NetworkUpdateZ_clone(orig: bigint): bigint {
+export function COption_u128Z_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_COption_NetworkUpdateZ_clone(orig);
+       const nativeResponseValue = wasm.TS_COption_u128Z_clone(orig);
        return nativeResponseValue;
 }
        // void CVec_SpendableOutputDescriptorZ_free(struct LDKCVec_SpendableOutputDescriptorZ _res);
@@ -8760,60 +10384,6 @@ export function CVec_MessageSendEventZ_free(_res: number): void {
        }
        const nativeResponseValue = wasm.TS_CVec_MessageSendEventZ_free(_res);
        // debug statements here
-}
-       // struct LDKCResult_TxOutAccessErrorZ CResult_TxOutAccessErrorZ_ok(struct LDKTxOut o);
-/* @internal */
-export function CResult_TxOutAccessErrorZ_ok(o: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_TxOutAccessErrorZ_ok(o);
-       return nativeResponseValue;
-}
-       // struct LDKCResult_TxOutAccessErrorZ CResult_TxOutAccessErrorZ_err(enum LDKAccessError e);
-/* @internal */
-export function CResult_TxOutAccessErrorZ_err(e: AccessError): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_TxOutAccessErrorZ_err(e);
-       return nativeResponseValue;
-}
-       // bool CResult_TxOutAccessErrorZ_is_ok(const struct LDKCResult_TxOutAccessErrorZ *NONNULL_PTR o);
-/* @internal */
-export function CResult_TxOutAccessErrorZ_is_ok(o: bigint): boolean {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_TxOutAccessErrorZ_is_ok(o);
-       return nativeResponseValue;
-}
-       // void CResult_TxOutAccessErrorZ_free(struct LDKCResult_TxOutAccessErrorZ _res);
-/* @internal */
-export function CResult_TxOutAccessErrorZ_free(_res: bigint): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_TxOutAccessErrorZ_free(_res);
-       // debug statements here
-}
-       // uint64_t CResult_TxOutAccessErrorZ_clone_ptr(LDKCResult_TxOutAccessErrorZ *NONNULL_PTR arg);
-/* @internal */
-export function CResult_TxOutAccessErrorZ_clone_ptr(arg: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_TxOutAccessErrorZ_clone_ptr(arg);
-       return nativeResponseValue;
-}
-       // struct LDKCResult_TxOutAccessErrorZ CResult_TxOutAccessErrorZ_clone(const struct LDKCResult_TxOutAccessErrorZ *NONNULL_PTR orig);
-/* @internal */
-export function CResult_TxOutAccessErrorZ_clone(orig: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_TxOutAccessErrorZ_clone(orig);
-       return nativeResponseValue;
 }
        // uint64_t C2Tuple_usizeTransactionZ_clone_ptr(LDKC2Tuple_usizeTransactionZ *NONNULL_PTR arg);
 /* @internal */
@@ -8860,68 +10430,50 @@ export function CVec_C2Tuple_usizeTransactionZZ_free(_res: number): void {
        const nativeResponseValue = wasm.TS_CVec_C2Tuple_usizeTransactionZZ_free(_res);
        // debug statements here
 }
-       // void CVec_TxidZ_free(struct LDKCVec_TxidZ _res);
+       // uint64_t C2Tuple_TxidBlockHashZ_clone_ptr(LDKC2Tuple_TxidBlockHashZ *NONNULL_PTR arg);
 /* @internal */
-export function CVec_TxidZ_free(_res: number): void {
+export function C2Tuple_TxidBlockHashZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CVec_TxidZ_free(_res);
-       // debug statements here
-}
-       // struct LDKCResult_NoneChannelMonitorUpdateErrZ CResult_NoneChannelMonitorUpdateErrZ_ok(void);
-/* @internal */
-export function CResult_NoneChannelMonitorUpdateErrZ_ok(): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_NoneChannelMonitorUpdateErrZ_ok();
+       const nativeResponseValue = wasm.TS_C2Tuple_TxidBlockHashZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_NoneChannelMonitorUpdateErrZ CResult_NoneChannelMonitorUpdateErrZ_err(enum LDKChannelMonitorUpdateErr e);
+       // struct LDKC2Tuple_TxidBlockHashZ C2Tuple_TxidBlockHashZ_clone(const struct LDKC2Tuple_TxidBlockHashZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_NoneChannelMonitorUpdateErrZ_err(e: ChannelMonitorUpdateErr): bigint {
+export function C2Tuple_TxidBlockHashZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NoneChannelMonitorUpdateErrZ_err(e);
+       const nativeResponseValue = wasm.TS_C2Tuple_TxidBlockHashZ_clone(orig);
        return nativeResponseValue;
 }
-       // bool CResult_NoneChannelMonitorUpdateErrZ_is_ok(const struct LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR o);
+       // struct LDKC2Tuple_TxidBlockHashZ C2Tuple_TxidBlockHashZ_new(struct LDKThirtyTwoBytes a, struct LDKThirtyTwoBytes b);
 /* @internal */
-export function CResult_NoneChannelMonitorUpdateErrZ_is_ok(o: bigint): boolean {
+export function C2Tuple_TxidBlockHashZ_new(a: number, b: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NoneChannelMonitorUpdateErrZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_C2Tuple_TxidBlockHashZ_new(a, b);
        return nativeResponseValue;
 }
-       // void CResult_NoneChannelMonitorUpdateErrZ_free(struct LDKCResult_NoneChannelMonitorUpdateErrZ _res);
+       // void C2Tuple_TxidBlockHashZ_free(struct LDKC2Tuple_TxidBlockHashZ _res);
 /* @internal */
-export function CResult_NoneChannelMonitorUpdateErrZ_free(_res: bigint): void {
+export function C2Tuple_TxidBlockHashZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NoneChannelMonitorUpdateErrZ_free(_res);
+       const nativeResponseValue = wasm.TS_C2Tuple_TxidBlockHashZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR arg);
-/* @internal */
-export function CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(arg: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_NoneChannelMonitorUpdateErrZ_clone_ptr(arg);
-       return nativeResponseValue;
-}
-       // struct LDKCResult_NoneChannelMonitorUpdateErrZ CResult_NoneChannelMonitorUpdateErrZ_clone(const struct LDKCResult_NoneChannelMonitorUpdateErrZ *NONNULL_PTR orig);
+       // void CVec_C2Tuple_TxidBlockHashZZ_free(struct LDKCVec_C2Tuple_TxidBlockHashZZ _res);
 /* @internal */
-export function CResult_NoneChannelMonitorUpdateErrZ_clone(orig: bigint): bigint {
+export function CVec_C2Tuple_TxidBlockHashZZ_free(_res: number): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NoneChannelMonitorUpdateErrZ_clone(orig);
-       return nativeResponseValue;
+       const nativeResponseValue = wasm.TS_CVec_C2Tuple_TxidBlockHashZZ_free(_res);
+       // debug statements here
 }
        // void CVec_MonitorEventZ_free(struct LDKCVec_MonitorEventZ _res);
 /* @internal */
@@ -8976,51 +10528,6 @@ export function CVec_C3Tuple_OutPointCVec_MonitorEventZPublicKeyZZ_free(_res: nu
        }
        const nativeResponseValue = wasm.TS_CVec_C3Tuple_OutPointCVec_MonitorEventZPublicKeyZZ_free(_res);
        // debug statements here
-}
-       // struct LDKCOption_C2Tuple_usizeTransactionZZ COption_C2Tuple_usizeTransactionZZ_some(struct LDKC2Tuple_usizeTransactionZ o);
-/* @internal */
-export function COption_C2Tuple_usizeTransactionZZ_some(o: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_COption_C2Tuple_usizeTransactionZZ_some(o);
-       return nativeResponseValue;
-}
-       // struct LDKCOption_C2Tuple_usizeTransactionZZ COption_C2Tuple_usizeTransactionZZ_none(void);
-/* @internal */
-export function COption_C2Tuple_usizeTransactionZZ_none(): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_COption_C2Tuple_usizeTransactionZZ_none();
-       return nativeResponseValue;
-}
-       // void COption_C2Tuple_usizeTransactionZZ_free(struct LDKCOption_C2Tuple_usizeTransactionZZ _res);
-/* @internal */
-export function COption_C2Tuple_usizeTransactionZZ_free(_res: bigint): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_COption_C2Tuple_usizeTransactionZZ_free(_res);
-       // debug statements here
-}
-       // uint64_t COption_C2Tuple_usizeTransactionZZ_clone_ptr(LDKCOption_C2Tuple_usizeTransactionZZ *NONNULL_PTR arg);
-/* @internal */
-export function COption_C2Tuple_usizeTransactionZZ_clone_ptr(arg: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_COption_C2Tuple_usizeTransactionZZ_clone_ptr(arg);
-       return nativeResponseValue;
-}
-       // struct LDKCOption_C2Tuple_usizeTransactionZZ COption_C2Tuple_usizeTransactionZZ_clone(const struct LDKCOption_C2Tuple_usizeTransactionZZ *NONNULL_PTR orig);
-/* @internal */
-export function COption_C2Tuple_usizeTransactionZZ_clone(orig: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_COption_C2Tuple_usizeTransactionZZ_clone(orig);
-       return nativeResponseValue;
 }
        // struct LDKCResult_FixedPenaltyScorerDecodeErrorZ CResult_FixedPenaltyScorerDecodeErrorZ_ok(struct LDKFixedPenaltyScorer o);
 /* @internal */
@@ -9156,6 +10663,123 @@ export function COption_C2Tuple_u64u64ZZ_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_COption_C2Tuple_u64u64ZZ_clone(orig);
        return nativeResponseValue;
+}
+       // uint64_t C2Tuple_Z_clone_ptr(LDKC2Tuple_Z *NONNULL_PTR arg);
+/* @internal */
+export function C2Tuple_Z_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_Z_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKC2Tuple_Z C2Tuple_Z_clone(const struct LDKC2Tuple_Z *NONNULL_PTR orig);
+/* @internal */
+export function C2Tuple_Z_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_Z_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKC2Tuple_Z C2Tuple_Z_new(struct LDKEightU16s a, struct LDKEightU16s b);
+/* @internal */
+export function C2Tuple_Z_new(a: number, b: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_Z_new(a, b);
+       return nativeResponseValue;
+}
+       // void C2Tuple_Z_free(struct LDKC2Tuple_Z _res);
+/* @internal */
+export function C2Tuple_Z_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_Z_free(_res);
+       // debug statements here
+}
+       // uint64_t C2Tuple__u168_u168Z_clone_ptr(LDKC2Tuple__u168_u168Z *NONNULL_PTR arg);
+/* @internal */
+export function C2Tuple__u168_u168Z_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple__u168_u168Z_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKC2Tuple__u168_u168Z C2Tuple__u168_u168Z_clone(const struct LDKC2Tuple__u168_u168Z *NONNULL_PTR orig);
+/* @internal */
+export function C2Tuple__u168_u168Z_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple__u168_u168Z_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKC2Tuple__u168_u168Z C2Tuple__u168_u168Z_new(struct LDKEightU16s a, struct LDKEightU16s b);
+/* @internal */
+export function C2Tuple__u168_u168Z_new(a: number, b: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple__u168_u168Z_new(a, b);
+       return nativeResponseValue;
+}
+       // void C2Tuple__u168_u168Z_free(struct LDKC2Tuple__u168_u168Z _res);
+/* @internal */
+export function C2Tuple__u168_u168Z_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple__u168_u168Z_free(_res);
+       // debug statements here
+}
+       // struct LDKCOption_C2Tuple_EightU16sEightU16sZZ COption_C2Tuple_EightU16sEightU16sZZ_some(struct LDKC2Tuple__u168_u168Z o);
+/* @internal */
+export function COption_C2Tuple_EightU16sEightU16sZZ_some(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_C2Tuple_EightU16sEightU16sZZ_some(o);
+       return nativeResponseValue;
+}
+       // struct LDKCOption_C2Tuple_EightU16sEightU16sZZ COption_C2Tuple_EightU16sEightU16sZZ_none(void);
+/* @internal */
+export function COption_C2Tuple_EightU16sEightU16sZZ_none(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_C2Tuple_EightU16sEightU16sZZ_none();
+       return nativeResponseValue;
+}
+       // void COption_C2Tuple_EightU16sEightU16sZZ_free(struct LDKCOption_C2Tuple_EightU16sEightU16sZZ _res);
+/* @internal */
+export function COption_C2Tuple_EightU16sEightU16sZZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_C2Tuple_EightU16sEightU16sZZ_free(_res);
+       // debug statements here
+}
+       // uint64_t COption_C2Tuple_EightU16sEightU16sZZ_clone_ptr(LDKCOption_C2Tuple_EightU16sEightU16sZZ *NONNULL_PTR arg);
+/* @internal */
+export function COption_C2Tuple_EightU16sEightU16sZZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_C2Tuple_EightU16sEightU16sZZ_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKCOption_C2Tuple_EightU16sEightU16sZZ COption_C2Tuple_EightU16sEightU16sZZ_clone(const struct LDKCOption_C2Tuple_EightU16sEightU16sZZ *NONNULL_PTR orig);
+/* @internal */
+export function COption_C2Tuple_EightU16sEightU16sZZ_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_C2Tuple_EightU16sEightU16sZZ_clone(orig);
+       return nativeResponseValue;
 }
        // void CVec_NodeIdZ_free(struct LDKCVec_NodeIdZ _res);
 /* @internal */
@@ -9417,6 +11041,60 @@ export function CResult_InvoiceFeaturesDecodeErrorZ_clone(orig: bigint): bigint
        }
        const nativeResponseValue = wasm.TS_CResult_InvoiceFeaturesDecodeErrorZ_clone(orig);
        return nativeResponseValue;
+}
+       // struct LDKCResult_BlindedHopFeaturesDecodeErrorZ CResult_BlindedHopFeaturesDecodeErrorZ_ok(struct LDKBlindedHopFeatures o);
+/* @internal */
+export function CResult_BlindedHopFeaturesDecodeErrorZ_ok(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedHopFeaturesDecodeErrorZ_ok(o);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_BlindedHopFeaturesDecodeErrorZ CResult_BlindedHopFeaturesDecodeErrorZ_err(struct LDKDecodeError e);
+/* @internal */
+export function CResult_BlindedHopFeaturesDecodeErrorZ_err(e: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedHopFeaturesDecodeErrorZ_err(e);
+       return nativeResponseValue;
+}
+       // bool CResult_BlindedHopFeaturesDecodeErrorZ_is_ok(const struct LDKCResult_BlindedHopFeaturesDecodeErrorZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_BlindedHopFeaturesDecodeErrorZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedHopFeaturesDecodeErrorZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_BlindedHopFeaturesDecodeErrorZ_free(struct LDKCResult_BlindedHopFeaturesDecodeErrorZ _res);
+/* @internal */
+export function CResult_BlindedHopFeaturesDecodeErrorZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedHopFeaturesDecodeErrorZ_free(_res);
+       // debug statements here
+}
+       // uint64_t CResult_BlindedHopFeaturesDecodeErrorZ_clone_ptr(LDKCResult_BlindedHopFeaturesDecodeErrorZ *NONNULL_PTR arg);
+/* @internal */
+export function CResult_BlindedHopFeaturesDecodeErrorZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedHopFeaturesDecodeErrorZ_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_BlindedHopFeaturesDecodeErrorZ CResult_BlindedHopFeaturesDecodeErrorZ_clone(const struct LDKCResult_BlindedHopFeaturesDecodeErrorZ *NONNULL_PTR orig);
+/* @internal */
+export function CResult_BlindedHopFeaturesDecodeErrorZ_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_BlindedHopFeaturesDecodeErrorZ_clone(orig);
+       return nativeResponseValue;
 }
        // struct LDKCResult_ChannelTypeFeaturesDecodeErrorZ CResult_ChannelTypeFeaturesDecodeErrorZ_ok(struct LDKChannelTypeFeatures o);
 /* @internal */
@@ -9580,31 +11258,31 @@ export function CResult_COption_NetworkUpdateZDecodeErrorZ_clone(orig: bigint):
        const nativeResponseValue = wasm.TS_CResult_COption_NetworkUpdateZDecodeErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCOption_AccessZ COption_AccessZ_some(struct LDKAccess o);
+       // struct LDKCOption_UtxoLookupZ COption_UtxoLookupZ_some(struct LDKUtxoLookup o);
 /* @internal */
-export function COption_AccessZ_some(o: bigint): bigint {
+export function COption_UtxoLookupZ_some(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_COption_AccessZ_some(o);
+       const nativeResponseValue = wasm.TS_COption_UtxoLookupZ_some(o);
        return nativeResponseValue;
 }
-       // struct LDKCOption_AccessZ COption_AccessZ_none(void);
+       // struct LDKCOption_UtxoLookupZ COption_UtxoLookupZ_none(void);
 /* @internal */
-export function COption_AccessZ_none(): bigint {
+export function COption_UtxoLookupZ_none(): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_COption_AccessZ_none();
+       const nativeResponseValue = wasm.TS_COption_UtxoLookupZ_none();
        return nativeResponseValue;
 }
-       // void COption_AccessZ_free(struct LDKCOption_AccessZ _res);
+       // void COption_UtxoLookupZ_free(struct LDKCOption_UtxoLookupZ _res);
 /* @internal */
-export function COption_AccessZ_free(_res: bigint): void {
+export function COption_UtxoLookupZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_COption_AccessZ_free(_res);
+       const nativeResponseValue = wasm.TS_COption_UtxoLookupZ_free(_res);
        // debug statements here
 }
        // struct LDKCResult_boolLightningErrorZ CResult_boolLightningErrorZ_ok(bool o);
@@ -9697,23 +11375,50 @@ export function C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_free(_res
        const nativeResponseValue = wasm.TS_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_free(_res);
        // debug statements here
 }
-       // void CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_free(struct LDKCVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ _res);
+       // struct LDKCOption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ COption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_some(struct LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ o);
 /* @internal */
-export function CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_free(_res: number): void {
+export function COption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_some(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CVec_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_free(_res);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_COption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_some(o);
+       return nativeResponseValue;
+}
+       // struct LDKCOption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ COption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_none(void);
+/* @internal */
+export function COption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_none(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_none();
+       return nativeResponseValue;
 }
-       // void CVec_NodeAnnouncementZ_free(struct LDKCVec_NodeAnnouncementZ _res);
+       // void COption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_free(struct LDKCOption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ _res);
 /* @internal */
-export function CVec_NodeAnnouncementZ_free(_res: number): void {
+export function COption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CVec_NodeAnnouncementZ_free(_res);
+       const nativeResponseValue = wasm.TS_COption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_free(_res);
        // debug statements here
+}
+       // uint64_t COption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_clone_ptr(LDKCOption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ *NONNULL_PTR arg);
+/* @internal */
+export function COption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKCOption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ COption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_clone(const struct LDKCOption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ *NONNULL_PTR orig);
+/* @internal */
+export function COption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_C3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZZ_clone(orig);
+       return nativeResponseValue;
 }
        // struct LDKCResult_NoneLightningErrorZ CResult_NoneLightningErrorZ_ok(void);
 /* @internal */
@@ -10498,265 +12203,256 @@ export function CResult_SignatureNoneZ_clone(orig: bigint): bigint {
        const nativeResponseValue = wasm.TS_CResult_SignatureNoneZ_clone(orig);
        return nativeResponseValue;
 }
-       // uint64_t C2Tuple_SignatureSignatureZ_clone_ptr(LDKC2Tuple_SignatureSignatureZ *NONNULL_PTR arg);
+       // struct LDKCResult_PublicKeyNoneZ CResult_PublicKeyNoneZ_ok(struct LDKPublicKey o);
 /* @internal */
-export function C2Tuple_SignatureSignatureZ_clone_ptr(arg: bigint): bigint {
+export function CResult_PublicKeyNoneZ_ok(o: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_SignatureSignatureZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_PublicKeyNoneZ_ok(o);
        return nativeResponseValue;
 }
-       // struct LDKC2Tuple_SignatureSignatureZ C2Tuple_SignatureSignatureZ_clone(const struct LDKC2Tuple_SignatureSignatureZ *NONNULL_PTR orig);
+       // struct LDKCResult_PublicKeyNoneZ CResult_PublicKeyNoneZ_err(void);
 /* @internal */
-export function C2Tuple_SignatureSignatureZ_clone(orig: bigint): bigint {
+export function CResult_PublicKeyNoneZ_err(): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_SignatureSignatureZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_PublicKeyNoneZ_err();
        return nativeResponseValue;
 }
-       // struct LDKC2Tuple_SignatureSignatureZ C2Tuple_SignatureSignatureZ_new(struct LDKSignature a, struct LDKSignature b);
+       // bool CResult_PublicKeyNoneZ_is_ok(const struct LDKCResult_PublicKeyNoneZ *NONNULL_PTR o);
 /* @internal */
-export function C2Tuple_SignatureSignatureZ_new(a: number, b: number): bigint {
+export function CResult_PublicKeyNoneZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_SignatureSignatureZ_new(a, b);
+       const nativeResponseValue = wasm.TS_CResult_PublicKeyNoneZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void C2Tuple_SignatureSignatureZ_free(struct LDKC2Tuple_SignatureSignatureZ _res);
+       // void CResult_PublicKeyNoneZ_free(struct LDKCResult_PublicKeyNoneZ _res);
 /* @internal */
-export function C2Tuple_SignatureSignatureZ_free(_res: bigint): void {
+export function CResult_PublicKeyNoneZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_SignatureSignatureZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_PublicKeyNoneZ_free(_res);
        // debug statements here
 }
-       // struct LDKCResult_C2Tuple_SignatureSignatureZNoneZ CResult_C2Tuple_SignatureSignatureZNoneZ_ok(struct LDKC2Tuple_SignatureSignatureZ o);
+       // uint64_t CResult_PublicKeyNoneZ_clone_ptr(LDKCResult_PublicKeyNoneZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_C2Tuple_SignatureSignatureZNoneZ_ok(o: bigint): bigint {
+export function CResult_PublicKeyNoneZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_C2Tuple_SignatureSignatureZNoneZ_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_PublicKeyNoneZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_C2Tuple_SignatureSignatureZNoneZ CResult_C2Tuple_SignatureSignatureZNoneZ_err(void);
+       // struct LDKCResult_PublicKeyNoneZ CResult_PublicKeyNoneZ_clone(const struct LDKCResult_PublicKeyNoneZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_C2Tuple_SignatureSignatureZNoneZ_err(): bigint {
+export function CResult_PublicKeyNoneZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_C2Tuple_SignatureSignatureZNoneZ_err();
+       const nativeResponseValue = wasm.TS_CResult_PublicKeyNoneZ_clone(orig);
        return nativeResponseValue;
 }
-       // bool CResult_C2Tuple_SignatureSignatureZNoneZ_is_ok(const struct LDKCResult_C2Tuple_SignatureSignatureZNoneZ *NONNULL_PTR o);
+       // struct LDKCOption_ScalarZ COption_ScalarZ_some(struct LDKBigEndianScalar o);
 /* @internal */
-export function CResult_C2Tuple_SignatureSignatureZNoneZ_is_ok(o: bigint): boolean {
+export function COption_ScalarZ_some(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_C2Tuple_SignatureSignatureZNoneZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_COption_ScalarZ_some(o);
        return nativeResponseValue;
 }
-       // void CResult_C2Tuple_SignatureSignatureZNoneZ_free(struct LDKCResult_C2Tuple_SignatureSignatureZNoneZ _res);
+       // struct LDKCOption_ScalarZ COption_ScalarZ_none(void);
 /* @internal */
-export function CResult_C2Tuple_SignatureSignatureZNoneZ_free(_res: bigint): void {
+export function COption_ScalarZ_none(): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_C2Tuple_SignatureSignatureZNoneZ_free(_res);
-       // debug statements here
-}
-       // uint64_t CResult_C2Tuple_SignatureSignatureZNoneZ_clone_ptr(LDKCResult_C2Tuple_SignatureSignatureZNoneZ *NONNULL_PTR arg);
-/* @internal */
-export function CResult_C2Tuple_SignatureSignatureZNoneZ_clone_ptr(arg: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_C2Tuple_SignatureSignatureZNoneZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_COption_ScalarZ_none();
        return nativeResponseValue;
 }
-       // struct LDKCResult_C2Tuple_SignatureSignatureZNoneZ CResult_C2Tuple_SignatureSignatureZNoneZ_clone(const struct LDKCResult_C2Tuple_SignatureSignatureZNoneZ *NONNULL_PTR orig);
+       // void COption_ScalarZ_free(struct LDKCOption_ScalarZ _res);
 /* @internal */
-export function CResult_C2Tuple_SignatureSignatureZNoneZ_clone(orig: bigint): bigint {
+export function COption_ScalarZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_C2Tuple_SignatureSignatureZNoneZ_clone(orig);
-       return nativeResponseValue;
+       const nativeResponseValue = wasm.TS_COption_ScalarZ_free(_res);
+       // debug statements here
 }
-       // struct LDKCResult_SecretKeyNoneZ CResult_SecretKeyNoneZ_ok(struct LDKSecretKey o);
+       // struct LDKCResult_SharedSecretNoneZ CResult_SharedSecretNoneZ_ok(struct LDKThirtyTwoBytes o);
 /* @internal */
-export function CResult_SecretKeyNoneZ_ok(o: number): bigint {
+export function CResult_SharedSecretNoneZ_ok(o: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SecretKeyNoneZ_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_SharedSecretNoneZ_ok(o);
        return nativeResponseValue;
 }
-       // struct LDKCResult_SecretKeyNoneZ CResult_SecretKeyNoneZ_err(void);
+       // struct LDKCResult_SharedSecretNoneZ CResult_SharedSecretNoneZ_err(void);
 /* @internal */
-export function CResult_SecretKeyNoneZ_err(): bigint {
+export function CResult_SharedSecretNoneZ_err(): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SecretKeyNoneZ_err();
+       const nativeResponseValue = wasm.TS_CResult_SharedSecretNoneZ_err();
        return nativeResponseValue;
 }
-       // bool CResult_SecretKeyNoneZ_is_ok(const struct LDKCResult_SecretKeyNoneZ *NONNULL_PTR o);
+       // bool CResult_SharedSecretNoneZ_is_ok(const struct LDKCResult_SharedSecretNoneZ *NONNULL_PTR o);
 /* @internal */
-export function CResult_SecretKeyNoneZ_is_ok(o: bigint): boolean {
+export function CResult_SharedSecretNoneZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SecretKeyNoneZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_SharedSecretNoneZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void CResult_SecretKeyNoneZ_free(struct LDKCResult_SecretKeyNoneZ _res);
+       // void CResult_SharedSecretNoneZ_free(struct LDKCResult_SharedSecretNoneZ _res);
 /* @internal */
-export function CResult_SecretKeyNoneZ_free(_res: bigint): void {
+export function CResult_SharedSecretNoneZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SecretKeyNoneZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_SharedSecretNoneZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_SecretKeyNoneZ_clone_ptr(LDKCResult_SecretKeyNoneZ *NONNULL_PTR arg);
+       // uint64_t CResult_SharedSecretNoneZ_clone_ptr(LDKCResult_SharedSecretNoneZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_SecretKeyNoneZ_clone_ptr(arg: bigint): bigint {
+export function CResult_SharedSecretNoneZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SecretKeyNoneZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_SharedSecretNoneZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_SecretKeyNoneZ CResult_SecretKeyNoneZ_clone(const struct LDKCResult_SecretKeyNoneZ *NONNULL_PTR orig);
+       // struct LDKCResult_SharedSecretNoneZ CResult_SharedSecretNoneZ_clone(const struct LDKCResult_SharedSecretNoneZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_SecretKeyNoneZ_clone(orig: bigint): bigint {
+export function CResult_SharedSecretNoneZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SecretKeyNoneZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_SharedSecretNoneZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCResult_SignDecodeErrorZ CResult_SignDecodeErrorZ_ok(struct LDKSign o);
+       // void CVec_U5Z_free(struct LDKCVec_U5Z _res);
 /* @internal */
-export function CResult_SignDecodeErrorZ_ok(o: bigint): bigint {
+export function CVec_U5Z_free(_res: number): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SignDecodeErrorZ_ok(o);
-       return nativeResponseValue;
+       const nativeResponseValue = wasm.TS_CVec_U5Z_free(_res);
+       // debug statements here
 }
-       // struct LDKCResult_SignDecodeErrorZ CResult_SignDecodeErrorZ_err(struct LDKDecodeError e);
+       // struct LDKCResult_RecoverableSignatureNoneZ CResult_RecoverableSignatureNoneZ_ok(struct LDKRecoverableSignature o);
 /* @internal */
-export function CResult_SignDecodeErrorZ_err(e: bigint): bigint {
+export function CResult_RecoverableSignatureNoneZ_ok(o: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SignDecodeErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_ok(o);
        return nativeResponseValue;
 }
-       // bool CResult_SignDecodeErrorZ_is_ok(const struct LDKCResult_SignDecodeErrorZ *NONNULL_PTR o);
+       // struct LDKCResult_RecoverableSignatureNoneZ CResult_RecoverableSignatureNoneZ_err(void);
 /* @internal */
-export function CResult_SignDecodeErrorZ_is_ok(o: bigint): boolean {
+export function CResult_RecoverableSignatureNoneZ_err(): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SignDecodeErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_err();
        return nativeResponseValue;
 }
-       // void CResult_SignDecodeErrorZ_free(struct LDKCResult_SignDecodeErrorZ _res);
+       // bool CResult_RecoverableSignatureNoneZ_is_ok(const struct LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR o);
 /* @internal */
-export function CResult_SignDecodeErrorZ_free(_res: bigint): void {
+export function CResult_RecoverableSignatureNoneZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SignDecodeErrorZ_free(_res);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_is_ok(o);
+       return nativeResponseValue;
 }
-       // uint64_t CResult_SignDecodeErrorZ_clone_ptr(LDKCResult_SignDecodeErrorZ *NONNULL_PTR arg);
+       // void CResult_RecoverableSignatureNoneZ_free(struct LDKCResult_RecoverableSignatureNoneZ _res);
 /* @internal */
-export function CResult_SignDecodeErrorZ_clone_ptr(arg: bigint): bigint {
+export function CResult_RecoverableSignatureNoneZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SignDecodeErrorZ_clone_ptr(arg);
-       return nativeResponseValue;
+       const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_free(_res);
+       // debug statements here
 }
-       // struct LDKCResult_SignDecodeErrorZ CResult_SignDecodeErrorZ_clone(const struct LDKCResult_SignDecodeErrorZ *NONNULL_PTR orig);
+       // uint64_t CResult_RecoverableSignatureNoneZ_clone_ptr(LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_SignDecodeErrorZ_clone(orig: bigint): bigint {
+export function CResult_RecoverableSignatureNoneZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SignDecodeErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // void CVec_u5Z_free(struct LDKCVec_u5Z _res);
+       // struct LDKCResult_RecoverableSignatureNoneZ CResult_RecoverableSignatureNoneZ_clone(const struct LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR orig);
 /* @internal */
-export function CVec_u5Z_free(_res: number): void {
+export function CResult_RecoverableSignatureNoneZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CVec_u5Z_free(_res);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_clone(orig);
+       return nativeResponseValue;
 }
-       // struct LDKCResult_RecoverableSignatureNoneZ CResult_RecoverableSignatureNoneZ_ok(struct LDKRecoverableSignature o);
+       // struct LDKCResult_WriteableEcdsaChannelSignerDecodeErrorZ CResult_WriteableEcdsaChannelSignerDecodeErrorZ_ok(struct LDKWriteableEcdsaChannelSigner o);
 /* @internal */
-export function CResult_RecoverableSignatureNoneZ_ok(o: number): bigint {
+export function CResult_WriteableEcdsaChannelSignerDecodeErrorZ_ok(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_WriteableEcdsaChannelSignerDecodeErrorZ_ok(o);
        return nativeResponseValue;
 }
-       // struct LDKCResult_RecoverableSignatureNoneZ CResult_RecoverableSignatureNoneZ_err(void);
+       // struct LDKCResult_WriteableEcdsaChannelSignerDecodeErrorZ CResult_WriteableEcdsaChannelSignerDecodeErrorZ_err(struct LDKDecodeError e);
 /* @internal */
-export function CResult_RecoverableSignatureNoneZ_err(): bigint {
+export function CResult_WriteableEcdsaChannelSignerDecodeErrorZ_err(e: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_err();
+       const nativeResponseValue = wasm.TS_CResult_WriteableEcdsaChannelSignerDecodeErrorZ_err(e);
        return nativeResponseValue;
 }
-       // bool CResult_RecoverableSignatureNoneZ_is_ok(const struct LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR o);
+       // bool CResult_WriteableEcdsaChannelSignerDecodeErrorZ_is_ok(const struct LDKCResult_WriteableEcdsaChannelSignerDecodeErrorZ *NONNULL_PTR o);
 /* @internal */
-export function CResult_RecoverableSignatureNoneZ_is_ok(o: bigint): boolean {
+export function CResult_WriteableEcdsaChannelSignerDecodeErrorZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_WriteableEcdsaChannelSignerDecodeErrorZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void CResult_RecoverableSignatureNoneZ_free(struct LDKCResult_RecoverableSignatureNoneZ _res);
+       // void CResult_WriteableEcdsaChannelSignerDecodeErrorZ_free(struct LDKCResult_WriteableEcdsaChannelSignerDecodeErrorZ _res);
 /* @internal */
-export function CResult_RecoverableSignatureNoneZ_free(_res: bigint): void {
+export function CResult_WriteableEcdsaChannelSignerDecodeErrorZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_WriteableEcdsaChannelSignerDecodeErrorZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_RecoverableSignatureNoneZ_clone_ptr(LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR arg);
+       // uint64_t CResult_WriteableEcdsaChannelSignerDecodeErrorZ_clone_ptr(LDKCResult_WriteableEcdsaChannelSignerDecodeErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_RecoverableSignatureNoneZ_clone_ptr(arg: bigint): bigint {
+export function CResult_WriteableEcdsaChannelSignerDecodeErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_WriteableEcdsaChannelSignerDecodeErrorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_RecoverableSignatureNoneZ CResult_RecoverableSignatureNoneZ_clone(const struct LDKCResult_RecoverableSignatureNoneZ *NONNULL_PTR orig);
+       // struct LDKCResult_WriteableEcdsaChannelSignerDecodeErrorZ CResult_WriteableEcdsaChannelSignerDecodeErrorZ_clone(const struct LDKCResult_WriteableEcdsaChannelSignerDecodeErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_RecoverableSignatureNoneZ_clone(orig: bigint): bigint {
+export function CResult_WriteableEcdsaChannelSignerDecodeErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_RecoverableSignatureNoneZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_WriteableEcdsaChannelSignerDecodeErrorZ_clone(orig);
        return nativeResponseValue;
 }
        // void CVec_u8Z_free(struct LDKCVec_u8Z _res);
@@ -10992,78 +12688,6 @@ export function COption_u16Z_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_COption_u16Z_clone(orig);
        return nativeResponseValue;
-}
-       // struct LDKCResult_NoneAPIErrorZ CResult_NoneAPIErrorZ_ok(void);
-/* @internal */
-export function CResult_NoneAPIErrorZ_ok(): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_ok();
-       return nativeResponseValue;
-}
-       // struct LDKCResult_NoneAPIErrorZ CResult_NoneAPIErrorZ_err(struct LDKAPIError e);
-/* @internal */
-export function CResult_NoneAPIErrorZ_err(e: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_err(e);
-       return nativeResponseValue;
-}
-       // bool CResult_NoneAPIErrorZ_is_ok(const struct LDKCResult_NoneAPIErrorZ *NONNULL_PTR o);
-/* @internal */
-export function CResult_NoneAPIErrorZ_is_ok(o: bigint): boolean {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_is_ok(o);
-       return nativeResponseValue;
-}
-       // void CResult_NoneAPIErrorZ_free(struct LDKCResult_NoneAPIErrorZ _res);
-/* @internal */
-export function CResult_NoneAPIErrorZ_free(_res: bigint): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_free(_res);
-       // debug statements here
-}
-       // uint64_t CResult_NoneAPIErrorZ_clone_ptr(LDKCResult_NoneAPIErrorZ *NONNULL_PTR arg);
-/* @internal */
-export function CResult_NoneAPIErrorZ_clone_ptr(arg: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_clone_ptr(arg);
-       return nativeResponseValue;
-}
-       // struct LDKCResult_NoneAPIErrorZ CResult_NoneAPIErrorZ_clone(const struct LDKCResult_NoneAPIErrorZ *NONNULL_PTR orig);
-/* @internal */
-export function CResult_NoneAPIErrorZ_clone(orig: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CResult_NoneAPIErrorZ_clone(orig);
-       return nativeResponseValue;
-}
-       // void CVec_CResult_NoneAPIErrorZZ_free(struct LDKCVec_CResult_NoneAPIErrorZZ _res);
-/* @internal */
-export function CVec_CResult_NoneAPIErrorZZ_free(_res: number): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CVec_CResult_NoneAPIErrorZZ_free(_res);
-       // debug statements here
-}
-       // void CVec_APIErrorZ_free(struct LDKCVec_APIErrorZ _res);
-/* @internal */
-export function CVec_APIErrorZ_free(_res: number): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_CVec_APIErrorZ_free(_res);
-       // debug statements here
 }
        // struct LDKCResult__u832APIErrorZ CResult__u832APIErrorZ_ok(struct LDKThirtyTwoBytes o);
 /* @internal */
@@ -11119,112 +12743,229 @@ export function CResult__u832APIErrorZ_clone(orig: bigint): bigint {
        const nativeResponseValue = wasm.TS_CResult__u832APIErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCResult_PaymentIdPaymentSendFailureZ CResult_PaymentIdPaymentSendFailureZ_ok(struct LDKThirtyTwoBytes o);
+       // void CVec_RecentPaymentDetailsZ_free(struct LDKCVec_RecentPaymentDetailsZ _res);
 /* @internal */
-export function CResult_PaymentIdPaymentSendFailureZ_ok(o: number): bigint {
+export function CVec_RecentPaymentDetailsZ_free(_res: number): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentSendFailureZ_ok(o);
+       const nativeResponseValue = wasm.TS_CVec_RecentPaymentDetailsZ_free(_res);
+       // debug statements here
+}
+       // struct LDKCResult_NonePaymentSendFailureZ CResult_NonePaymentSendFailureZ_ok(void);
+/* @internal */
+export function CResult_NonePaymentSendFailureZ_ok(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_ok();
        return nativeResponseValue;
 }
-       // struct LDKCResult_PaymentIdPaymentSendFailureZ CResult_PaymentIdPaymentSendFailureZ_err(struct LDKPaymentSendFailure e);
+       // struct LDKCResult_NonePaymentSendFailureZ CResult_NonePaymentSendFailureZ_err(struct LDKPaymentSendFailure e);
 /* @internal */
-export function CResult_PaymentIdPaymentSendFailureZ_err(e: bigint): bigint {
+export function CResult_NonePaymentSendFailureZ_err(e: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentSendFailureZ_err(e);
+       const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_err(e);
        return nativeResponseValue;
 }
-       // bool CResult_PaymentIdPaymentSendFailureZ_is_ok(const struct LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR o);
+       // bool CResult_NonePaymentSendFailureZ_is_ok(const struct LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR o);
 /* @internal */
-export function CResult_PaymentIdPaymentSendFailureZ_is_ok(o: bigint): boolean {
+export function CResult_NonePaymentSendFailureZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentSendFailureZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void CResult_PaymentIdPaymentSendFailureZ_free(struct LDKCResult_PaymentIdPaymentSendFailureZ _res);
+       // void CResult_NonePaymentSendFailureZ_free(struct LDKCResult_NonePaymentSendFailureZ _res);
 /* @internal */
-export function CResult_PaymentIdPaymentSendFailureZ_free(_res: bigint): void {
+export function CResult_NonePaymentSendFailureZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentSendFailureZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_PaymentIdPaymentSendFailureZ_clone_ptr(LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR arg);
+       // uint64_t CResult_NonePaymentSendFailureZ_clone_ptr(LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_PaymentIdPaymentSendFailureZ_clone_ptr(arg: bigint): bigint {
+export function CResult_NonePaymentSendFailureZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentSendFailureZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_PaymentIdPaymentSendFailureZ CResult_PaymentIdPaymentSendFailureZ_clone(const struct LDKCResult_PaymentIdPaymentSendFailureZ *NONNULL_PTR orig);
+       // struct LDKCResult_NonePaymentSendFailureZ CResult_NonePaymentSendFailureZ_clone(const struct LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_PaymentIdPaymentSendFailureZ_clone(orig: bigint): bigint {
+export function CResult_NonePaymentSendFailureZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentSendFailureZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCResult_NonePaymentSendFailureZ CResult_NonePaymentSendFailureZ_ok(void);
+       // struct LDKCResult_NoneRetryableSendFailureZ CResult_NoneRetryableSendFailureZ_ok(void);
 /* @internal */
-export function CResult_NonePaymentSendFailureZ_ok(): bigint {
+export function CResult_NoneRetryableSendFailureZ_ok(): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_ok();
+       const nativeResponseValue = wasm.TS_CResult_NoneRetryableSendFailureZ_ok();
        return nativeResponseValue;
 }
-       // struct LDKCResult_NonePaymentSendFailureZ CResult_NonePaymentSendFailureZ_err(struct LDKPaymentSendFailure e);
+       // struct LDKCResult_NoneRetryableSendFailureZ CResult_NoneRetryableSendFailureZ_err(enum LDKRetryableSendFailure e);
 /* @internal */
-export function CResult_NonePaymentSendFailureZ_err(e: bigint): bigint {
+export function CResult_NoneRetryableSendFailureZ_err(e: RetryableSendFailure): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_err(e);
+       const nativeResponseValue = wasm.TS_CResult_NoneRetryableSendFailureZ_err(e);
        return nativeResponseValue;
 }
-       // bool CResult_NonePaymentSendFailureZ_is_ok(const struct LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR o);
+       // bool CResult_NoneRetryableSendFailureZ_is_ok(const struct LDKCResult_NoneRetryableSendFailureZ *NONNULL_PTR o);
 /* @internal */
-export function CResult_NonePaymentSendFailureZ_is_ok(o: bigint): boolean {
+export function CResult_NoneRetryableSendFailureZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_NoneRetryableSendFailureZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void CResult_NonePaymentSendFailureZ_free(struct LDKCResult_NonePaymentSendFailureZ _res);
+       // void CResult_NoneRetryableSendFailureZ_free(struct LDKCResult_NoneRetryableSendFailureZ _res);
 /* @internal */
-export function CResult_NonePaymentSendFailureZ_free(_res: bigint): void {
+export function CResult_NoneRetryableSendFailureZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_NoneRetryableSendFailureZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_NonePaymentSendFailureZ_clone_ptr(LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR arg);
+       // uint64_t CResult_NoneRetryableSendFailureZ_clone_ptr(LDKCResult_NoneRetryableSendFailureZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_NonePaymentSendFailureZ_clone_ptr(arg: bigint): bigint {
+export function CResult_NoneRetryableSendFailureZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_NoneRetryableSendFailureZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_NonePaymentSendFailureZ CResult_NonePaymentSendFailureZ_clone(const struct LDKCResult_NonePaymentSendFailureZ *NONNULL_PTR orig);
+       // struct LDKCResult_NoneRetryableSendFailureZ CResult_NoneRetryableSendFailureZ_clone(const struct LDKCResult_NoneRetryableSendFailureZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_NonePaymentSendFailureZ_clone(orig: bigint): bigint {
+export function CResult_NoneRetryableSendFailureZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NonePaymentSendFailureZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_NoneRetryableSendFailureZ_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_PaymentHashPaymentSendFailureZ CResult_PaymentHashPaymentSendFailureZ_ok(struct LDKThirtyTwoBytes o);
+/* @internal */
+export function CResult_PaymentHashPaymentSendFailureZ_ok(o: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PaymentHashPaymentSendFailureZ_ok(o);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_PaymentHashPaymentSendFailureZ CResult_PaymentHashPaymentSendFailureZ_err(struct LDKPaymentSendFailure e);
+/* @internal */
+export function CResult_PaymentHashPaymentSendFailureZ_err(e: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PaymentHashPaymentSendFailureZ_err(e);
+       return nativeResponseValue;
+}
+       // bool CResult_PaymentHashPaymentSendFailureZ_is_ok(const struct LDKCResult_PaymentHashPaymentSendFailureZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_PaymentHashPaymentSendFailureZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PaymentHashPaymentSendFailureZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_PaymentHashPaymentSendFailureZ_free(struct LDKCResult_PaymentHashPaymentSendFailureZ _res);
+/* @internal */
+export function CResult_PaymentHashPaymentSendFailureZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PaymentHashPaymentSendFailureZ_free(_res);
+       // debug statements here
+}
+       // uint64_t CResult_PaymentHashPaymentSendFailureZ_clone_ptr(LDKCResult_PaymentHashPaymentSendFailureZ *NONNULL_PTR arg);
+/* @internal */
+export function CResult_PaymentHashPaymentSendFailureZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PaymentHashPaymentSendFailureZ_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_PaymentHashPaymentSendFailureZ CResult_PaymentHashPaymentSendFailureZ_clone(const struct LDKCResult_PaymentHashPaymentSendFailureZ *NONNULL_PTR orig);
+/* @internal */
+export function CResult_PaymentHashPaymentSendFailureZ_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PaymentHashPaymentSendFailureZ_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_PaymentHashRetryableSendFailureZ CResult_PaymentHashRetryableSendFailureZ_ok(struct LDKThirtyTwoBytes o);
+/* @internal */
+export function CResult_PaymentHashRetryableSendFailureZ_ok(o: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PaymentHashRetryableSendFailureZ_ok(o);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_PaymentHashRetryableSendFailureZ CResult_PaymentHashRetryableSendFailureZ_err(enum LDKRetryableSendFailure e);
+/* @internal */
+export function CResult_PaymentHashRetryableSendFailureZ_err(e: RetryableSendFailure): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PaymentHashRetryableSendFailureZ_err(e);
+       return nativeResponseValue;
+}
+       // bool CResult_PaymentHashRetryableSendFailureZ_is_ok(const struct LDKCResult_PaymentHashRetryableSendFailureZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_PaymentHashRetryableSendFailureZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PaymentHashRetryableSendFailureZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_PaymentHashRetryableSendFailureZ_free(struct LDKCResult_PaymentHashRetryableSendFailureZ _res);
+/* @internal */
+export function CResult_PaymentHashRetryableSendFailureZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PaymentHashRetryableSendFailureZ_free(_res);
+       // debug statements here
+}
+       // uint64_t CResult_PaymentHashRetryableSendFailureZ_clone_ptr(LDKCResult_PaymentHashRetryableSendFailureZ *NONNULL_PTR arg);
+/* @internal */
+export function CResult_PaymentHashRetryableSendFailureZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PaymentHashRetryableSendFailureZ_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_PaymentHashRetryableSendFailureZ CResult_PaymentHashRetryableSendFailureZ_clone(const struct LDKCResult_PaymentHashRetryableSendFailureZ *NONNULL_PTR orig);
+/* @internal */
+export function CResult_PaymentHashRetryableSendFailureZ_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PaymentHashRetryableSendFailureZ_clone(orig);
        return nativeResponseValue;
 }
        // uint64_t C2Tuple_PaymentHashPaymentIdZ_clone_ptr(LDKC2Tuple_PaymentHashPaymentIdZ *NONNULL_PTR arg);
@@ -11964,6 +13705,105 @@ export function CResult_ChannelConfigDecodeErrorZ_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_CResult_ChannelConfigDecodeErrorZ_clone(orig);
        return nativeResponseValue;
+}
+       // struct LDKCOption_APIErrorZ COption_APIErrorZ_some(struct LDKAPIError o);
+/* @internal */
+export function COption_APIErrorZ_some(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_APIErrorZ_some(o);
+       return nativeResponseValue;
+}
+       // struct LDKCOption_APIErrorZ COption_APIErrorZ_none(void);
+/* @internal */
+export function COption_APIErrorZ_none(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_APIErrorZ_none();
+       return nativeResponseValue;
+}
+       // void COption_APIErrorZ_free(struct LDKCOption_APIErrorZ _res);
+/* @internal */
+export function COption_APIErrorZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_APIErrorZ_free(_res);
+       // debug statements here
+}
+       // uint64_t COption_APIErrorZ_clone_ptr(LDKCOption_APIErrorZ *NONNULL_PTR arg);
+/* @internal */
+export function COption_APIErrorZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_APIErrorZ_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKCOption_APIErrorZ COption_APIErrorZ_clone(const struct LDKCOption_APIErrorZ *NONNULL_PTR orig);
+/* @internal */
+export function COption_APIErrorZ_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_APIErrorZ_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_COption_APIErrorZDecodeErrorZ CResult_COption_APIErrorZDecodeErrorZ_ok(struct LDKCOption_APIErrorZ o);
+/* @internal */
+export function CResult_COption_APIErrorZDecodeErrorZ_ok(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_COption_APIErrorZDecodeErrorZ_ok(o);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_COption_APIErrorZDecodeErrorZ CResult_COption_APIErrorZDecodeErrorZ_err(struct LDKDecodeError e);
+/* @internal */
+export function CResult_COption_APIErrorZDecodeErrorZ_err(e: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_COption_APIErrorZDecodeErrorZ_err(e);
+       return nativeResponseValue;
+}
+       // bool CResult_COption_APIErrorZDecodeErrorZ_is_ok(const struct LDKCResult_COption_APIErrorZDecodeErrorZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_COption_APIErrorZDecodeErrorZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_COption_APIErrorZDecodeErrorZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_COption_APIErrorZDecodeErrorZ_free(struct LDKCResult_COption_APIErrorZDecodeErrorZ _res);
+/* @internal */
+export function CResult_COption_APIErrorZDecodeErrorZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_COption_APIErrorZDecodeErrorZ_free(_res);
+       // debug statements here
+}
+       // uint64_t CResult_COption_APIErrorZDecodeErrorZ_clone_ptr(LDKCResult_COption_APIErrorZDecodeErrorZ *NONNULL_PTR arg);
+/* @internal */
+export function CResult_COption_APIErrorZDecodeErrorZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_COption_APIErrorZDecodeErrorZ_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_COption_APIErrorZDecodeErrorZ CResult_COption_APIErrorZDecodeErrorZ_clone(const struct LDKCResult_COption_APIErrorZDecodeErrorZ *NONNULL_PTR orig);
+/* @internal */
+export function CResult_COption_APIErrorZDecodeErrorZ_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_COption_APIErrorZDecodeErrorZ_clone(orig);
+       return nativeResponseValue;
 }
        // struct LDKCResult_OutPointDecodeErrorZ CResult_OutPointDecodeErrorZ_ok(struct LDKOutPoint o);
 /* @internal */
@@ -12172,1381 +14012,1759 @@ export function CResult_PaymentIdPaymentErrorZ_clone(orig: bigint): bigint {
        const nativeResponseValue = wasm.TS_CResult_PaymentIdPaymentErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCResult_SiPrefixParseErrorZ CResult_SiPrefixParseErrorZ_ok(enum LDKSiPrefix o);
+       // struct LDKCResult_NonePaymentErrorZ CResult_NonePaymentErrorZ_ok(void);
 /* @internal */
-export function CResult_SiPrefixParseErrorZ_ok(o: SiPrefix): bigint {
+export function CResult_NonePaymentErrorZ_ok(): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SiPrefixParseErrorZ_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_NonePaymentErrorZ_ok();
        return nativeResponseValue;
 }
-       // struct LDKCResult_SiPrefixParseErrorZ CResult_SiPrefixParseErrorZ_err(struct LDKParseError e);
+       // struct LDKCResult_NonePaymentErrorZ CResult_NonePaymentErrorZ_err(struct LDKPaymentError e);
 /* @internal */
-export function CResult_SiPrefixParseErrorZ_err(e: bigint): bigint {
+export function CResult_NonePaymentErrorZ_err(e: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SiPrefixParseErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_CResult_NonePaymentErrorZ_err(e);
        return nativeResponseValue;
 }
-       // bool CResult_SiPrefixParseErrorZ_is_ok(const struct LDKCResult_SiPrefixParseErrorZ *NONNULL_PTR o);
+       // bool CResult_NonePaymentErrorZ_is_ok(const struct LDKCResult_NonePaymentErrorZ *NONNULL_PTR o);
 /* @internal */
-export function CResult_SiPrefixParseErrorZ_is_ok(o: bigint): boolean {
+export function CResult_NonePaymentErrorZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SiPrefixParseErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_NonePaymentErrorZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void CResult_SiPrefixParseErrorZ_free(struct LDKCResult_SiPrefixParseErrorZ _res);
+       // void CResult_NonePaymentErrorZ_free(struct LDKCResult_NonePaymentErrorZ _res);
 /* @internal */
-export function CResult_SiPrefixParseErrorZ_free(_res: bigint): void {
+export function CResult_NonePaymentErrorZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SiPrefixParseErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_NonePaymentErrorZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_SiPrefixParseErrorZ_clone_ptr(LDKCResult_SiPrefixParseErrorZ *NONNULL_PTR arg);
+       // uint64_t CResult_NonePaymentErrorZ_clone_ptr(LDKCResult_NonePaymentErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_SiPrefixParseErrorZ_clone_ptr(arg: bigint): bigint {
+export function CResult_NonePaymentErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SiPrefixParseErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_NonePaymentErrorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_SiPrefixParseErrorZ CResult_SiPrefixParseErrorZ_clone(const struct LDKCResult_SiPrefixParseErrorZ *NONNULL_PTR orig);
+       // struct LDKCResult_NonePaymentErrorZ CResult_NonePaymentErrorZ_clone(const struct LDKCResult_NonePaymentErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_SiPrefixParseErrorZ_clone(orig: bigint): bigint {
+export function CResult_NonePaymentErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SiPrefixParseErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_NonePaymentErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCResult_InvoiceParseOrSemanticErrorZ CResult_InvoiceParseOrSemanticErrorZ_ok(struct LDKInvoice o);
+       // struct LDKCResult_StringErrorZ CResult_StringErrorZ_ok(struct LDKStr o);
 /* @internal */
-export function CResult_InvoiceParseOrSemanticErrorZ_ok(o: bigint): bigint {
+export function CResult_StringErrorZ_ok(o: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_InvoiceParseOrSemanticErrorZ_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_StringErrorZ_ok(o);
        return nativeResponseValue;
 }
-       // struct LDKCResult_InvoiceParseOrSemanticErrorZ CResult_InvoiceParseOrSemanticErrorZ_err(struct LDKParseOrSemanticError e);
+       // struct LDKCResult_StringErrorZ CResult_StringErrorZ_err(enum LDKSecp256k1Error e);
 /* @internal */
-export function CResult_InvoiceParseOrSemanticErrorZ_err(e: bigint): bigint {
+export function CResult_StringErrorZ_err(e: Secp256k1Error): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_InvoiceParseOrSemanticErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_CResult_StringErrorZ_err(e);
        return nativeResponseValue;
 }
-       // bool CResult_InvoiceParseOrSemanticErrorZ_is_ok(const struct LDKCResult_InvoiceParseOrSemanticErrorZ *NONNULL_PTR o);
+       // bool CResult_StringErrorZ_is_ok(const struct LDKCResult_StringErrorZ *NONNULL_PTR o);
 /* @internal */
-export function CResult_InvoiceParseOrSemanticErrorZ_is_ok(o: bigint): boolean {
+export function CResult_StringErrorZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_InvoiceParseOrSemanticErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_StringErrorZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void CResult_InvoiceParseOrSemanticErrorZ_free(struct LDKCResult_InvoiceParseOrSemanticErrorZ _res);
+       // void CResult_StringErrorZ_free(struct LDKCResult_StringErrorZ _res);
 /* @internal */
-export function CResult_InvoiceParseOrSemanticErrorZ_free(_res: bigint): void {
+export function CResult_StringErrorZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_InvoiceParseOrSemanticErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_StringErrorZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_InvoiceParseOrSemanticErrorZ_clone_ptr(LDKCResult_InvoiceParseOrSemanticErrorZ *NONNULL_PTR arg);
+       // uint64_t CResult_StringErrorZ_clone_ptr(LDKCResult_StringErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_InvoiceParseOrSemanticErrorZ_clone_ptr(arg: bigint): bigint {
+export function CResult_StringErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_InvoiceParseOrSemanticErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_StringErrorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_InvoiceParseOrSemanticErrorZ CResult_InvoiceParseOrSemanticErrorZ_clone(const struct LDKCResult_InvoiceParseOrSemanticErrorZ *NONNULL_PTR orig);
+       // struct LDKCResult_StringErrorZ CResult_StringErrorZ_clone(const struct LDKCResult_StringErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_InvoiceParseOrSemanticErrorZ_clone(orig: bigint): bigint {
+export function CResult_StringErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_InvoiceParseOrSemanticErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_StringErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCResult_SignedRawInvoiceParseErrorZ CResult_SignedRawInvoiceParseErrorZ_ok(struct LDKSignedRawInvoice o);
+       // struct LDKCResult_PublicKeyErrorZ CResult_PublicKeyErrorZ_ok(struct LDKPublicKey o);
 /* @internal */
-export function CResult_SignedRawInvoiceParseErrorZ_ok(o: bigint): bigint {
+export function CResult_PublicKeyErrorZ_ok(o: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SignedRawInvoiceParseErrorZ_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_ok(o);
        return nativeResponseValue;
 }
-       // struct LDKCResult_SignedRawInvoiceParseErrorZ CResult_SignedRawInvoiceParseErrorZ_err(struct LDKParseError e);
+       // struct LDKCResult_PublicKeyErrorZ CResult_PublicKeyErrorZ_err(enum LDKSecp256k1Error e);
 /* @internal */
-export function CResult_SignedRawInvoiceParseErrorZ_err(e: bigint): bigint {
+export function CResult_PublicKeyErrorZ_err(e: Secp256k1Error): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SignedRawInvoiceParseErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_err(e);
        return nativeResponseValue;
 }
-       // bool CResult_SignedRawInvoiceParseErrorZ_is_ok(const struct LDKCResult_SignedRawInvoiceParseErrorZ *NONNULL_PTR o);
+       // bool CResult_PublicKeyErrorZ_is_ok(const struct LDKCResult_PublicKeyErrorZ *NONNULL_PTR o);
 /* @internal */
-export function CResult_SignedRawInvoiceParseErrorZ_is_ok(o: bigint): boolean {
+export function CResult_PublicKeyErrorZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SignedRawInvoiceParseErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void CResult_SignedRawInvoiceParseErrorZ_free(struct LDKCResult_SignedRawInvoiceParseErrorZ _res);
+       // void CResult_PublicKeyErrorZ_free(struct LDKCResult_PublicKeyErrorZ _res);
 /* @internal */
-export function CResult_SignedRawInvoiceParseErrorZ_free(_res: bigint): void {
+export function CResult_PublicKeyErrorZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SignedRawInvoiceParseErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_SignedRawInvoiceParseErrorZ_clone_ptr(LDKCResult_SignedRawInvoiceParseErrorZ *NONNULL_PTR arg);
+       // uint64_t CResult_PublicKeyErrorZ_clone_ptr(LDKCResult_PublicKeyErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_SignedRawInvoiceParseErrorZ_clone_ptr(arg: bigint): bigint {
+export function CResult_PublicKeyErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SignedRawInvoiceParseErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_SignedRawInvoiceParseErrorZ CResult_SignedRawInvoiceParseErrorZ_clone(const struct LDKCResult_SignedRawInvoiceParseErrorZ *NONNULL_PTR orig);
+       // struct LDKCResult_PublicKeyErrorZ CResult_PublicKeyErrorZ_clone(const struct LDKCResult_PublicKeyErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_SignedRawInvoiceParseErrorZ_clone(orig: bigint): bigint {
+export function CResult_PublicKeyErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_SignedRawInvoiceParseErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_PublicKeyErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // uint64_t C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone_ptr(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR arg);
+       // struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ CResult_ChannelMonitorUpdateDecodeErrorZ_ok(struct LDKChannelMonitorUpdate o);
 /* @internal */
-export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone_ptr(arg: bigint): bigint {
+export function CResult_ChannelMonitorUpdateDecodeErrorZ_ok(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_ok(o);
        return nativeResponseValue;
 }
-       // struct LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone(const struct LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR orig);
+       // struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ CResult_ChannelMonitorUpdateDecodeErrorZ_err(struct LDKDecodeError e);
 /* @internal */
-export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone(orig: bigint): bigint {
+export function CResult_ChannelMonitorUpdateDecodeErrorZ_err(e: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_err(e);
        return nativeResponseValue;
 }
-       // struct LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ C3Tuple_RawInvoice_u832InvoiceSignatureZ_new(struct LDKRawInvoice a, struct LDKThirtyTwoBytes b, struct LDKInvoiceSignature c);
+       // bool CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(const struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR o);
 /* @internal */
-export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_new(a: bigint, b: number, c: bigint): bigint {
+export function CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_new(a, b, c);
+       const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void C3Tuple_RawInvoice_u832InvoiceSignatureZ_free(struct LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ _res);
+       // void CResult_ChannelMonitorUpdateDecodeErrorZ_free(struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ _res);
 /* @internal */
-export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_free(_res: bigint): void {
+export function CResult_ChannelMonitorUpdateDecodeErrorZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_free(_res);
        // debug statements here
 }
-       // struct LDKCResult_PayeePubKeyErrorZ CResult_PayeePubKeyErrorZ_ok(struct LDKPayeePubKey o);
+       // uint64_t CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_PayeePubKeyErrorZ_ok(o: bigint): bigint {
+export function CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PayeePubKeyErrorZ_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_PayeePubKeyErrorZ CResult_PayeePubKeyErrorZ_err(enum LDKSecp256k1Error e);
+       // struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ CResult_ChannelMonitorUpdateDecodeErrorZ_clone(const struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_PayeePubKeyErrorZ_err(e: Secp256k1Error): bigint {
+export function CResult_ChannelMonitorUpdateDecodeErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PayeePubKeyErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // bool CResult_PayeePubKeyErrorZ_is_ok(const struct LDKCResult_PayeePubKeyErrorZ *NONNULL_PTR o);
+       // struct LDKCOption_MonitorEventZ COption_MonitorEventZ_some(struct LDKMonitorEvent o);
 /* @internal */
-export function CResult_PayeePubKeyErrorZ_is_ok(o: bigint): boolean {
+export function COption_MonitorEventZ_some(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PayeePubKeyErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_COption_MonitorEventZ_some(o);
        return nativeResponseValue;
 }
-       // void CResult_PayeePubKeyErrorZ_free(struct LDKCResult_PayeePubKeyErrorZ _res);
+       // struct LDKCOption_MonitorEventZ COption_MonitorEventZ_none(void);
 /* @internal */
-export function CResult_PayeePubKeyErrorZ_free(_res: bigint): void {
+export function COption_MonitorEventZ_none(): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PayeePubKeyErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_COption_MonitorEventZ_none();
+       return nativeResponseValue;
+}
+       // void COption_MonitorEventZ_free(struct LDKCOption_MonitorEventZ _res);
+/* @internal */
+export function COption_MonitorEventZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_MonitorEventZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_PayeePubKeyErrorZ_clone_ptr(LDKCResult_PayeePubKeyErrorZ *NONNULL_PTR arg);
+       // uint64_t COption_MonitorEventZ_clone_ptr(LDKCOption_MonitorEventZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_PayeePubKeyErrorZ_clone_ptr(arg: bigint): bigint {
+export function COption_MonitorEventZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PayeePubKeyErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_COption_MonitorEventZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_PayeePubKeyErrorZ CResult_PayeePubKeyErrorZ_clone(const struct LDKCResult_PayeePubKeyErrorZ *NONNULL_PTR orig);
+       // struct LDKCOption_MonitorEventZ COption_MonitorEventZ_clone(const struct LDKCOption_MonitorEventZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_PayeePubKeyErrorZ_clone(orig: bigint): bigint {
+export function COption_MonitorEventZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PayeePubKeyErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_COption_MonitorEventZ_clone(orig);
        return nativeResponseValue;
 }
-       // void CVec_PrivateRouteZ_free(struct LDKCVec_PrivateRouteZ _res);
+       // struct LDKCResult_COption_MonitorEventZDecodeErrorZ CResult_COption_MonitorEventZDecodeErrorZ_ok(struct LDKCOption_MonitorEventZ o);
 /* @internal */
-export function CVec_PrivateRouteZ_free(_res: number): void {
+export function CResult_COption_MonitorEventZDecodeErrorZ_ok(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CVec_PrivateRouteZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_ok(o);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_COption_MonitorEventZDecodeErrorZ CResult_COption_MonitorEventZDecodeErrorZ_err(struct LDKDecodeError e);
+/* @internal */
+export function CResult_COption_MonitorEventZDecodeErrorZ_err(e: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_err(e);
+       return nativeResponseValue;
+}
+       // bool CResult_COption_MonitorEventZDecodeErrorZ_is_ok(const struct LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_COption_MonitorEventZDecodeErrorZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_COption_MonitorEventZDecodeErrorZ_free(struct LDKCResult_COption_MonitorEventZDecodeErrorZ _res);
+/* @internal */
+export function CResult_COption_MonitorEventZDecodeErrorZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_free(_res);
        // debug statements here
 }
-       // struct LDKCResult_PositiveTimestampCreationErrorZ CResult_PositiveTimestampCreationErrorZ_ok(struct LDKPositiveTimestamp o);
+       // uint64_t CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_PositiveTimestampCreationErrorZ_ok(o: bigint): bigint {
+export function CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PositiveTimestampCreationErrorZ_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_PositiveTimestampCreationErrorZ CResult_PositiveTimestampCreationErrorZ_err(enum LDKCreationError e);
+       // struct LDKCResult_COption_MonitorEventZDecodeErrorZ CResult_COption_MonitorEventZDecodeErrorZ_clone(const struct LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_PositiveTimestampCreationErrorZ_err(e: CreationError): bigint {
+export function CResult_COption_MonitorEventZDecodeErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PositiveTimestampCreationErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // bool CResult_PositiveTimestampCreationErrorZ_is_ok(const struct LDKCResult_PositiveTimestampCreationErrorZ *NONNULL_PTR o);
+       // struct LDKCResult_HTLCUpdateDecodeErrorZ CResult_HTLCUpdateDecodeErrorZ_ok(struct LDKHTLCUpdate o);
 /* @internal */
-export function CResult_PositiveTimestampCreationErrorZ_is_ok(o: bigint): boolean {
+export function CResult_HTLCUpdateDecodeErrorZ_ok(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PositiveTimestampCreationErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_ok(o);
        return nativeResponseValue;
 }
-       // void CResult_PositiveTimestampCreationErrorZ_free(struct LDKCResult_PositiveTimestampCreationErrorZ _res);
+       // struct LDKCResult_HTLCUpdateDecodeErrorZ CResult_HTLCUpdateDecodeErrorZ_err(struct LDKDecodeError e);
 /* @internal */
-export function CResult_PositiveTimestampCreationErrorZ_free(_res: bigint): void {
+export function CResult_HTLCUpdateDecodeErrorZ_err(e: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PositiveTimestampCreationErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_err(e);
+       return nativeResponseValue;
+}
+       // bool CResult_HTLCUpdateDecodeErrorZ_is_ok(const struct LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_HTLCUpdateDecodeErrorZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_HTLCUpdateDecodeErrorZ_free(struct LDKCResult_HTLCUpdateDecodeErrorZ _res);
+/* @internal */
+export function CResult_HTLCUpdateDecodeErrorZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_PositiveTimestampCreationErrorZ_clone_ptr(LDKCResult_PositiveTimestampCreationErrorZ *NONNULL_PTR arg);
+       // uint64_t CResult_HTLCUpdateDecodeErrorZ_clone_ptr(LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_PositiveTimestampCreationErrorZ_clone_ptr(arg: bigint): bigint {
+export function CResult_HTLCUpdateDecodeErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PositiveTimestampCreationErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_PositiveTimestampCreationErrorZ CResult_PositiveTimestampCreationErrorZ_clone(const struct LDKCResult_PositiveTimestampCreationErrorZ *NONNULL_PTR orig);
+       // struct LDKCResult_HTLCUpdateDecodeErrorZ CResult_HTLCUpdateDecodeErrorZ_clone(const struct LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_PositiveTimestampCreationErrorZ_clone(orig: bigint): bigint {
+export function CResult_HTLCUpdateDecodeErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PositiveTimestampCreationErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCResult_NoneSemanticErrorZ CResult_NoneSemanticErrorZ_ok(void);
+       // uint64_t C2Tuple_OutPointScriptZ_clone_ptr(LDKC2Tuple_OutPointScriptZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_NoneSemanticErrorZ_ok(): bigint {
+export function C2Tuple_OutPointScriptZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NoneSemanticErrorZ_ok();
+       const nativeResponseValue = wasm.TS_C2Tuple_OutPointScriptZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_NoneSemanticErrorZ CResult_NoneSemanticErrorZ_err(enum LDKSemanticError e);
+       // struct LDKC2Tuple_OutPointScriptZ C2Tuple_OutPointScriptZ_clone(const struct LDKC2Tuple_OutPointScriptZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_NoneSemanticErrorZ_err(e: SemanticError): bigint {
+export function C2Tuple_OutPointScriptZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NoneSemanticErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_C2Tuple_OutPointScriptZ_clone(orig);
        return nativeResponseValue;
 }
-       // bool CResult_NoneSemanticErrorZ_is_ok(const struct LDKCResult_NoneSemanticErrorZ *NONNULL_PTR o);
+       // struct LDKC2Tuple_OutPointScriptZ C2Tuple_OutPointScriptZ_new(struct LDKOutPoint a, struct LDKCVec_u8Z b);
 /* @internal */
-export function CResult_NoneSemanticErrorZ_is_ok(o: bigint): boolean {
+export function C2Tuple_OutPointScriptZ_new(a: bigint, b: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NoneSemanticErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_C2Tuple_OutPointScriptZ_new(a, b);
        return nativeResponseValue;
 }
-       // void CResult_NoneSemanticErrorZ_free(struct LDKCResult_NoneSemanticErrorZ _res);
+       // void C2Tuple_OutPointScriptZ_free(struct LDKC2Tuple_OutPointScriptZ _res);
 /* @internal */
-export function CResult_NoneSemanticErrorZ_free(_res: bigint): void {
+export function C2Tuple_OutPointScriptZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NoneSemanticErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_C2Tuple_OutPointScriptZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_NoneSemanticErrorZ_clone_ptr(LDKCResult_NoneSemanticErrorZ *NONNULL_PTR arg);
+       // uint64_t C2Tuple_u32ScriptZ_clone_ptr(LDKC2Tuple_u32ScriptZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_NoneSemanticErrorZ_clone_ptr(arg: bigint): bigint {
+export function C2Tuple_u32ScriptZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NoneSemanticErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_C2Tuple_u32ScriptZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_NoneSemanticErrorZ CResult_NoneSemanticErrorZ_clone(const struct LDKCResult_NoneSemanticErrorZ *NONNULL_PTR orig);
+       // struct LDKC2Tuple_u32ScriptZ C2Tuple_u32ScriptZ_clone(const struct LDKC2Tuple_u32ScriptZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_NoneSemanticErrorZ_clone(orig: bigint): bigint {
+export function C2Tuple_u32ScriptZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NoneSemanticErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_C2Tuple_u32ScriptZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCResult_InvoiceSemanticErrorZ CResult_InvoiceSemanticErrorZ_ok(struct LDKInvoice o);
+       // struct LDKC2Tuple_u32ScriptZ C2Tuple_u32ScriptZ_new(uint32_t a, struct LDKCVec_u8Z b);
 /* @internal */
-export function CResult_InvoiceSemanticErrorZ_ok(o: bigint): bigint {
+export function C2Tuple_u32ScriptZ_new(a: number, b: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_InvoiceSemanticErrorZ_ok(o);
+       const nativeResponseValue = wasm.TS_C2Tuple_u32ScriptZ_new(a, b);
        return nativeResponseValue;
 }
-       // struct LDKCResult_InvoiceSemanticErrorZ CResult_InvoiceSemanticErrorZ_err(enum LDKSemanticError e);
+       // void C2Tuple_u32ScriptZ_free(struct LDKC2Tuple_u32ScriptZ _res);
 /* @internal */
-export function CResult_InvoiceSemanticErrorZ_err(e: SemanticError): bigint {
+export function C2Tuple_u32ScriptZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_InvoiceSemanticErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_C2Tuple_u32ScriptZ_free(_res);
+       // debug statements here
+}
+       // void CVec_C2Tuple_u32ScriptZZ_free(struct LDKCVec_C2Tuple_u32ScriptZZ _res);
+/* @internal */
+export function CVec_C2Tuple_u32ScriptZZ_free(_res: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CVec_C2Tuple_u32ScriptZZ_free(_res);
+       // debug statements here
+}
+       // uint64_t C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone_ptr(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR arg);
+/* @internal */
+export function C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // bool CResult_InvoiceSemanticErrorZ_is_ok(const struct LDKCResult_InvoiceSemanticErrorZ *NONNULL_PTR o);
+       // struct LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone(const struct LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_InvoiceSemanticErrorZ_is_ok(o: bigint): boolean {
+export function C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_InvoiceSemanticErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone(orig);
        return nativeResponseValue;
 }
-       // void CResult_InvoiceSemanticErrorZ_free(struct LDKCResult_InvoiceSemanticErrorZ _res);
+       // struct LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(struct LDKThirtyTwoBytes a, struct LDKCVec_C2Tuple_u32ScriptZZ b);
 /* @internal */
-export function CResult_InvoiceSemanticErrorZ_free(_res: bigint): void {
+export function C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(a: number, b: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_InvoiceSemanticErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(a, b);
+       return nativeResponseValue;
+}
+       // void C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(struct LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ _res);
+/* @internal */
+export function C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_InvoiceSemanticErrorZ_clone_ptr(LDKCResult_InvoiceSemanticErrorZ *NONNULL_PTR arg);
+       // void CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(struct LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ _res);
 /* @internal */
-export function CResult_InvoiceSemanticErrorZ_clone_ptr(arg: bigint): bigint {
+export function CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(_res: number): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_InvoiceSemanticErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(_res);
+       // debug statements here
+}
+       // void CVec_EventZ_free(struct LDKCVec_EventZ _res);
+/* @internal */
+export function CVec_EventZ_free(_res: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CVec_EventZ_free(_res);
+       // debug statements here
+}
+       // void CVec_TransactionZ_free(struct LDKCVec_TransactionZ _res);
+/* @internal */
+export function CVec_TransactionZ_free(_res: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CVec_TransactionZ_free(_res);
+       // debug statements here
+}
+       // uint64_t C2Tuple_u32TxOutZ_clone_ptr(LDKC2Tuple_u32TxOutZ *NONNULL_PTR arg);
+/* @internal */
+export function C2Tuple_u32TxOutZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_u32TxOutZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_InvoiceSemanticErrorZ CResult_InvoiceSemanticErrorZ_clone(const struct LDKCResult_InvoiceSemanticErrorZ *NONNULL_PTR orig);
+       // struct LDKC2Tuple_u32TxOutZ C2Tuple_u32TxOutZ_clone(const struct LDKC2Tuple_u32TxOutZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_InvoiceSemanticErrorZ_clone(orig: bigint): bigint {
+export function C2Tuple_u32TxOutZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_InvoiceSemanticErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_C2Tuple_u32TxOutZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCResult_DescriptionCreationErrorZ CResult_DescriptionCreationErrorZ_ok(struct LDKDescription o);
+       // struct LDKC2Tuple_u32TxOutZ C2Tuple_u32TxOutZ_new(uint32_t a, struct LDKTxOut b);
 /* @internal */
-export function CResult_DescriptionCreationErrorZ_ok(o: bigint): bigint {
+export function C2Tuple_u32TxOutZ_new(a: number, b: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_DescriptionCreationErrorZ_ok(o);
+       const nativeResponseValue = wasm.TS_C2Tuple_u32TxOutZ_new(a, b);
        return nativeResponseValue;
 }
-       // struct LDKCResult_DescriptionCreationErrorZ CResult_DescriptionCreationErrorZ_err(enum LDKCreationError e);
+       // void C2Tuple_u32TxOutZ_free(struct LDKC2Tuple_u32TxOutZ _res);
 /* @internal */
-export function CResult_DescriptionCreationErrorZ_err(e: CreationError): bigint {
+export function C2Tuple_u32TxOutZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_DescriptionCreationErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_C2Tuple_u32TxOutZ_free(_res);
+       // debug statements here
+}
+       // void CVec_C2Tuple_u32TxOutZZ_free(struct LDKCVec_C2Tuple_u32TxOutZZ _res);
+/* @internal */
+export function CVec_C2Tuple_u32TxOutZZ_free(_res: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CVec_C2Tuple_u32TxOutZZ_free(_res);
+       // debug statements here
+}
+       // uint64_t C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR arg);
+/* @internal */
+export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // bool CResult_DescriptionCreationErrorZ_is_ok(const struct LDKCResult_DescriptionCreationErrorZ *NONNULL_PTR o);
+       // struct LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(const struct LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_DescriptionCreationErrorZ_is_ok(o: bigint): boolean {
+export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_DescriptionCreationErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(orig);
        return nativeResponseValue;
 }
-       // void CResult_DescriptionCreationErrorZ_free(struct LDKCResult_DescriptionCreationErrorZ _res);
+       // struct LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(struct LDKThirtyTwoBytes a, struct LDKCVec_C2Tuple_u32TxOutZZ b);
 /* @internal */
-export function CResult_DescriptionCreationErrorZ_free(_res: bigint): void {
+export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(a: number, b: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_DescriptionCreationErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(a, b);
+       return nativeResponseValue;
+}
+       // void C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(struct LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ _res);
+/* @internal */
+export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_DescriptionCreationErrorZ_clone_ptr(LDKCResult_DescriptionCreationErrorZ *NONNULL_PTR arg);
+       // void CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(struct LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ _res);
 /* @internal */
-export function CResult_DescriptionCreationErrorZ_clone_ptr(arg: bigint): bigint {
+export function CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(_res: number): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_DescriptionCreationErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(_res);
+       // debug statements here
+}
+       // void CVec_BalanceZ_free(struct LDKCVec_BalanceZ _res);
+/* @internal */
+export function CVec_BalanceZ_free(_res: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CVec_BalanceZ_free(_res);
+       // debug statements here
+}
+       // uint64_t C2Tuple_BlockHashChannelMonitorZ_clone_ptr(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR arg);
+/* @internal */
+export function C2Tuple_BlockHashChannelMonitorZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelMonitorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_DescriptionCreationErrorZ CResult_DescriptionCreationErrorZ_clone(const struct LDKCResult_DescriptionCreationErrorZ *NONNULL_PTR orig);
+       // struct LDKC2Tuple_BlockHashChannelMonitorZ C2Tuple_BlockHashChannelMonitorZ_clone(const struct LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_DescriptionCreationErrorZ_clone(orig: bigint): bigint {
+export function C2Tuple_BlockHashChannelMonitorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_DescriptionCreationErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelMonitorZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCResult_PrivateRouteCreationErrorZ CResult_PrivateRouteCreationErrorZ_ok(struct LDKPrivateRoute o);
+       // struct LDKC2Tuple_BlockHashChannelMonitorZ C2Tuple_BlockHashChannelMonitorZ_new(struct LDKThirtyTwoBytes a, struct LDKChannelMonitor b);
 /* @internal */
-export function CResult_PrivateRouteCreationErrorZ_ok(o: bigint): bigint {
+export function C2Tuple_BlockHashChannelMonitorZ_new(a: number, b: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PrivateRouteCreationErrorZ_ok(o);
+       const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelMonitorZ_new(a, b);
        return nativeResponseValue;
 }
-       // struct LDKCResult_PrivateRouteCreationErrorZ CResult_PrivateRouteCreationErrorZ_err(enum LDKCreationError e);
+       // void C2Tuple_BlockHashChannelMonitorZ_free(struct LDKC2Tuple_BlockHashChannelMonitorZ _res);
 /* @internal */
-export function CResult_PrivateRouteCreationErrorZ_err(e: CreationError): bigint {
+export function C2Tuple_BlockHashChannelMonitorZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PrivateRouteCreationErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelMonitorZ_free(_res);
+       // debug statements here
+}
+       // struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(struct LDKC2Tuple_BlockHashChannelMonitorZ o);
+/* @internal */
+export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(o);
        return nativeResponseValue;
 }
-       // bool CResult_PrivateRouteCreationErrorZ_is_ok(const struct LDKCResult_PrivateRouteCreationErrorZ *NONNULL_PTR o);
+       // struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(struct LDKDecodeError e);
 /* @internal */
-export function CResult_PrivateRouteCreationErrorZ_is_ok(o: bigint): boolean {
+export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(e: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PrivateRouteCreationErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(e);
        return nativeResponseValue;
 }
-       // void CResult_PrivateRouteCreationErrorZ_free(struct LDKCResult_PrivateRouteCreationErrorZ _res);
+       // bool CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(const struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR o);
 /* @internal */
-export function CResult_PrivateRouteCreationErrorZ_free(_res: bigint): void {
+export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PrivateRouteCreationErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ _res);
+/* @internal */
+export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_PrivateRouteCreationErrorZ_clone_ptr(LDKCResult_PrivateRouteCreationErrorZ *NONNULL_PTR arg);
+       // uint64_t CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_PrivateRouteCreationErrorZ_clone_ptr(arg: bigint): bigint {
+export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PrivateRouteCreationErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_PrivateRouteCreationErrorZ CResult_PrivateRouteCreationErrorZ_clone(const struct LDKCResult_PrivateRouteCreationErrorZ *NONNULL_PTR orig);
+       // struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(const struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_PrivateRouteCreationErrorZ_clone(orig: bigint): bigint {
+export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_PrivateRouteCreationErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCResult_StringErrorZ CResult_StringErrorZ_ok(struct LDKStr o);
+       // uint64_t C2Tuple_PublicKeyTypeZ_clone_ptr(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_StringErrorZ_ok(o: number): bigint {
+export function C2Tuple_PublicKeyTypeZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_StringErrorZ_ok(o);
+       const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyTypeZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_StringErrorZ CResult_StringErrorZ_err(enum LDKSecp256k1Error e);
+       // struct LDKC2Tuple_PublicKeyTypeZ C2Tuple_PublicKeyTypeZ_clone(const struct LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_StringErrorZ_err(e: Secp256k1Error): bigint {
+export function C2Tuple_PublicKeyTypeZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_StringErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyTypeZ_clone(orig);
        return nativeResponseValue;
 }
-       // bool CResult_StringErrorZ_is_ok(const struct LDKCResult_StringErrorZ *NONNULL_PTR o);
+       // struct LDKC2Tuple_PublicKeyTypeZ C2Tuple_PublicKeyTypeZ_new(struct LDKPublicKey a, struct LDKType b);
 /* @internal */
-export function CResult_StringErrorZ_is_ok(o: bigint): boolean {
+export function C2Tuple_PublicKeyTypeZ_new(a: number, b: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_StringErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyTypeZ_new(a, b);
        return nativeResponseValue;
 }
-       // void CResult_StringErrorZ_free(struct LDKCResult_StringErrorZ _res);
+       // void C2Tuple_PublicKeyTypeZ_free(struct LDKC2Tuple_PublicKeyTypeZ _res);
 /* @internal */
-export function CResult_StringErrorZ_free(_res: bigint): void {
+export function C2Tuple_PublicKeyTypeZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_StringErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyTypeZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_StringErrorZ_clone_ptr(LDKCResult_StringErrorZ *NONNULL_PTR arg);
+       // void CVec_C2Tuple_PublicKeyTypeZZ_free(struct LDKCVec_C2Tuple_PublicKeyTypeZZ _res);
 /* @internal */
-export function CResult_StringErrorZ_clone_ptr(arg: bigint): bigint {
+export function CVec_C2Tuple_PublicKeyTypeZZ_free(_res: number): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_StringErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CVec_C2Tuple_PublicKeyTypeZZ_free(_res);
+       // debug statements here
+}
+       // struct LDKCOption_CustomOnionMessageContentsZ COption_CustomOnionMessageContentsZ_some(struct LDKCustomOnionMessageContents o);
+/* @internal */
+export function COption_CustomOnionMessageContentsZ_some(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_CustomOnionMessageContentsZ_some(o);
        return nativeResponseValue;
 }
-       // struct LDKCResult_StringErrorZ CResult_StringErrorZ_clone(const struct LDKCResult_StringErrorZ *NONNULL_PTR orig);
+       // struct LDKCOption_CustomOnionMessageContentsZ COption_CustomOnionMessageContentsZ_none(void);
 /* @internal */
-export function CResult_StringErrorZ_clone(orig: bigint): bigint {
+export function COption_CustomOnionMessageContentsZ_none(): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_StringErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_COption_CustomOnionMessageContentsZ_none();
        return nativeResponseValue;
 }
-       // struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ CResult_ChannelMonitorUpdateDecodeErrorZ_ok(struct LDKChannelMonitorUpdate o);
+       // void COption_CustomOnionMessageContentsZ_free(struct LDKCOption_CustomOnionMessageContentsZ _res);
 /* @internal */
-export function CResult_ChannelMonitorUpdateDecodeErrorZ_ok(o: bigint): bigint {
+export function COption_CustomOnionMessageContentsZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_ok(o);
+       const nativeResponseValue = wasm.TS_COption_CustomOnionMessageContentsZ_free(_res);
+       // debug statements here
+}
+       // uint64_t COption_CustomOnionMessageContentsZ_clone_ptr(LDKCOption_CustomOnionMessageContentsZ *NONNULL_PTR arg);
+/* @internal */
+export function COption_CustomOnionMessageContentsZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_CustomOnionMessageContentsZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ CResult_ChannelMonitorUpdateDecodeErrorZ_err(struct LDKDecodeError e);
+       // struct LDKCOption_CustomOnionMessageContentsZ COption_CustomOnionMessageContentsZ_clone(const struct LDKCOption_CustomOnionMessageContentsZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_ChannelMonitorUpdateDecodeErrorZ_err(e: bigint): bigint {
+export function COption_CustomOnionMessageContentsZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_COption_CustomOnionMessageContentsZ_clone(orig);
        return nativeResponseValue;
 }
-       // bool CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(const struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR o);
+       // struct LDKCResult_COption_CustomOnionMessageContentsZDecodeErrorZ CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_ok(struct LDKCOption_CustomOnionMessageContentsZ o);
 /* @internal */
-export function CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(o: bigint): boolean {
+export function CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_ok(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_ok(o);
        return nativeResponseValue;
 }
-       // void CResult_ChannelMonitorUpdateDecodeErrorZ_free(struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ _res);
+       // struct LDKCResult_COption_CustomOnionMessageContentsZDecodeErrorZ CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_err(struct LDKDecodeError e);
 /* @internal */
-export function CResult_ChannelMonitorUpdateDecodeErrorZ_free(_res: bigint): void {
+export function CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_err(e: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_err(e);
+       return nativeResponseValue;
+}
+       // bool CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_is_ok(const struct LDKCResult_COption_CustomOnionMessageContentsZDecodeErrorZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_free(struct LDKCResult_COption_CustomOnionMessageContentsZDecodeErrorZ _res);
+/* @internal */
+export function CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR arg);
+       // uint64_t CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_clone_ptr(LDKCResult_COption_CustomOnionMessageContentsZDecodeErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(arg: bigint): bigint {
+export function CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ CResult_ChannelMonitorUpdateDecodeErrorZ_clone(const struct LDKCResult_ChannelMonitorUpdateDecodeErrorZ *NONNULL_PTR orig);
+       // struct LDKCResult_COption_CustomOnionMessageContentsZDecodeErrorZ CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_clone(const struct LDKCResult_COption_CustomOnionMessageContentsZDecodeErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_ChannelMonitorUpdateDecodeErrorZ_clone(orig: bigint): bigint {
+export function CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_ChannelMonitorUpdateDecodeErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_COption_CustomOnionMessageContentsZDecodeErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCOption_MonitorEventZ COption_MonitorEventZ_some(struct LDKMonitorEvent o);
+       // struct LDKCOption_NetAddressZ COption_NetAddressZ_some(struct LDKNetAddress o);
 /* @internal */
-export function COption_MonitorEventZ_some(o: bigint): bigint {
+export function COption_NetAddressZ_some(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_COption_MonitorEventZ_some(o);
+       const nativeResponseValue = wasm.TS_COption_NetAddressZ_some(o);
        return nativeResponseValue;
 }
-       // struct LDKCOption_MonitorEventZ COption_MonitorEventZ_none(void);
+       // struct LDKCOption_NetAddressZ COption_NetAddressZ_none(void);
 /* @internal */
-export function COption_MonitorEventZ_none(): bigint {
+export function COption_NetAddressZ_none(): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_COption_MonitorEventZ_none();
+       const nativeResponseValue = wasm.TS_COption_NetAddressZ_none();
        return nativeResponseValue;
 }
-       // void COption_MonitorEventZ_free(struct LDKCOption_MonitorEventZ _res);
+       // void COption_NetAddressZ_free(struct LDKCOption_NetAddressZ _res);
 /* @internal */
-export function COption_MonitorEventZ_free(_res: bigint): void {
+export function COption_NetAddressZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_COption_MonitorEventZ_free(_res);
+       const nativeResponseValue = wasm.TS_COption_NetAddressZ_free(_res);
        // debug statements here
 }
-       // uint64_t COption_MonitorEventZ_clone_ptr(LDKCOption_MonitorEventZ *NONNULL_PTR arg);
+       // uint64_t COption_NetAddressZ_clone_ptr(LDKCOption_NetAddressZ *NONNULL_PTR arg);
 /* @internal */
-export function COption_MonitorEventZ_clone_ptr(arg: bigint): bigint {
+export function COption_NetAddressZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_COption_MonitorEventZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_COption_NetAddressZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCOption_MonitorEventZ COption_MonitorEventZ_clone(const struct LDKCOption_MonitorEventZ *NONNULL_PTR orig);
+       // struct LDKCOption_NetAddressZ COption_NetAddressZ_clone(const struct LDKCOption_NetAddressZ *NONNULL_PTR orig);
 /* @internal */
-export function COption_MonitorEventZ_clone(orig: bigint): bigint {
+export function COption_NetAddressZ_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_COption_NetAddressZ_clone(orig);
+       return nativeResponseValue;
+}
+       // uint64_t C2Tuple_PublicKeyCOption_NetAddressZZ_clone_ptr(LDKC2Tuple_PublicKeyCOption_NetAddressZZ *NONNULL_PTR arg);
+/* @internal */
+export function C2Tuple_PublicKeyCOption_NetAddressZZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyCOption_NetAddressZZ_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKC2Tuple_PublicKeyCOption_NetAddressZZ C2Tuple_PublicKeyCOption_NetAddressZZ_clone(const struct LDKC2Tuple_PublicKeyCOption_NetAddressZZ *NONNULL_PTR orig);
+/* @internal */
+export function C2Tuple_PublicKeyCOption_NetAddressZZ_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyCOption_NetAddressZZ_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKC2Tuple_PublicKeyCOption_NetAddressZZ C2Tuple_PublicKeyCOption_NetAddressZZ_new(struct LDKPublicKey a, struct LDKCOption_NetAddressZ b);
+/* @internal */
+export function C2Tuple_PublicKeyCOption_NetAddressZZ_new(a: number, b: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyCOption_NetAddressZZ_new(a, b);
+       return nativeResponseValue;
+}
+       // void C2Tuple_PublicKeyCOption_NetAddressZZ_free(struct LDKC2Tuple_PublicKeyCOption_NetAddressZZ _res);
+/* @internal */
+export function C2Tuple_PublicKeyCOption_NetAddressZZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyCOption_NetAddressZZ_free(_res);
+       // debug statements here
+}
+       // void CVec_C2Tuple_PublicKeyCOption_NetAddressZZZ_free(struct LDKCVec_C2Tuple_PublicKeyCOption_NetAddressZZZ _res);
+/* @internal */
+export function CVec_C2Tuple_PublicKeyCOption_NetAddressZZZ_free(_res: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CVec_C2Tuple_PublicKeyCOption_NetAddressZZZ_free(_res);
+       // debug statements here
+}
+       // struct LDKCResult_CVec_u8ZPeerHandleErrorZ CResult_CVec_u8ZPeerHandleErrorZ_ok(struct LDKCVec_u8Z o);
+/* @internal */
+export function CResult_CVec_u8ZPeerHandleErrorZ_ok(o: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_CVec_u8ZPeerHandleErrorZ_ok(o);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_CVec_u8ZPeerHandleErrorZ CResult_CVec_u8ZPeerHandleErrorZ_err(struct LDKPeerHandleError e);
+/* @internal */
+export function CResult_CVec_u8ZPeerHandleErrorZ_err(e: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_CVec_u8ZPeerHandleErrorZ_err(e);
+       return nativeResponseValue;
+}
+       // bool CResult_CVec_u8ZPeerHandleErrorZ_is_ok(const struct LDKCResult_CVec_u8ZPeerHandleErrorZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_CVec_u8ZPeerHandleErrorZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_CVec_u8ZPeerHandleErrorZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_CVec_u8ZPeerHandleErrorZ_free(struct LDKCResult_CVec_u8ZPeerHandleErrorZ _res);
+/* @internal */
+export function CResult_CVec_u8ZPeerHandleErrorZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_CVec_u8ZPeerHandleErrorZ_free(_res);
+       // debug statements here
+}
+       // uint64_t CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(LDKCResult_CVec_u8ZPeerHandleErrorZ *NONNULL_PTR arg);
+/* @internal */
+export function CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_CVec_u8ZPeerHandleErrorZ CResult_CVec_u8ZPeerHandleErrorZ_clone(const struct LDKCResult_CVec_u8ZPeerHandleErrorZ *NONNULL_PTR orig);
+/* @internal */
+export function CResult_CVec_u8ZPeerHandleErrorZ_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_CVec_u8ZPeerHandleErrorZ_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_NonePeerHandleErrorZ CResult_NonePeerHandleErrorZ_ok(void);
+/* @internal */
+export function CResult_NonePeerHandleErrorZ_ok(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_ok();
+       return nativeResponseValue;
+}
+       // struct LDKCResult_NonePeerHandleErrorZ CResult_NonePeerHandleErrorZ_err(struct LDKPeerHandleError e);
+/* @internal */
+export function CResult_NonePeerHandleErrorZ_err(e: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_err(e);
+       return nativeResponseValue;
+}
+       // bool CResult_NonePeerHandleErrorZ_is_ok(const struct LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_NonePeerHandleErrorZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_NonePeerHandleErrorZ_free(struct LDKCResult_NonePeerHandleErrorZ _res);
+/* @internal */
+export function CResult_NonePeerHandleErrorZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_free(_res);
+       // debug statements here
+}
+       // uint64_t CResult_NonePeerHandleErrorZ_clone_ptr(LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR arg);
+/* @internal */
+export function CResult_NonePeerHandleErrorZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_NonePeerHandleErrorZ CResult_NonePeerHandleErrorZ_clone(const struct LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR orig);
+/* @internal */
+export function CResult_NonePeerHandleErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_COption_MonitorEventZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCResult_COption_MonitorEventZDecodeErrorZ CResult_COption_MonitorEventZDecodeErrorZ_ok(struct LDKCOption_MonitorEventZ o);
+       // struct LDKCResult_boolPeerHandleErrorZ CResult_boolPeerHandleErrorZ_ok(bool o);
 /* @internal */
-export function CResult_COption_MonitorEventZDecodeErrorZ_ok(o: bigint): bigint {
+export function CResult_boolPeerHandleErrorZ_ok(o: boolean): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_ok(o);
        return nativeResponseValue;
 }
-       // struct LDKCResult_COption_MonitorEventZDecodeErrorZ CResult_COption_MonitorEventZDecodeErrorZ_err(struct LDKDecodeError e);
+       // struct LDKCResult_boolPeerHandleErrorZ CResult_boolPeerHandleErrorZ_err(struct LDKPeerHandleError e);
 /* @internal */
-export function CResult_COption_MonitorEventZDecodeErrorZ_err(e: bigint): bigint {
+export function CResult_boolPeerHandleErrorZ_err(e: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_err(e);
        return nativeResponseValue;
 }
-       // bool CResult_COption_MonitorEventZDecodeErrorZ_is_ok(const struct LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR o);
+       // bool CResult_boolPeerHandleErrorZ_is_ok(const struct LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR o);
 /* @internal */
-export function CResult_COption_MonitorEventZDecodeErrorZ_is_ok(o: bigint): boolean {
+export function CResult_boolPeerHandleErrorZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void CResult_COption_MonitorEventZDecodeErrorZ_free(struct LDKCResult_COption_MonitorEventZDecodeErrorZ _res);
+       // void CResult_boolPeerHandleErrorZ_free(struct LDKCResult_boolPeerHandleErrorZ _res);
 /* @internal */
-export function CResult_COption_MonitorEventZDecodeErrorZ_free(_res: bigint): void {
+export function CResult_boolPeerHandleErrorZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR arg);
+       // uint64_t CResult_boolPeerHandleErrorZ_clone_ptr(LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(arg: bigint): bigint {
+export function CResult_boolPeerHandleErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_COption_MonitorEventZDecodeErrorZ CResult_COption_MonitorEventZDecodeErrorZ_clone(const struct LDKCResult_COption_MonitorEventZDecodeErrorZ *NONNULL_PTR orig);
+       // struct LDKCResult_boolPeerHandleErrorZ CResult_boolPeerHandleErrorZ_clone(const struct LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_COption_MonitorEventZDecodeErrorZ_clone(orig: bigint): bigint {
+export function CResult_boolPeerHandleErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_COption_MonitorEventZDecodeErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCResult_HTLCUpdateDecodeErrorZ CResult_HTLCUpdateDecodeErrorZ_ok(struct LDKHTLCUpdate o);
+       // struct LDKCResult_TxOutUtxoLookupErrorZ CResult_TxOutUtxoLookupErrorZ_ok(struct LDKTxOut o);
 /* @internal */
-export function CResult_HTLCUpdateDecodeErrorZ_ok(o: bigint): bigint {
+export function CResult_TxOutUtxoLookupErrorZ_ok(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_TxOutUtxoLookupErrorZ_ok(o);
        return nativeResponseValue;
 }
-       // struct LDKCResult_HTLCUpdateDecodeErrorZ CResult_HTLCUpdateDecodeErrorZ_err(struct LDKDecodeError e);
+       // struct LDKCResult_TxOutUtxoLookupErrorZ CResult_TxOutUtxoLookupErrorZ_err(enum LDKUtxoLookupError e);
 /* @internal */
-export function CResult_HTLCUpdateDecodeErrorZ_err(e: bigint): bigint {
+export function CResult_TxOutUtxoLookupErrorZ_err(e: UtxoLookupError): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_CResult_TxOutUtxoLookupErrorZ_err(e);
        return nativeResponseValue;
 }
-       // bool CResult_HTLCUpdateDecodeErrorZ_is_ok(const struct LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR o);
+       // bool CResult_TxOutUtxoLookupErrorZ_is_ok(const struct LDKCResult_TxOutUtxoLookupErrorZ *NONNULL_PTR o);
 /* @internal */
-export function CResult_HTLCUpdateDecodeErrorZ_is_ok(o: bigint): boolean {
+export function CResult_TxOutUtxoLookupErrorZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_TxOutUtxoLookupErrorZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void CResult_HTLCUpdateDecodeErrorZ_free(struct LDKCResult_HTLCUpdateDecodeErrorZ _res);
+       // void CResult_TxOutUtxoLookupErrorZ_free(struct LDKCResult_TxOutUtxoLookupErrorZ _res);
 /* @internal */
-export function CResult_HTLCUpdateDecodeErrorZ_free(_res: bigint): void {
+export function CResult_TxOutUtxoLookupErrorZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_TxOutUtxoLookupErrorZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_HTLCUpdateDecodeErrorZ_clone_ptr(LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR arg);
+       // uint64_t CResult_TxOutUtxoLookupErrorZ_clone_ptr(LDKCResult_TxOutUtxoLookupErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_HTLCUpdateDecodeErrorZ_clone_ptr(arg: bigint): bigint {
+export function CResult_TxOutUtxoLookupErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_TxOutUtxoLookupErrorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_HTLCUpdateDecodeErrorZ CResult_HTLCUpdateDecodeErrorZ_clone(const struct LDKCResult_HTLCUpdateDecodeErrorZ *NONNULL_PTR orig);
+       // struct LDKCResult_TxOutUtxoLookupErrorZ CResult_TxOutUtxoLookupErrorZ_clone(const struct LDKCResult_TxOutUtxoLookupErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_HTLCUpdateDecodeErrorZ_clone(orig: bigint): bigint {
+export function CResult_TxOutUtxoLookupErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_HTLCUpdateDecodeErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_TxOutUtxoLookupErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // uint64_t C2Tuple_OutPointScriptZ_clone_ptr(LDKC2Tuple_OutPointScriptZ *NONNULL_PTR arg);
+       // struct LDKCResult_NoneSendErrorZ CResult_NoneSendErrorZ_ok(void);
 /* @internal */
-export function C2Tuple_OutPointScriptZ_clone_ptr(arg: bigint): bigint {
+export function CResult_NoneSendErrorZ_ok(): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_OutPointScriptZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_NoneSendErrorZ_ok();
        return nativeResponseValue;
 }
-       // struct LDKC2Tuple_OutPointScriptZ C2Tuple_OutPointScriptZ_clone(const struct LDKC2Tuple_OutPointScriptZ *NONNULL_PTR orig);
+       // struct LDKCResult_NoneSendErrorZ CResult_NoneSendErrorZ_err(struct LDKSendError e);
 /* @internal */
-export function C2Tuple_OutPointScriptZ_clone(orig: bigint): bigint {
+export function CResult_NoneSendErrorZ_err(e: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_OutPointScriptZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_NoneSendErrorZ_err(e);
        return nativeResponseValue;
 }
-       // struct LDKC2Tuple_OutPointScriptZ C2Tuple_OutPointScriptZ_new(struct LDKOutPoint a, struct LDKCVec_u8Z b);
+       // bool CResult_NoneSendErrorZ_is_ok(const struct LDKCResult_NoneSendErrorZ *NONNULL_PTR o);
 /* @internal */
-export function C2Tuple_OutPointScriptZ_new(a: bigint, b: number): bigint {
+export function CResult_NoneSendErrorZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_OutPointScriptZ_new(a, b);
+       const nativeResponseValue = wasm.TS_CResult_NoneSendErrorZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void C2Tuple_OutPointScriptZ_free(struct LDKC2Tuple_OutPointScriptZ _res);
+       // void CResult_NoneSendErrorZ_free(struct LDKCResult_NoneSendErrorZ _res);
 /* @internal */
-export function C2Tuple_OutPointScriptZ_free(_res: bigint): void {
+export function CResult_NoneSendErrorZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_OutPointScriptZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_NoneSendErrorZ_free(_res);
        // debug statements here
 }
-       // uint64_t C2Tuple_u32ScriptZ_clone_ptr(LDKC2Tuple_u32ScriptZ *NONNULL_PTR arg);
+       // struct LDKCResult_u32GraphSyncErrorZ CResult_u32GraphSyncErrorZ_ok(uint32_t o);
 /* @internal */
-export function C2Tuple_u32ScriptZ_clone_ptr(arg: bigint): bigint {
+export function CResult_u32GraphSyncErrorZ_ok(o: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_u32ScriptZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_u32GraphSyncErrorZ_ok(o);
        return nativeResponseValue;
 }
-       // struct LDKC2Tuple_u32ScriptZ C2Tuple_u32ScriptZ_clone(const struct LDKC2Tuple_u32ScriptZ *NONNULL_PTR orig);
+       // struct LDKCResult_u32GraphSyncErrorZ CResult_u32GraphSyncErrorZ_err(struct LDKGraphSyncError e);
 /* @internal */
-export function C2Tuple_u32ScriptZ_clone(orig: bigint): bigint {
+export function CResult_u32GraphSyncErrorZ_err(e: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_u32ScriptZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_u32GraphSyncErrorZ_err(e);
        return nativeResponseValue;
 }
-       // struct LDKC2Tuple_u32ScriptZ C2Tuple_u32ScriptZ_new(uint32_t a, struct LDKCVec_u8Z b);
+       // bool CResult_u32GraphSyncErrorZ_is_ok(const struct LDKCResult_u32GraphSyncErrorZ *NONNULL_PTR o);
 /* @internal */
-export function C2Tuple_u32ScriptZ_new(a: number, b: number): bigint {
+export function CResult_u32GraphSyncErrorZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_u32ScriptZ_new(a, b);
+       const nativeResponseValue = wasm.TS_CResult_u32GraphSyncErrorZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void C2Tuple_u32ScriptZ_free(struct LDKC2Tuple_u32ScriptZ _res);
-/* @internal */
-export function C2Tuple_u32ScriptZ_free(_res: bigint): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_C2Tuple_u32ScriptZ_free(_res);
-       // debug statements here
-}
-       // void CVec_C2Tuple_u32ScriptZZ_free(struct LDKCVec_C2Tuple_u32ScriptZZ _res);
+       // void CResult_u32GraphSyncErrorZ_free(struct LDKCResult_u32GraphSyncErrorZ _res);
 /* @internal */
-export function CVec_C2Tuple_u32ScriptZZ_free(_res: number): void {
+export function CResult_u32GraphSyncErrorZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CVec_C2Tuple_u32ScriptZZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_u32GraphSyncErrorZ_free(_res);
        // debug statements here
 }
-       // uint64_t C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone_ptr(LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR arg);
+       // struct LDKCResult_SiPrefixParseErrorZ CResult_SiPrefixParseErrorZ_ok(enum LDKSiPrefix o);
 /* @internal */
-export function C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone_ptr(arg: bigint): bigint {
+export function CResult_SiPrefixParseErrorZ_ok(o: SiPrefix): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_SiPrefixParseErrorZ_ok(o);
        return nativeResponseValue;
 }
-       // struct LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone(const struct LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ *NONNULL_PTR orig);
+       // struct LDKCResult_SiPrefixParseErrorZ CResult_SiPrefixParseErrorZ_err(struct LDKParseError e);
 /* @internal */
-export function C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone(orig: bigint): bigint {
+export function CResult_SiPrefixParseErrorZ_err(e: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_SiPrefixParseErrorZ_err(e);
        return nativeResponseValue;
 }
-       // struct LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(struct LDKThirtyTwoBytes a, struct LDKCVec_C2Tuple_u32ScriptZZ b);
+       // bool CResult_SiPrefixParseErrorZ_is_ok(const struct LDKCResult_SiPrefixParseErrorZ *NONNULL_PTR o);
 /* @internal */
-export function C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(a: number, b: number): bigint {
+export function CResult_SiPrefixParseErrorZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_new(a, b);
+       const nativeResponseValue = wasm.TS_CResult_SiPrefixParseErrorZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(struct LDKC2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ _res);
+       // void CResult_SiPrefixParseErrorZ_free(struct LDKCResult_SiPrefixParseErrorZ _res);
 /* @internal */
-export function C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(_res: bigint): void {
+export function CResult_SiPrefixParseErrorZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_SiPrefixParseErrorZ_free(_res);
        // debug statements here
 }
-       // void CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(struct LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ _res);
+       // uint64_t CResult_SiPrefixParseErrorZ_clone_ptr(LDKCResult_SiPrefixParseErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(_res: number): void {
+export function CResult_SiPrefixParseErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CVec_C2Tuple_TxidCVec_C2Tuple_u32ScriptZZZZ_free(_res);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_CResult_SiPrefixParseErrorZ_clone_ptr(arg);
+       return nativeResponseValue;
 }
-       // void CVec_EventZ_free(struct LDKCVec_EventZ _res);
+       // struct LDKCResult_SiPrefixParseErrorZ CResult_SiPrefixParseErrorZ_clone(const struct LDKCResult_SiPrefixParseErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CVec_EventZ_free(_res: number): void {
+export function CResult_SiPrefixParseErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CVec_EventZ_free(_res);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_CResult_SiPrefixParseErrorZ_clone(orig);
+       return nativeResponseValue;
 }
-       // void CVec_TransactionZ_free(struct LDKCVec_TransactionZ _res);
+       // struct LDKCResult_InvoiceParseOrSemanticErrorZ CResult_InvoiceParseOrSemanticErrorZ_ok(struct LDKInvoice o);
 /* @internal */
-export function CVec_TransactionZ_free(_res: number): void {
+export function CResult_InvoiceParseOrSemanticErrorZ_ok(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CVec_TransactionZ_free(_res);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_CResult_InvoiceParseOrSemanticErrorZ_ok(o);
+       return nativeResponseValue;
 }
-       // uint64_t C2Tuple_u32TxOutZ_clone_ptr(LDKC2Tuple_u32TxOutZ *NONNULL_PTR arg);
+       // struct LDKCResult_InvoiceParseOrSemanticErrorZ CResult_InvoiceParseOrSemanticErrorZ_err(struct LDKParseOrSemanticError e);
 /* @internal */
-export function C2Tuple_u32TxOutZ_clone_ptr(arg: bigint): bigint {
+export function CResult_InvoiceParseOrSemanticErrorZ_err(e: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_u32TxOutZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_InvoiceParseOrSemanticErrorZ_err(e);
        return nativeResponseValue;
 }
-       // struct LDKC2Tuple_u32TxOutZ C2Tuple_u32TxOutZ_clone(const struct LDKC2Tuple_u32TxOutZ *NONNULL_PTR orig);
+       // bool CResult_InvoiceParseOrSemanticErrorZ_is_ok(const struct LDKCResult_InvoiceParseOrSemanticErrorZ *NONNULL_PTR o);
 /* @internal */
-export function C2Tuple_u32TxOutZ_clone(orig: bigint): bigint {
+export function CResult_InvoiceParseOrSemanticErrorZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_u32TxOutZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_InvoiceParseOrSemanticErrorZ_is_ok(o);
        return nativeResponseValue;
 }
-       // struct LDKC2Tuple_u32TxOutZ C2Tuple_u32TxOutZ_new(uint32_t a, struct LDKTxOut b);
+       // void CResult_InvoiceParseOrSemanticErrorZ_free(struct LDKCResult_InvoiceParseOrSemanticErrorZ _res);
 /* @internal */
-export function C2Tuple_u32TxOutZ_new(a: number, b: bigint): bigint {
+export function CResult_InvoiceParseOrSemanticErrorZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_u32TxOutZ_new(a, b);
-       return nativeResponseValue;
+       const nativeResponseValue = wasm.TS_CResult_InvoiceParseOrSemanticErrorZ_free(_res);
+       // debug statements here
 }
-       // void C2Tuple_u32TxOutZ_free(struct LDKC2Tuple_u32TxOutZ _res);
+       // uint64_t CResult_InvoiceParseOrSemanticErrorZ_clone_ptr(LDKCResult_InvoiceParseOrSemanticErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function C2Tuple_u32TxOutZ_free(_res: bigint): void {
+export function CResult_InvoiceParseOrSemanticErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_u32TxOutZ_free(_res);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_CResult_InvoiceParseOrSemanticErrorZ_clone_ptr(arg);
+       return nativeResponseValue;
 }
-       // void CVec_C2Tuple_u32TxOutZZ_free(struct LDKCVec_C2Tuple_u32TxOutZZ _res);
+       // struct LDKCResult_InvoiceParseOrSemanticErrorZ CResult_InvoiceParseOrSemanticErrorZ_clone(const struct LDKCResult_InvoiceParseOrSemanticErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CVec_C2Tuple_u32TxOutZZ_free(_res: number): void {
+export function CResult_InvoiceParseOrSemanticErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CVec_C2Tuple_u32TxOutZZ_free(_res);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_CResult_InvoiceParseOrSemanticErrorZ_clone(orig);
+       return nativeResponseValue;
 }
-       // uint64_t C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR arg);
+       // struct LDKCResult_SignedRawInvoiceParseErrorZ CResult_SignedRawInvoiceParseErrorZ_ok(struct LDKSignedRawInvoice o);
 /* @internal */
-export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(arg: bigint): bigint {
+export function CResult_SignedRawInvoiceParseErrorZ_ok(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_SignedRawInvoiceParseErrorZ_ok(o);
        return nativeResponseValue;
 }
-       // struct LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(const struct LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ *NONNULL_PTR orig);
+       // struct LDKCResult_SignedRawInvoiceParseErrorZ CResult_SignedRawInvoiceParseErrorZ_err(struct LDKParseError e);
 /* @internal */
-export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(orig: bigint): bigint {
+export function CResult_SignedRawInvoiceParseErrorZ_err(e: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_SignedRawInvoiceParseErrorZ_err(e);
        return nativeResponseValue;
 }
-       // struct LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(struct LDKThirtyTwoBytes a, struct LDKCVec_C2Tuple_u32TxOutZZ b);
+       // bool CResult_SignedRawInvoiceParseErrorZ_is_ok(const struct LDKCResult_SignedRawInvoiceParseErrorZ *NONNULL_PTR o);
 /* @internal */
-export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(a: number, b: number): bigint {
+export function CResult_SignedRawInvoiceParseErrorZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_new(a, b);
+       const nativeResponseValue = wasm.TS_CResult_SignedRawInvoiceParseErrorZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(struct LDKC2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ _res);
+       // void CResult_SignedRawInvoiceParseErrorZ_free(struct LDKCResult_SignedRawInvoiceParseErrorZ _res);
 /* @internal */
-export function C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(_res: bigint): void {
+export function CResult_SignedRawInvoiceParseErrorZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_SignedRawInvoiceParseErrorZ_free(_res);
        // debug statements here
 }
-       // void CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(struct LDKCVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ _res);
+       // uint64_t CResult_SignedRawInvoiceParseErrorZ_clone_ptr(LDKCResult_SignedRawInvoiceParseErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(_res: number): void {
+export function CResult_SignedRawInvoiceParseErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CVec_C2Tuple_TxidCVec_C2Tuple_u32TxOutZZZZ_free(_res);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_CResult_SignedRawInvoiceParseErrorZ_clone_ptr(arg);
+       return nativeResponseValue;
 }
-       // void CVec_BalanceZ_free(struct LDKCVec_BalanceZ _res);
+       // struct LDKCResult_SignedRawInvoiceParseErrorZ CResult_SignedRawInvoiceParseErrorZ_clone(const struct LDKCResult_SignedRawInvoiceParseErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CVec_BalanceZ_free(_res: number): void {
+export function CResult_SignedRawInvoiceParseErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CVec_BalanceZ_free(_res);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_CResult_SignedRawInvoiceParseErrorZ_clone(orig);
+       return nativeResponseValue;
 }
-       // uint64_t C2Tuple_BlockHashChannelMonitorZ_clone_ptr(LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR arg);
+       // uint64_t C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone_ptr(LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR arg);
 /* @internal */
-export function C2Tuple_BlockHashChannelMonitorZ_clone_ptr(arg: bigint): bigint {
+export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelMonitorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKC2Tuple_BlockHashChannelMonitorZ C2Tuple_BlockHashChannelMonitorZ_clone(const struct LDKC2Tuple_BlockHashChannelMonitorZ *NONNULL_PTR orig);
+       // struct LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone(const struct LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ *NONNULL_PTR orig);
 /* @internal */
-export function C2Tuple_BlockHashChannelMonitorZ_clone(orig: bigint): bigint {
+export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelMonitorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKC2Tuple_BlockHashChannelMonitorZ C2Tuple_BlockHashChannelMonitorZ_new(struct LDKThirtyTwoBytes a, struct LDKChannelMonitor b);
+       // struct LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ C3Tuple_RawInvoice_u832InvoiceSignatureZ_new(struct LDKRawInvoice a, struct LDKThirtyTwoBytes b, struct LDKInvoiceSignature c);
 /* @internal */
-export function C2Tuple_BlockHashChannelMonitorZ_new(a: number, b: bigint): bigint {
+export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_new(a: bigint, b: number, c: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelMonitorZ_new(a, b);
+       const nativeResponseValue = wasm.TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_new(a, b, c);
        return nativeResponseValue;
 }
-       // void C2Tuple_BlockHashChannelMonitorZ_free(struct LDKC2Tuple_BlockHashChannelMonitorZ _res);
+       // void C3Tuple_RawInvoice_u832InvoiceSignatureZ_free(struct LDKC3Tuple_RawInvoice_u832InvoiceSignatureZ _res);
 /* @internal */
-export function C2Tuple_BlockHashChannelMonitorZ_free(_res: bigint): void {
+export function C3Tuple_RawInvoice_u832InvoiceSignatureZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelMonitorZ_free(_res);
+       const nativeResponseValue = wasm.TS_C3Tuple_RawInvoice_u832InvoiceSignatureZ_free(_res);
        // debug statements here
 }
-       // struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(struct LDKC2Tuple_BlockHashChannelMonitorZ o);
+       // struct LDKCResult_PayeePubKeyErrorZ CResult_PayeePubKeyErrorZ_ok(struct LDKPayeePubKey o);
 /* @internal */
-export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(o: bigint): bigint {
+export function CResult_PayeePubKeyErrorZ_ok(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_PayeePubKeyErrorZ_ok(o);
        return nativeResponseValue;
 }
-       // struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(struct LDKDecodeError e);
+       // struct LDKCResult_PayeePubKeyErrorZ CResult_PayeePubKeyErrorZ_err(enum LDKSecp256k1Error e);
 /* @internal */
-export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(e: bigint): bigint {
+export function CResult_PayeePubKeyErrorZ_err(e: Secp256k1Error): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_CResult_PayeePubKeyErrorZ_err(e);
        return nativeResponseValue;
 }
-       // bool CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(const struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR o);
+       // bool CResult_PayeePubKeyErrorZ_is_ok(const struct LDKCResult_PayeePubKeyErrorZ *NONNULL_PTR o);
 /* @internal */
-export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(o: bigint): boolean {
+export function CResult_PayeePubKeyErrorZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_PayeePubKeyErrorZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ _res);
+       // void CResult_PayeePubKeyErrorZ_free(struct LDKCResult_PayeePubKeyErrorZ _res);
 /* @internal */
-export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(_res: bigint): void {
+export function CResult_PayeePubKeyErrorZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_PayeePubKeyErrorZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR arg);
+       // uint64_t CResult_PayeePubKeyErrorZ_clone_ptr(LDKCResult_PayeePubKeyErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(arg: bigint): bigint {
+export function CResult_PayeePubKeyErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_PayeePubKeyErrorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(const struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ *NONNULL_PTR orig);
+       // struct LDKCResult_PayeePubKeyErrorZ CResult_PayeePubKeyErrorZ_clone(const struct LDKCResult_PayeePubKeyErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(orig: bigint): bigint {
+export function CResult_PayeePubKeyErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_PayeePubKeyErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // uint64_t C2Tuple_PublicKeyTypeZ_clone_ptr(LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR arg);
+       // void CVec_PrivateRouteZ_free(struct LDKCVec_PrivateRouteZ _res);
 /* @internal */
-export function C2Tuple_PublicKeyTypeZ_clone_ptr(arg: bigint): bigint {
+export function CVec_PrivateRouteZ_free(_res: number): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyTypeZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CVec_PrivateRouteZ_free(_res);
+       // debug statements here
+}
+       // struct LDKCResult_PositiveTimestampCreationErrorZ CResult_PositiveTimestampCreationErrorZ_ok(struct LDKPositiveTimestamp o);
+/* @internal */
+export function CResult_PositiveTimestampCreationErrorZ_ok(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_PositiveTimestampCreationErrorZ_ok(o);
        return nativeResponseValue;
 }
-       // struct LDKC2Tuple_PublicKeyTypeZ C2Tuple_PublicKeyTypeZ_clone(const struct LDKC2Tuple_PublicKeyTypeZ *NONNULL_PTR orig);
+       // struct LDKCResult_PositiveTimestampCreationErrorZ CResult_PositiveTimestampCreationErrorZ_err(enum LDKCreationError e);
 /* @internal */
-export function C2Tuple_PublicKeyTypeZ_clone(orig: bigint): bigint {
+export function CResult_PositiveTimestampCreationErrorZ_err(e: CreationError): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyTypeZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_PositiveTimestampCreationErrorZ_err(e);
        return nativeResponseValue;
 }
-       // struct LDKC2Tuple_PublicKeyTypeZ C2Tuple_PublicKeyTypeZ_new(struct LDKPublicKey a, struct LDKType b);
+       // bool CResult_PositiveTimestampCreationErrorZ_is_ok(const struct LDKCResult_PositiveTimestampCreationErrorZ *NONNULL_PTR o);
 /* @internal */
-export function C2Tuple_PublicKeyTypeZ_new(a: number, b: bigint): bigint {
+export function CResult_PositiveTimestampCreationErrorZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyTypeZ_new(a, b);
+       const nativeResponseValue = wasm.TS_CResult_PositiveTimestampCreationErrorZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void C2Tuple_PublicKeyTypeZ_free(struct LDKC2Tuple_PublicKeyTypeZ _res);
+       // void CResult_PositiveTimestampCreationErrorZ_free(struct LDKCResult_PositiveTimestampCreationErrorZ _res);
 /* @internal */
-export function C2Tuple_PublicKeyTypeZ_free(_res: bigint): void {
+export function CResult_PositiveTimestampCreationErrorZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_PublicKeyTypeZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_PositiveTimestampCreationErrorZ_free(_res);
        // debug statements here
 }
-       // void CVec_C2Tuple_PublicKeyTypeZZ_free(struct LDKCVec_C2Tuple_PublicKeyTypeZZ _res);
+       // uint64_t CResult_PositiveTimestampCreationErrorZ_clone_ptr(LDKCResult_PositiveTimestampCreationErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CVec_C2Tuple_PublicKeyTypeZZ_free(_res: number): void {
+export function CResult_PositiveTimestampCreationErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CVec_C2Tuple_PublicKeyTypeZZ_free(_res);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_CResult_PositiveTimestampCreationErrorZ_clone_ptr(arg);
+       return nativeResponseValue;
 }
-       // struct LDKCOption_NetAddressZ COption_NetAddressZ_some(struct LDKNetAddress o);
+       // struct LDKCResult_PositiveTimestampCreationErrorZ CResult_PositiveTimestampCreationErrorZ_clone(const struct LDKCResult_PositiveTimestampCreationErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function COption_NetAddressZ_some(o: bigint): bigint {
+export function CResult_PositiveTimestampCreationErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_COption_NetAddressZ_some(o);
+       const nativeResponseValue = wasm.TS_CResult_PositiveTimestampCreationErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCOption_NetAddressZ COption_NetAddressZ_none(void);
+       // struct LDKCResult_NoneSemanticErrorZ CResult_NoneSemanticErrorZ_ok(void);
 /* @internal */
-export function COption_NetAddressZ_none(): bigint {
+export function CResult_NoneSemanticErrorZ_ok(): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_COption_NetAddressZ_none();
+       const nativeResponseValue = wasm.TS_CResult_NoneSemanticErrorZ_ok();
        return nativeResponseValue;
 }
-       // void COption_NetAddressZ_free(struct LDKCOption_NetAddressZ _res);
+       // struct LDKCResult_NoneSemanticErrorZ CResult_NoneSemanticErrorZ_err(enum LDKSemanticError e);
 /* @internal */
-export function COption_NetAddressZ_free(_res: bigint): void {
+export function CResult_NoneSemanticErrorZ_err(e: SemanticError): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_COption_NetAddressZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_NoneSemanticErrorZ_err(e);
+       return nativeResponseValue;
+}
+       // bool CResult_NoneSemanticErrorZ_is_ok(const struct LDKCResult_NoneSemanticErrorZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_NoneSemanticErrorZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NoneSemanticErrorZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_NoneSemanticErrorZ_free(struct LDKCResult_NoneSemanticErrorZ _res);
+/* @internal */
+export function CResult_NoneSemanticErrorZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_NoneSemanticErrorZ_free(_res);
        // debug statements here
 }
-       // uint64_t COption_NetAddressZ_clone_ptr(LDKCOption_NetAddressZ *NONNULL_PTR arg);
+       // uint64_t CResult_NoneSemanticErrorZ_clone_ptr(LDKCResult_NoneSemanticErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function COption_NetAddressZ_clone_ptr(arg: bigint): bigint {
+export function CResult_NoneSemanticErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_COption_NetAddressZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_NoneSemanticErrorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCOption_NetAddressZ COption_NetAddressZ_clone(const struct LDKCOption_NetAddressZ *NONNULL_PTR orig);
+       // struct LDKCResult_NoneSemanticErrorZ CResult_NoneSemanticErrorZ_clone(const struct LDKCResult_NoneSemanticErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function COption_NetAddressZ_clone(orig: bigint): bigint {
+export function CResult_NoneSemanticErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_COption_NetAddressZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_NoneSemanticErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCResult_CVec_u8ZPeerHandleErrorZ CResult_CVec_u8ZPeerHandleErrorZ_ok(struct LDKCVec_u8Z o);
+       // struct LDKCResult_InvoiceSemanticErrorZ CResult_InvoiceSemanticErrorZ_ok(struct LDKInvoice o);
 /* @internal */
-export function CResult_CVec_u8ZPeerHandleErrorZ_ok(o: number): bigint {
+export function CResult_InvoiceSemanticErrorZ_ok(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_CVec_u8ZPeerHandleErrorZ_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_InvoiceSemanticErrorZ_ok(o);
        return nativeResponseValue;
 }
-       // struct LDKCResult_CVec_u8ZPeerHandleErrorZ CResult_CVec_u8ZPeerHandleErrorZ_err(struct LDKPeerHandleError e);
+       // struct LDKCResult_InvoiceSemanticErrorZ CResult_InvoiceSemanticErrorZ_err(enum LDKSemanticError e);
 /* @internal */
-export function CResult_CVec_u8ZPeerHandleErrorZ_err(e: bigint): bigint {
+export function CResult_InvoiceSemanticErrorZ_err(e: SemanticError): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_CVec_u8ZPeerHandleErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_CResult_InvoiceSemanticErrorZ_err(e);
        return nativeResponseValue;
 }
-       // bool CResult_CVec_u8ZPeerHandleErrorZ_is_ok(const struct LDKCResult_CVec_u8ZPeerHandleErrorZ *NONNULL_PTR o);
+       // bool CResult_InvoiceSemanticErrorZ_is_ok(const struct LDKCResult_InvoiceSemanticErrorZ *NONNULL_PTR o);
 /* @internal */
-export function CResult_CVec_u8ZPeerHandleErrorZ_is_ok(o: bigint): boolean {
+export function CResult_InvoiceSemanticErrorZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_CVec_u8ZPeerHandleErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_InvoiceSemanticErrorZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void CResult_CVec_u8ZPeerHandleErrorZ_free(struct LDKCResult_CVec_u8ZPeerHandleErrorZ _res);
+       // void CResult_InvoiceSemanticErrorZ_free(struct LDKCResult_InvoiceSemanticErrorZ _res);
 /* @internal */
-export function CResult_CVec_u8ZPeerHandleErrorZ_free(_res: bigint): void {
+export function CResult_InvoiceSemanticErrorZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_CVec_u8ZPeerHandleErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_InvoiceSemanticErrorZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(LDKCResult_CVec_u8ZPeerHandleErrorZ *NONNULL_PTR arg);
+       // uint64_t CResult_InvoiceSemanticErrorZ_clone_ptr(LDKCResult_InvoiceSemanticErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(arg: bigint): bigint {
+export function CResult_InvoiceSemanticErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_CVec_u8ZPeerHandleErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_InvoiceSemanticErrorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_CVec_u8ZPeerHandleErrorZ CResult_CVec_u8ZPeerHandleErrorZ_clone(const struct LDKCResult_CVec_u8ZPeerHandleErrorZ *NONNULL_PTR orig);
+       // struct LDKCResult_InvoiceSemanticErrorZ CResult_InvoiceSemanticErrorZ_clone(const struct LDKCResult_InvoiceSemanticErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_CVec_u8ZPeerHandleErrorZ_clone(orig: bigint): bigint {
+export function CResult_InvoiceSemanticErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_CVec_u8ZPeerHandleErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_InvoiceSemanticErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCResult_NonePeerHandleErrorZ CResult_NonePeerHandleErrorZ_ok(void);
+       // struct LDKCResult_DescriptionCreationErrorZ CResult_DescriptionCreationErrorZ_ok(struct LDKDescription o);
 /* @internal */
-export function CResult_NonePeerHandleErrorZ_ok(): bigint {
+export function CResult_DescriptionCreationErrorZ_ok(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_ok();
+       const nativeResponseValue = wasm.TS_CResult_DescriptionCreationErrorZ_ok(o);
        return nativeResponseValue;
 }
-       // struct LDKCResult_NonePeerHandleErrorZ CResult_NonePeerHandleErrorZ_err(struct LDKPeerHandleError e);
+       // struct LDKCResult_DescriptionCreationErrorZ CResult_DescriptionCreationErrorZ_err(enum LDKCreationError e);
 /* @internal */
-export function CResult_NonePeerHandleErrorZ_err(e: bigint): bigint {
+export function CResult_DescriptionCreationErrorZ_err(e: CreationError): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_CResult_DescriptionCreationErrorZ_err(e);
        return nativeResponseValue;
 }
-       // bool CResult_NonePeerHandleErrorZ_is_ok(const struct LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR o);
+       // bool CResult_DescriptionCreationErrorZ_is_ok(const struct LDKCResult_DescriptionCreationErrorZ *NONNULL_PTR o);
 /* @internal */
-export function CResult_NonePeerHandleErrorZ_is_ok(o: bigint): boolean {
+export function CResult_DescriptionCreationErrorZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_DescriptionCreationErrorZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void CResult_NonePeerHandleErrorZ_free(struct LDKCResult_NonePeerHandleErrorZ _res);
+       // void CResult_DescriptionCreationErrorZ_free(struct LDKCResult_DescriptionCreationErrorZ _res);
 /* @internal */
-export function CResult_NonePeerHandleErrorZ_free(_res: bigint): void {
+export function CResult_DescriptionCreationErrorZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_DescriptionCreationErrorZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_NonePeerHandleErrorZ_clone_ptr(LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR arg);
+       // uint64_t CResult_DescriptionCreationErrorZ_clone_ptr(LDKCResult_DescriptionCreationErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_NonePeerHandleErrorZ_clone_ptr(arg: bigint): bigint {
+export function CResult_DescriptionCreationErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_DescriptionCreationErrorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_NonePeerHandleErrorZ CResult_NonePeerHandleErrorZ_clone(const struct LDKCResult_NonePeerHandleErrorZ *NONNULL_PTR orig);
+       // struct LDKCResult_DescriptionCreationErrorZ CResult_DescriptionCreationErrorZ_clone(const struct LDKCResult_DescriptionCreationErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_NonePeerHandleErrorZ_clone(orig: bigint): bigint {
+export function CResult_DescriptionCreationErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_NonePeerHandleErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_DescriptionCreationErrorZ_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKCResult_boolPeerHandleErrorZ CResult_boolPeerHandleErrorZ_ok(bool o);
+       // struct LDKCResult_PrivateRouteCreationErrorZ CResult_PrivateRouteCreationErrorZ_ok(struct LDKPrivateRoute o);
 /* @internal */
-export function CResult_boolPeerHandleErrorZ_ok(o: boolean): bigint {
+export function CResult_PrivateRouteCreationErrorZ_ok(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_PrivateRouteCreationErrorZ_ok(o);
        return nativeResponseValue;
 }
-       // struct LDKCResult_boolPeerHandleErrorZ CResult_boolPeerHandleErrorZ_err(struct LDKPeerHandleError e);
+       // struct LDKCResult_PrivateRouteCreationErrorZ CResult_PrivateRouteCreationErrorZ_err(enum LDKCreationError e);
 /* @internal */
-export function CResult_boolPeerHandleErrorZ_err(e: bigint): bigint {
+export function CResult_PrivateRouteCreationErrorZ_err(e: CreationError): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_err(e);
+       const nativeResponseValue = wasm.TS_CResult_PrivateRouteCreationErrorZ_err(e);
        return nativeResponseValue;
 }
-       // bool CResult_boolPeerHandleErrorZ_is_ok(const struct LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR o);
+       // bool CResult_PrivateRouteCreationErrorZ_is_ok(const struct LDKCResult_PrivateRouteCreationErrorZ *NONNULL_PTR o);
 /* @internal */
-export function CResult_boolPeerHandleErrorZ_is_ok(o: bigint): boolean {
+export function CResult_PrivateRouteCreationErrorZ_is_ok(o: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_is_ok(o);
+       const nativeResponseValue = wasm.TS_CResult_PrivateRouteCreationErrorZ_is_ok(o);
        return nativeResponseValue;
 }
-       // void CResult_boolPeerHandleErrorZ_free(struct LDKCResult_boolPeerHandleErrorZ _res);
+       // void CResult_PrivateRouteCreationErrorZ_free(struct LDKCResult_PrivateRouteCreationErrorZ _res);
 /* @internal */
-export function CResult_boolPeerHandleErrorZ_free(_res: bigint): void {
+export function CResult_PrivateRouteCreationErrorZ_free(_res: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_free(_res);
+       const nativeResponseValue = wasm.TS_CResult_PrivateRouteCreationErrorZ_free(_res);
        // debug statements here
 }
-       // uint64_t CResult_boolPeerHandleErrorZ_clone_ptr(LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR arg);
+       // uint64_t CResult_PrivateRouteCreationErrorZ_clone_ptr(LDKCResult_PrivateRouteCreationErrorZ *NONNULL_PTR arg);
 /* @internal */
-export function CResult_boolPeerHandleErrorZ_clone_ptr(arg: bigint): bigint {
+export function CResult_PrivateRouteCreationErrorZ_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_CResult_PrivateRouteCreationErrorZ_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_boolPeerHandleErrorZ CResult_boolPeerHandleErrorZ_clone(const struct LDKCResult_boolPeerHandleErrorZ *NONNULL_PTR orig);
+       // struct LDKCResult_PrivateRouteCreationErrorZ CResult_PrivateRouteCreationErrorZ_clone(const struct LDKCResult_PrivateRouteCreationErrorZ *NONNULL_PTR orig);
 /* @internal */
-export function CResult_boolPeerHandleErrorZ_clone(orig: bigint): bigint {
+export function CResult_PrivateRouteCreationErrorZ_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_CResult_boolPeerHandleErrorZ_clone(orig);
+       const nativeResponseValue = wasm.TS_CResult_PrivateRouteCreationErrorZ_clone(orig);
        return nativeResponseValue;
 }
        // struct LDKCResult_NoneErrorZ CResult_NoneErrorZ_ok(void);
@@ -14664,6 +16882,60 @@ export function CResult_UpdateAddHTLCDecodeErrorZ_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_CResult_UpdateAddHTLCDecodeErrorZ_clone(orig);
        return nativeResponseValue;
+}
+       // struct LDKCResult_OnionMessageDecodeErrorZ CResult_OnionMessageDecodeErrorZ_ok(struct LDKOnionMessage o);
+/* @internal */
+export function CResult_OnionMessageDecodeErrorZ_ok(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_OnionMessageDecodeErrorZ_ok(o);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_OnionMessageDecodeErrorZ CResult_OnionMessageDecodeErrorZ_err(struct LDKDecodeError e);
+/* @internal */
+export function CResult_OnionMessageDecodeErrorZ_err(e: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_OnionMessageDecodeErrorZ_err(e);
+       return nativeResponseValue;
+}
+       // bool CResult_OnionMessageDecodeErrorZ_is_ok(const struct LDKCResult_OnionMessageDecodeErrorZ *NONNULL_PTR o);
+/* @internal */
+export function CResult_OnionMessageDecodeErrorZ_is_ok(o: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_OnionMessageDecodeErrorZ_is_ok(o);
+       return nativeResponseValue;
+}
+       // void CResult_OnionMessageDecodeErrorZ_free(struct LDKCResult_OnionMessageDecodeErrorZ _res);
+/* @internal */
+export function CResult_OnionMessageDecodeErrorZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_OnionMessageDecodeErrorZ_free(_res);
+       // debug statements here
+}
+       // uint64_t CResult_OnionMessageDecodeErrorZ_clone_ptr(LDKCResult_OnionMessageDecodeErrorZ *NONNULL_PTR arg);
+/* @internal */
+export function CResult_OnionMessageDecodeErrorZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_OnionMessageDecodeErrorZ_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_OnionMessageDecodeErrorZ CResult_OnionMessageDecodeErrorZ_clone(const struct LDKCResult_OnionMessageDecodeErrorZ *NONNULL_PTR orig);
+/* @internal */
+export function CResult_OnionMessageDecodeErrorZ_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CResult_OnionMessageDecodeErrorZ_clone(orig);
+       return nativeResponseValue;
 }
        // struct LDKCResult_PingDecodeErrorZ CResult_PingDecodeErrorZ_ok(struct LDKPing o);
 /* @internal */
@@ -15474,6 +17746,15 @@ export function CResult_GossipTimestampFilterDecodeErrorZ_clone(orig: bigint): b
        }
        const nativeResponseValue = wasm.TS_CResult_GossipTimestampFilterDecodeErrorZ_clone(orig);
        return nativeResponseValue;
+}
+       // void CVec_PhantomRouteHintsZ_free(struct LDKCVec_PhantomRouteHintsZ _res);
+/* @internal */
+export function CVec_PhantomRouteHintsZ_free(_res: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CVec_PhantomRouteHintsZ_free(_res);
+       // debug statements here
 }
        // struct LDKCResult_InvoiceSignOrCreationErrorZ CResult_InvoiceSignOrCreationErrorZ_ok(struct LDKInvoice o);
 /* @internal */
@@ -15600,6 +17881,60 @@ export function CVec_OutPointZ_free(_res: number): void {
        }
        const nativeResponseValue = wasm.TS_CVec_OutPointZ_free(_res);
        // debug statements here
+}
+       // void CVec_MonitorUpdateIdZ_free(struct LDKCVec_MonitorUpdateIdZ _res);
+/* @internal */
+export function CVec_MonitorUpdateIdZ_free(_res: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CVec_MonitorUpdateIdZ_free(_res);
+       // debug statements here
+}
+       // uint64_t C2Tuple_OutPointCVec_MonitorUpdateIdZZ_clone_ptr(LDKC2Tuple_OutPointCVec_MonitorUpdateIdZZ *NONNULL_PTR arg);
+/* @internal */
+export function C2Tuple_OutPointCVec_MonitorUpdateIdZZ_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_OutPointCVec_MonitorUpdateIdZZ_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKC2Tuple_OutPointCVec_MonitorUpdateIdZZ C2Tuple_OutPointCVec_MonitorUpdateIdZZ_clone(const struct LDKC2Tuple_OutPointCVec_MonitorUpdateIdZZ *NONNULL_PTR orig);
+/* @internal */
+export function C2Tuple_OutPointCVec_MonitorUpdateIdZZ_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_OutPointCVec_MonitorUpdateIdZZ_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKC2Tuple_OutPointCVec_MonitorUpdateIdZZ C2Tuple_OutPointCVec_MonitorUpdateIdZZ_new(struct LDKOutPoint a, struct LDKCVec_MonitorUpdateIdZ b);
+/* @internal */
+export function C2Tuple_OutPointCVec_MonitorUpdateIdZZ_new(a: bigint, b: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_OutPointCVec_MonitorUpdateIdZZ_new(a, b);
+       return nativeResponseValue;
+}
+       // void C2Tuple_OutPointCVec_MonitorUpdateIdZZ_free(struct LDKC2Tuple_OutPointCVec_MonitorUpdateIdZZ _res);
+/* @internal */
+export function C2Tuple_OutPointCVec_MonitorUpdateIdZZ_free(_res: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_C2Tuple_OutPointCVec_MonitorUpdateIdZZ_free(_res);
+       // debug statements here
+}
+       // void CVec_C2Tuple_OutPointCVec_MonitorUpdateIdZZZ_free(struct LDKCVec_C2Tuple_OutPointCVec_MonitorUpdateIdZZZ _res);
+/* @internal */
+export function CVec_C2Tuple_OutPointCVec_MonitorUpdateIdZZZ_free(_res: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CVec_C2Tuple_OutPointCVec_MonitorUpdateIdZZZ_free(_res);
+       // debug statements here
 }
        // void PaymentPurpose_free(struct LDKPaymentPurpose this_ptr);
 /* @internal */
@@ -15645,6 +17980,15 @@ export function PaymentPurpose_spontaneous_payment(a: number): bigint {
        }
        const nativeResponseValue = wasm.TS_PaymentPurpose_spontaneous_payment(a);
        return nativeResponseValue;
+}
+       // bool PaymentPurpose_eq(const struct LDKPaymentPurpose *NONNULL_PTR a, const struct LDKPaymentPurpose *NONNULL_PTR b);
+/* @internal */
+export function PaymentPurpose_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PaymentPurpose_eq(a, b);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z PaymentPurpose_write(const struct LDKPaymentPurpose *NONNULL_PTR obj);
 /* @internal */
@@ -15663,6 +18007,78 @@ export function PaymentPurpose_read(ser: number): bigint {
        }
        const nativeResponseValue = wasm.TS_PaymentPurpose_read(ser);
        return nativeResponseValue;
+}
+       // void PathFailure_free(struct LDKPathFailure this_ptr);
+/* @internal */
+export function PathFailure_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PathFailure_free(this_ptr);
+       // debug statements here
+}
+       // uint64_t PathFailure_clone_ptr(LDKPathFailure *NONNULL_PTR arg);
+/* @internal */
+export function PathFailure_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PathFailure_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKPathFailure PathFailure_clone(const struct LDKPathFailure *NONNULL_PTR orig);
+/* @internal */
+export function PathFailure_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PathFailure_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKPathFailure PathFailure_initial_send(struct LDKAPIError err);
+/* @internal */
+export function PathFailure_initial_send(err: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PathFailure_initial_send(err);
+       return nativeResponseValue;
+}
+       // struct LDKPathFailure PathFailure_on_path(struct LDKCOption_NetworkUpdateZ network_update);
+/* @internal */
+export function PathFailure_on_path(network_update: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PathFailure_on_path(network_update);
+       return nativeResponseValue;
+}
+       // bool PathFailure_eq(const struct LDKPathFailure *NONNULL_PTR a, const struct LDKPathFailure *NONNULL_PTR b);
+/* @internal */
+export function PathFailure_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PathFailure_eq(a, b);
+       return nativeResponseValue;
+}
+       // struct LDKCVec_u8Z PathFailure_write(const struct LDKPathFailure *NONNULL_PTR obj);
+/* @internal */
+export function PathFailure_write(obj: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PathFailure_write(obj);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_COption_PathFailureZDecodeErrorZ PathFailure_read(struct LDKu8slice ser);
+/* @internal */
+export function PathFailure_read(ser: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PathFailure_read(ser);
+       return nativeResponseValue;
 }
        // void ClosureReason_free(struct LDKClosureReason this_ptr);
 /* @internal */
@@ -15762,6 +18178,15 @@ export function ClosureReason_outdated_channel_manager(): bigint {
        }
        const nativeResponseValue = wasm.TS_ClosureReason_outdated_channel_manager();
        return nativeResponseValue;
+}
+       // bool ClosureReason_eq(const struct LDKClosureReason *NONNULL_PTR a, const struct LDKClosureReason *NONNULL_PTR b);
+/* @internal */
+export function ClosureReason_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ClosureReason_eq(a, b);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z ClosureReason_write(const struct LDKClosureReason *NONNULL_PTR obj);
 /* @internal */
@@ -15825,6 +18250,15 @@ export function HTLCDestination_unknown_next_hop(requested_forward_scid: bigint)
        }
        const nativeResponseValue = wasm.TS_HTLCDestination_unknown_next_hop(requested_forward_scid);
        return nativeResponseValue;
+}
+       // struct LDKHTLCDestination HTLCDestination_invalid_forward(uint64_t requested_forward_scid);
+/* @internal */
+export function HTLCDestination_invalid_forward(requested_forward_scid: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_HTLCDestination_invalid_forward(requested_forward_scid);
+       return nativeResponseValue;
 }
        // struct LDKHTLCDestination HTLCDestination_failed_payment(struct LDKThirtyTwoBytes payment_hash);
 /* @internal */
@@ -15834,6 +18268,15 @@ export function HTLCDestination_failed_payment(payment_hash: number): bigint {
        }
        const nativeResponseValue = wasm.TS_HTLCDestination_failed_payment(payment_hash);
        return nativeResponseValue;
+}
+       // bool HTLCDestination_eq(const struct LDKHTLCDestination *NONNULL_PTR a, const struct LDKHTLCDestination *NONNULL_PTR b);
+/* @internal */
+export function HTLCDestination_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_HTLCDestination_eq(a, b);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z HTLCDestination_write(const struct LDKHTLCDestination *NONNULL_PTR obj);
 /* @internal */
@@ -15880,31 +18323,31 @@ export function Event_clone(orig: bigint): bigint {
        const nativeResponseValue = wasm.TS_Event_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKEvent Event_funding_generation_ready(struct LDKThirtyTwoBytes temporary_channel_id, struct LDKPublicKey counterparty_node_id, uint64_t channel_value_satoshis, struct LDKCVec_u8Z output_script, uint64_t user_channel_id);
+       // struct LDKEvent Event_funding_generation_ready(struct LDKThirtyTwoBytes temporary_channel_id, struct LDKPublicKey counterparty_node_id, uint64_t channel_value_satoshis, struct LDKCVec_u8Z output_script, struct LDKU128 user_channel_id);
 /* @internal */
-export function Event_funding_generation_ready(temporary_channel_id: number, counterparty_node_id: number, channel_value_satoshis: bigint, output_script: number, user_channel_id: bigint): bigint {
+export function Event_funding_generation_ready(temporary_channel_id: number, counterparty_node_id: number, channel_value_satoshis: bigint, output_script: number, user_channel_id: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_Event_funding_generation_ready(temporary_channel_id, counterparty_node_id, channel_value_satoshis, output_script, user_channel_id);
        return nativeResponseValue;
 }
-       // struct LDKEvent Event_payment_received(struct LDKThirtyTwoBytes payment_hash, uint64_t amount_msat, struct LDKPaymentPurpose purpose);
+       // struct LDKEvent Event_payment_claimable(struct LDKPublicKey receiver_node_id, struct LDKThirtyTwoBytes payment_hash, uint64_t amount_msat, struct LDKPaymentPurpose purpose, struct LDKThirtyTwoBytes via_channel_id, struct LDKCOption_u128Z via_user_channel_id);
 /* @internal */
-export function Event_payment_received(payment_hash: number, amount_msat: bigint, purpose: bigint): bigint {
+export function Event_payment_claimable(receiver_node_id: number, payment_hash: number, amount_msat: bigint, purpose: bigint, via_channel_id: number, via_user_channel_id: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Event_payment_received(payment_hash, amount_msat, purpose);
+       const nativeResponseValue = wasm.TS_Event_payment_claimable(receiver_node_id, payment_hash, amount_msat, purpose, via_channel_id, via_user_channel_id);
        return nativeResponseValue;
 }
-       // struct LDKEvent Event_payment_claimed(struct LDKThirtyTwoBytes payment_hash, uint64_t amount_msat, struct LDKPaymentPurpose purpose);
+       // struct LDKEvent Event_payment_claimed(struct LDKPublicKey receiver_node_id, struct LDKThirtyTwoBytes payment_hash, uint64_t amount_msat, struct LDKPaymentPurpose purpose);
 /* @internal */
-export function Event_payment_claimed(payment_hash: number, amount_msat: bigint, purpose: bigint): bigint {
+export function Event_payment_claimed(receiver_node_id: number, payment_hash: number, amount_msat: bigint, purpose: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Event_payment_claimed(payment_hash, amount_msat, purpose);
+       const nativeResponseValue = wasm.TS_Event_payment_claimed(receiver_node_id, payment_hash, amount_msat, purpose);
        return nativeResponseValue;
 }
        // struct LDKEvent Event_payment_sent(struct LDKThirtyTwoBytes payment_id, struct LDKThirtyTwoBytes payment_preimage, struct LDKThirtyTwoBytes payment_hash, struct LDKCOption_u64Z fee_paid_msat);
@@ -15934,13 +18377,13 @@ export function Event_payment_path_successful(payment_id: number, payment_hash:
        const nativeResponseValue = wasm.TS_Event_payment_path_successful(payment_id, payment_hash, path);
        return nativeResponseValue;
 }
-       // struct LDKEvent Event_payment_path_failed(struct LDKThirtyTwoBytes payment_id, struct LDKThirtyTwoBytes payment_hash, bool rejected_by_dest, struct LDKCOption_NetworkUpdateZ network_update, bool all_paths_failed, struct LDKCVec_RouteHopZ path, struct LDKCOption_u64Z short_channel_id, struct LDKRouteParameters retry);
+       // struct LDKEvent Event_payment_path_failed(struct LDKThirtyTwoBytes payment_id, struct LDKThirtyTwoBytes payment_hash, bool payment_failed_permanently, struct LDKPathFailure failure, struct LDKCVec_RouteHopZ path, struct LDKCOption_u64Z short_channel_id, struct LDKRouteParameters retry);
 /* @internal */
-export function Event_payment_path_failed(payment_id: number, payment_hash: number, rejected_by_dest: boolean, network_update: bigint, all_paths_failed: boolean, path: number, short_channel_id: bigint, retry: bigint): bigint {
+export function Event_payment_path_failed(payment_id: number, payment_hash: number, payment_failed_permanently: boolean, failure: bigint, path: number, short_channel_id: bigint, retry: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Event_payment_path_failed(payment_id, payment_hash, rejected_by_dest, network_update, all_paths_failed, path, short_channel_id, retry);
+       const nativeResponseValue = wasm.TS_Event_payment_path_failed(payment_id, payment_hash, payment_failed_permanently, failure, path, short_channel_id, retry);
        return nativeResponseValue;
 }
        // struct LDKEvent Event_probe_successful(struct LDKThirtyTwoBytes payment_id, struct LDKThirtyTwoBytes payment_hash, struct LDKCVec_RouteHopZ path);
@@ -15969,6 +18412,15 @@ export function Event_pending_htlcs_forwardable(time_forwardable: bigint): bigin
        }
        const nativeResponseValue = wasm.TS_Event_pending_htlcs_forwardable(time_forwardable);
        return nativeResponseValue;
+}
+       // struct LDKEvent Event_htlcintercepted(struct LDKThirtyTwoBytes intercept_id, uint64_t requested_next_hop_scid, struct LDKThirtyTwoBytes payment_hash, uint64_t inbound_amount_msat, uint64_t expected_outbound_amount_msat);
+/* @internal */
+export function Event_htlcintercepted(intercept_id: number, requested_next_hop_scid: bigint, payment_hash: number, inbound_amount_msat: bigint, expected_outbound_amount_msat: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Event_htlcintercepted(intercept_id, requested_next_hop_scid, payment_hash, inbound_amount_msat, expected_outbound_amount_msat);
+       return nativeResponseValue;
 }
        // struct LDKEvent Event_spendable_outputs(struct LDKCVec_SpendableOutputDescriptorZ outputs);
 /* @internal */
@@ -15988,9 +18440,18 @@ export function Event_payment_forwarded(prev_channel_id: number, next_channel_id
        const nativeResponseValue = wasm.TS_Event_payment_forwarded(prev_channel_id, next_channel_id, fee_earned_msat, claim_from_onchain_tx);
        return nativeResponseValue;
 }
-       // struct LDKEvent Event_channel_closed(struct LDKThirtyTwoBytes channel_id, uint64_t user_channel_id, struct LDKClosureReason reason);
+       // struct LDKEvent Event_channel_ready(struct LDKThirtyTwoBytes channel_id, struct LDKU128 user_channel_id, struct LDKPublicKey counterparty_node_id, struct LDKChannelTypeFeatures channel_type);
+/* @internal */
+export function Event_channel_ready(channel_id: number, user_channel_id: number, counterparty_node_id: number, channel_type: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Event_channel_ready(channel_id, user_channel_id, counterparty_node_id, channel_type);
+       return nativeResponseValue;
+}
+       // struct LDKEvent Event_channel_closed(struct LDKThirtyTwoBytes channel_id, struct LDKU128 user_channel_id, struct LDKClosureReason reason);
 /* @internal */
-export function Event_channel_closed(channel_id: number, user_channel_id: bigint, reason: bigint): bigint {
+export function Event_channel_closed(channel_id: number, user_channel_id: number, reason: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -16023,6 +18484,15 @@ export function Event_htlchandling_failed(prev_channel_id: number, failed_next_d
        }
        const nativeResponseValue = wasm.TS_Event_htlchandling_failed(prev_channel_id, failed_next_destination);
        return nativeResponseValue;
+}
+       // bool Event_eq(const struct LDKEvent *NONNULL_PTR a, const struct LDKEvent *NONNULL_PTR b);
+/* @internal */
+export function Event_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Event_eq(a, b);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z Event_write(const struct LDKEvent *NONNULL_PTR obj);
 /* @internal */
@@ -16168,22 +18638,22 @@ export function MessageSendEvent_send_channel_reestablish(node_id: number, msg:
        const nativeResponseValue = wasm.TS_MessageSendEvent_send_channel_reestablish(node_id, msg);
        return nativeResponseValue;
 }
-       // struct LDKMessageSendEvent MessageSendEvent_broadcast_channel_announcement(struct LDKChannelAnnouncement msg, struct LDKChannelUpdate update_msg);
+       // struct LDKMessageSendEvent MessageSendEvent_send_channel_announcement(struct LDKPublicKey node_id, struct LDKChannelAnnouncement msg, struct LDKChannelUpdate update_msg);
 /* @internal */
-export function MessageSendEvent_broadcast_channel_announcement(msg: bigint, update_msg: bigint): bigint {
+export function MessageSendEvent_send_channel_announcement(node_id: number, msg: bigint, update_msg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_MessageSendEvent_broadcast_channel_announcement(msg, update_msg);
+       const nativeResponseValue = wasm.TS_MessageSendEvent_send_channel_announcement(node_id, msg, update_msg);
        return nativeResponseValue;
 }
-       // struct LDKMessageSendEvent MessageSendEvent_broadcast_node_announcement(struct LDKNodeAnnouncement msg);
+       // struct LDKMessageSendEvent MessageSendEvent_broadcast_channel_announcement(struct LDKChannelAnnouncement msg, struct LDKChannelUpdate update_msg);
 /* @internal */
-export function MessageSendEvent_broadcast_node_announcement(msg: bigint): bigint {
+export function MessageSendEvent_broadcast_channel_announcement(msg: bigint, update_msg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_MessageSendEvent_broadcast_node_announcement(msg);
+       const nativeResponseValue = wasm.TS_MessageSendEvent_broadcast_channel_announcement(msg, update_msg);
        return nativeResponseValue;
 }
        // struct LDKMessageSendEvent MessageSendEvent_broadcast_channel_update(struct LDKChannelUpdate msg);
@@ -16194,6 +18664,15 @@ export function MessageSendEvent_broadcast_channel_update(msg: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_MessageSendEvent_broadcast_channel_update(msg);
        return nativeResponseValue;
+}
+       // struct LDKMessageSendEvent MessageSendEvent_broadcast_node_announcement(struct LDKNodeAnnouncement msg);
+/* @internal */
+export function MessageSendEvent_broadcast_node_announcement(msg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_MessageSendEvent_broadcast_node_announcement(msg);
+       return nativeResponseValue;
 }
        // struct LDKMessageSendEvent MessageSendEvent_send_channel_update(struct LDKPublicKey node_id, struct LDKChannelUpdate msg);
 /* @internal */
@@ -16257,6 +18736,15 @@ export function MessageSendEventsProvider_free(this_ptr: bigint): void {
        }
        const nativeResponseValue = wasm.TS_MessageSendEventsProvider_free(this_ptr);
        // debug statements here
+}
+       // void OnionMessageProvider_free(struct LDKOnionMessageProvider this_ptr);
+/* @internal */
+export function OnionMessageProvider_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessageProvider_free(this_ptr);
+       // debug statements here
 }
        // void EventsProvider_free(struct LDKEventsProvider this_ptr);
 /* @internal */
@@ -16321,13 +18809,13 @@ export function APIError_fee_rate_too_high(err: number, feerate: number): bigint
        const nativeResponseValue = wasm.TS_APIError_fee_rate_too_high(err, feerate);
        return nativeResponseValue;
 }
-       // struct LDKAPIError APIError_route_error(struct LDKStr err);
+       // struct LDKAPIError APIError_invalid_route(struct LDKStr err);
 /* @internal */
-export function APIError_route_error(err: number): bigint {
+export function APIError_invalid_route(err: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_APIError_route_error(err);
+       const nativeResponseValue = wasm.TS_APIError_invalid_route(err);
        return nativeResponseValue;
 }
        // struct LDKAPIError APIError_channel_unavailable(struct LDKStr err);
@@ -16339,13 +18827,13 @@ export function APIError_channel_unavailable(err: number): bigint {
        const nativeResponseValue = wasm.TS_APIError_channel_unavailable(err);
        return nativeResponseValue;
 }
-       // struct LDKAPIError APIError_monitor_update_failed(void);
+       // struct LDKAPIError APIError_monitor_update_in_progress(void);
 /* @internal */
-export function APIError_monitor_update_failed(): bigint {
+export function APIError_monitor_update_in_progress(): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_APIError_monitor_update_failed();
+       const nativeResponseValue = wasm.TS_APIError_monitor_update_in_progress();
        return nativeResponseValue;
 }
        // struct LDKAPIError APIError_incompatible_shutdown_script(struct LDKShutdownScript script);
@@ -16356,6 +18844,33 @@ export function APIError_incompatible_shutdown_script(script: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_APIError_incompatible_shutdown_script(script);
        return nativeResponseValue;
+}
+       // bool APIError_eq(const struct LDKAPIError *NONNULL_PTR a, const struct LDKAPIError *NONNULL_PTR b);
+/* @internal */
+export function APIError_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_APIError_eq(a, b);
+       return nativeResponseValue;
+}
+       // struct LDKCVec_u8Z APIError_write(const struct LDKAPIError *NONNULL_PTR obj);
+/* @internal */
+export function APIError_write(obj: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_APIError_write(obj);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_COption_APIErrorZDecodeErrorZ APIError_read(struct LDKu8slice ser);
+/* @internal */
+export function APIError_read(ser: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_APIError_read(ser);
+       return nativeResponseValue;
 }
        // void BigSize_free(struct LDKBigSize this_obj);
 /* @internal */
@@ -16419,6 +18934,15 @@ export function Hostname_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_Hostname_clone(orig);
        return nativeResponseValue;
+}
+       // bool Hostname_eq(const struct LDKHostname *NONNULL_PTR a, const struct LDKHostname *NONNULL_PTR b);
+/* @internal */
+export function Hostname_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Hostname_eq(a, b);
+       return nativeResponseValue;
 }
        // MUST_USE_RES uint8_t Hostname_len(const struct LDKHostname *NONNULL_PTR this_arg);
 /* @internal */
@@ -16456,7 +18980,7 @@ export function verify(msg: number, sig: number, pk: number): boolean {
        const nativeResponseValue = wasm.TS_verify(msg, sig, pk);
        return nativeResponseValue;
 }
-       // struct LDKCVec_u8Z construct_invoice_preimage(struct LDKu8slice hrp_bytes, struct LDKCVec_u5Z data_without_signature);
+       // struct LDKCVec_u8Z construct_invoice_preimage(struct LDKu8slice hrp_bytes, struct LDKCVec_U5Z data_without_signature);
 /* @internal */
 export function construct_invoice_preimage(hrp_bytes: number, data_without_signature: number): number {
        if(!isWasmInitialized) {
@@ -16473,6 +18997,69 @@ export function Persister_free(this_ptr: bigint): void {
        }
        const nativeResponseValue = wasm.TS_Persister_free(this_ptr);
        // debug statements here
+}
+       // void PrintableString_free(struct LDKPrintableString this_obj);
+/* @internal */
+export function PrintableString_free(this_obj: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PrintableString_free(this_obj);
+       // debug statements here
+}
+       // struct LDKStr PrintableString_get_a(const struct LDKPrintableString *NONNULL_PTR this_ptr);
+/* @internal */
+export function PrintableString_get_a(this_ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PrintableString_get_a(this_ptr);
+       return nativeResponseValue;
+}
+       // void PrintableString_set_a(struct LDKPrintableString *NONNULL_PTR this_ptr, struct LDKStr val);
+/* @internal */
+export function PrintableString_set_a(this_ptr: bigint, val: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PrintableString_set_a(this_ptr, val);
+       // debug statements here
+}
+       // MUST_USE_RES struct LDKPrintableString PrintableString_new(struct LDKStr a_arg);
+/* @internal */
+export function PrintableString_new(a_arg: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PrintableString_new(a_arg);
+       return nativeResponseValue;
+}
+       // void FutureCallback_free(struct LDKFutureCallback this_ptr);
+/* @internal */
+export function FutureCallback_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_FutureCallback_free(this_ptr);
+       // debug statements here
+}
+       // void Future_free(struct LDKFuture this_obj);
+/* @internal */
+export function Future_free(this_obj: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Future_free(this_obj);
+       // debug statements here
+}
+       // void Future_register_callback_fn(const struct LDKFuture *NONNULL_PTR this_arg, struct LDKFutureCallback callback);
+/* @internal */
+export function Future_register_callback_fn(this_arg: bigint, callback: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Future_register_callback_fn(this_arg, callback);
+       // debug statements here
 }
        // enum LDKLevel Level_clone(const enum LDKLevel *NONNULL_PTR orig);
 /* @internal */
@@ -16825,13 +19412,31 @@ export function ChannelHandshakeConfig_set_commit_upfront_shutdown_pubkey(this_p
        const nativeResponseValue = wasm.TS_ChannelHandshakeConfig_set_commit_upfront_shutdown_pubkey(this_ptr, val);
        // debug statements here
 }
-       // MUST_USE_RES struct LDKChannelHandshakeConfig ChannelHandshakeConfig_new(uint32_t minimum_depth_arg, uint16_t our_to_self_delay_arg, uint64_t our_htlc_minimum_msat_arg, uint8_t max_inbound_htlc_value_in_flight_percent_of_channel_arg, bool negotiate_scid_privacy_arg, bool announced_channel_arg, bool commit_upfront_shutdown_pubkey_arg);
+       // uint32_t ChannelHandshakeConfig_get_their_channel_reserve_proportional_millionths(const struct LDKChannelHandshakeConfig *NONNULL_PTR this_ptr);
 /* @internal */
-export function ChannelHandshakeConfig_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): bigint {
+export function ChannelHandshakeConfig_get_their_channel_reserve_proportional_millionths(this_ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_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);
+       const nativeResponseValue = wasm.TS_ChannelHandshakeConfig_get_their_channel_reserve_proportional_millionths(this_ptr);
+       return nativeResponseValue;
+}
+       // void ChannelHandshakeConfig_set_their_channel_reserve_proportional_millionths(struct LDKChannelHandshakeConfig *NONNULL_PTR this_ptr, uint32_t val);
+/* @internal */
+export function ChannelHandshakeConfig_set_their_channel_reserve_proportional_millionths(this_ptr: bigint, val: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelHandshakeConfig_set_their_channel_reserve_proportional_millionths(this_ptr, val);
+       // debug statements here
+}
+       // MUST_USE_RES struct LDKChannelHandshakeConfig ChannelHandshakeConfig_new(uint32_t minimum_depth_arg, uint16_t our_to_self_delay_arg, uint64_t our_htlc_minimum_msat_arg, uint8_t max_inbound_htlc_value_in_flight_percent_of_channel_arg, bool negotiate_scid_privacy_arg, bool announced_channel_arg, bool commit_upfront_shutdown_pubkey_arg, uint32_t their_channel_reserve_proportional_millionths_arg);
+/* @internal */
+export function ChannelHandshakeConfig_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): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_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);
        return nativeResponseValue;
 }
        // uint64_t ChannelHandshakeConfig_clone_ptr(LDKChannelHandshakeConfig *NONNULL_PTR arg);
@@ -17211,6 +19816,15 @@ export function ChannelConfig_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_ChannelConfig_clone(orig);
        return nativeResponseValue;
+}
+       // bool ChannelConfig_eq(const struct LDKChannelConfig *NONNULL_PTR a, const struct LDKChannelConfig *NONNULL_PTR b);
+/* @internal */
+export function ChannelConfig_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelConfig_eq(a, b);
+       return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKChannelConfig ChannelConfig_default(void);
 /* @internal */
@@ -17356,13 +19970,31 @@ export function UserConfig_set_manually_accept_inbound_channels(this_ptr: bigint
        const nativeResponseValue = wasm.TS_UserConfig_set_manually_accept_inbound_channels(this_ptr, val);
        // debug statements here
 }
-       // MUST_USE_RES struct LDKUserConfig UserConfig_new(struct LDKChannelHandshakeConfig channel_handshake_config_arg, struct LDKChannelHandshakeLimits channel_handshake_limits_arg, struct LDKChannelConfig channel_config_arg, bool accept_forwards_to_priv_channels_arg, bool accept_inbound_channels_arg, bool manually_accept_inbound_channels_arg);
+       // bool UserConfig_get_accept_intercept_htlcs(const struct LDKUserConfig *NONNULL_PTR this_ptr);
 /* @internal */
-export function UserConfig_new(channel_handshake_config_arg: bigint, channel_handshake_limits_arg: bigint, channel_config_arg: bigint, accept_forwards_to_priv_channels_arg: boolean, accept_inbound_channels_arg: boolean, manually_accept_inbound_channels_arg: boolean): bigint {
+export function UserConfig_get_accept_intercept_htlcs(this_ptr: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_UserConfig_new(channel_handshake_config_arg, channel_handshake_limits_arg, channel_config_arg, accept_forwards_to_priv_channels_arg, accept_inbound_channels_arg, manually_accept_inbound_channels_arg);
+       const nativeResponseValue = wasm.TS_UserConfig_get_accept_intercept_htlcs(this_ptr);
+       return nativeResponseValue;
+}
+       // void UserConfig_set_accept_intercept_htlcs(struct LDKUserConfig *NONNULL_PTR this_ptr, bool val);
+/* @internal */
+export function UserConfig_set_accept_intercept_htlcs(this_ptr: bigint, val: boolean): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UserConfig_set_accept_intercept_htlcs(this_ptr, val);
+       // debug statements here
+}
+       // MUST_USE_RES struct LDKUserConfig UserConfig_new(struct LDKChannelHandshakeConfig channel_handshake_config_arg, struct LDKChannelHandshakeLimits channel_handshake_limits_arg, struct LDKChannelConfig channel_config_arg, bool accept_forwards_to_priv_channels_arg, bool accept_inbound_channels_arg, bool manually_accept_inbound_channels_arg, bool accept_intercept_htlcs_arg);
+/* @internal */
+export function UserConfig_new(channel_handshake_config_arg: bigint, channel_handshake_limits_arg: bigint, channel_config_arg: bigint, accept_forwards_to_priv_channels_arg: boolean, accept_inbound_channels_arg: boolean, manually_accept_inbound_channels_arg: boolean, accept_intercept_htlcs_arg: boolean): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UserConfig_new(channel_handshake_config_arg, channel_handshake_limits_arg, channel_config_arg, accept_forwards_to_priv_channels_arg, accept_inbound_channels_arg, manually_accept_inbound_channels_arg, accept_intercept_htlcs_arg);
        return nativeResponseValue;
 }
        // uint64_t UserConfig_clone_ptr(LDKUserConfig *NONNULL_PTR arg);
@@ -17419,13 +20051,22 @@ export function BestBlock_clone(orig: bigint): bigint {
        const nativeResponseValue = wasm.TS_BestBlock_clone(orig);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKBestBlock BestBlock_from_genesis(enum LDKNetwork network);
+       // bool BestBlock_eq(const struct LDKBestBlock *NONNULL_PTR a, const struct LDKBestBlock *NONNULL_PTR b);
+/* @internal */
+export function BestBlock_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BestBlock_eq(a, b);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKBestBlock BestBlock_from_network(enum LDKNetwork network);
 /* @internal */
-export function BestBlock_from_genesis(network: Network): bigint {
+export function BestBlock_from_network(network: Network): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_BestBlock_from_genesis(network);
+       const nativeResponseValue = wasm.TS_BestBlock_from_network(network);
        return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKBestBlock BestBlock_new(struct LDKThirtyTwoBytes block_hash, uint32_t height);
@@ -17455,85 +20096,67 @@ export function BestBlock_height(this_arg: bigint): number {
        const nativeResponseValue = wasm.TS_BestBlock_height(this_arg);
        return nativeResponseValue;
 }
-       // enum LDKAccessError AccessError_clone(const enum LDKAccessError *NONNULL_PTR orig);
-/* @internal */
-export function AccessError_clone(orig: bigint): AccessError {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_AccessError_clone(orig);
-       return nativeResponseValue;
-}
-       // enum LDKAccessError AccessError_unknown_chain(void);
-/* @internal */
-export function AccessError_unknown_chain(): AccessError {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_AccessError_unknown_chain();
-       return nativeResponseValue;
-}
-       // enum LDKAccessError AccessError_unknown_tx(void);
+       // void Listen_free(struct LDKListen this_ptr);
 /* @internal */
-export function AccessError_unknown_tx(): AccessError {
+export function Listen_free(this_ptr: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_AccessError_unknown_tx();
-       return nativeResponseValue;
+       const nativeResponseValue = wasm.TS_Listen_free(this_ptr);
+       // debug statements here
 }
-       // void Access_free(struct LDKAccess this_ptr);
+       // void Confirm_free(struct LDKConfirm this_ptr);
 /* @internal */
-export function Access_free(this_ptr: bigint): void {
+export function Confirm_free(this_ptr: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Access_free(this_ptr);
+       const nativeResponseValue = wasm.TS_Confirm_free(this_ptr);
        // debug statements here
 }
-       // void Listen_free(struct LDKListen this_ptr);
+       // enum LDKChannelMonitorUpdateStatus ChannelMonitorUpdateStatus_clone(const enum LDKChannelMonitorUpdateStatus *NONNULL_PTR orig);
 /* @internal */
-export function Listen_free(this_ptr: bigint): void {
+export function ChannelMonitorUpdateStatus_clone(orig: bigint): ChannelMonitorUpdateStatus {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Listen_free(this_ptr);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_ChannelMonitorUpdateStatus_clone(orig);
+       return nativeResponseValue;
 }
-       // void Confirm_free(struct LDKConfirm this_ptr);
+       // enum LDKChannelMonitorUpdateStatus ChannelMonitorUpdateStatus_completed(void);
 /* @internal */
-export function Confirm_free(this_ptr: bigint): void {
+export function ChannelMonitorUpdateStatus_completed(): ChannelMonitorUpdateStatus {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Confirm_free(this_ptr);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_ChannelMonitorUpdateStatus_completed();
+       return nativeResponseValue;
 }
-       // enum LDKChannelMonitorUpdateErr ChannelMonitorUpdateErr_clone(const enum LDKChannelMonitorUpdateErr *NONNULL_PTR orig);
+       // enum LDKChannelMonitorUpdateStatus ChannelMonitorUpdateStatus_in_progress(void);
 /* @internal */
-export function ChannelMonitorUpdateErr_clone(orig: bigint): ChannelMonitorUpdateErr {
+export function ChannelMonitorUpdateStatus_in_progress(): ChannelMonitorUpdateStatus {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelMonitorUpdateErr_clone(orig);
+       const nativeResponseValue = wasm.TS_ChannelMonitorUpdateStatus_in_progress();
        return nativeResponseValue;
 }
-       // enum LDKChannelMonitorUpdateErr ChannelMonitorUpdateErr_temporary_failure(void);
+       // enum LDKChannelMonitorUpdateStatus ChannelMonitorUpdateStatus_permanent_failure(void);
 /* @internal */
-export function ChannelMonitorUpdateErr_temporary_failure(): ChannelMonitorUpdateErr {
+export function ChannelMonitorUpdateStatus_permanent_failure(): ChannelMonitorUpdateStatus {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelMonitorUpdateErr_temporary_failure();
+       const nativeResponseValue = wasm.TS_ChannelMonitorUpdateStatus_permanent_failure();
        return nativeResponseValue;
 }
-       // enum LDKChannelMonitorUpdateErr ChannelMonitorUpdateErr_permanent_failure(void);
+       // bool ChannelMonitorUpdateStatus_eq(const enum LDKChannelMonitorUpdateStatus *NONNULL_PTR a, const enum LDKChannelMonitorUpdateStatus *NONNULL_PTR b);
 /* @internal */
-export function ChannelMonitorUpdateErr_permanent_failure(): ChannelMonitorUpdateErr {
+export function ChannelMonitorUpdateStatus_eq(a: bigint, b: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelMonitorUpdateErr_permanent_failure();
+       const nativeResponseValue = wasm.TS_ChannelMonitorUpdateStatus_eq(a, b);
        return nativeResponseValue;
 }
        // void Watch_free(struct LDKWatch this_ptr);
@@ -17643,6 +20266,15 @@ export function WatchedOutput_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_WatchedOutput_clone(orig);
        return nativeResponseValue;
+}
+       // bool WatchedOutput_eq(const struct LDKWatchedOutput *NONNULL_PTR a, const struct LDKWatchedOutput *NONNULL_PTR b);
+/* @internal */
+export function WatchedOutput_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_WatchedOutput_eq(a, b);
+       return nativeResponseValue;
 }
        // uint64_t WatchedOutput_hash(const struct LDKWatchedOutput *NONNULL_PTR o);
 /* @internal */
@@ -17697,6 +20329,15 @@ export function ConfirmationTarget_high_priority(): ConfirmationTarget {
        }
        const nativeResponseValue = wasm.TS_ConfirmationTarget_high_priority();
        return nativeResponseValue;
+}
+       // uint64_t ConfirmationTarget_hash(const enum LDKConfirmationTarget *NONNULL_PTR o);
+/* @internal */
+export function ConfirmationTarget_hash(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ConfirmationTarget_hash(o);
+       return nativeResponseValue;
 }
        // bool ConfirmationTarget_eq(const enum LDKConfirmationTarget *NONNULL_PTR a, const enum LDKConfirmationTarget *NONNULL_PTR b);
 /* @internal */
@@ -17823,6 +20464,15 @@ export function ChainMonitor_list_monitors(this_arg: bigint): number {
        }
        const nativeResponseValue = wasm.TS_ChainMonitor_list_monitors(this_arg);
        return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKCVec_C2Tuple_OutPointCVec_MonitorUpdateIdZZZ ChainMonitor_list_pending_monitor_updates(const struct LDKChainMonitor *NONNULL_PTR this_arg);
+/* @internal */
+export function ChainMonitor_list_pending_monitor_updates(this_arg: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChainMonitor_list_pending_monitor_updates(this_arg);
+       return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKCResult_NoneAPIErrorZ ChainMonitor_channel_monitor_updated(const struct LDKChainMonitor *NONNULL_PTR this_arg, struct LDKOutPoint funding_txo, struct LDKMonitorUpdateId completed_update_id);
 /* @internal */
@@ -17977,13 +20627,13 @@ export function MonitorEvent_commitment_tx_confirmed(a: bigint): bigint {
        const nativeResponseValue = wasm.TS_MonitorEvent_commitment_tx_confirmed(a);
        return nativeResponseValue;
 }
-       // struct LDKMonitorEvent MonitorEvent_update_completed(struct LDKOutPoint funding_txo, uint64_t monitor_update_id);
+       // struct LDKMonitorEvent MonitorEvent_completed(struct LDKOutPoint funding_txo, uint64_t monitor_update_id);
 /* @internal */
-export function MonitorEvent_update_completed(funding_txo: bigint, monitor_update_id: bigint): bigint {
+export function MonitorEvent_completed(funding_txo: bigint, monitor_update_id: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_MonitorEvent_update_completed(funding_txo, monitor_update_id);
+       const nativeResponseValue = wasm.TS_MonitorEvent_completed(funding_txo, monitor_update_id);
        return nativeResponseValue;
 }
        // struct LDKMonitorEvent MonitorEvent_update_failed(struct LDKOutPoint a);
@@ -17994,6 +20644,15 @@ export function MonitorEvent_update_failed(a: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_MonitorEvent_update_failed(a);
        return nativeResponseValue;
+}
+       // bool MonitorEvent_eq(const struct LDKMonitorEvent *NONNULL_PTR a, const struct LDKMonitorEvent *NONNULL_PTR b);
+/* @internal */
+export function MonitorEvent_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_MonitorEvent_eq(a, b);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z MonitorEvent_write(const struct LDKMonitorEvent *NONNULL_PTR obj);
 /* @internal */
@@ -18039,6 +20698,15 @@ export function HTLCUpdate_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_HTLCUpdate_clone(orig);
        return nativeResponseValue;
+}
+       // bool HTLCUpdate_eq(const struct LDKHTLCUpdate *NONNULL_PTR a, const struct LDKHTLCUpdate *NONNULL_PTR b);
+/* @internal */
+export function HTLCUpdate_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_HTLCUpdate_eq(a, b);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z HTLCUpdate_write(const struct LDKHTLCUpdate *NONNULL_PTR obj);
 /* @internal */
@@ -18112,13 +20780,31 @@ export function Balance_contentious_claimable(claimable_amount_satoshis: bigint,
        const nativeResponseValue = wasm.TS_Balance_contentious_claimable(claimable_amount_satoshis, timeout_height);
        return nativeResponseValue;
 }
-       // struct LDKBalance Balance_maybe_claimable_htlcawaiting_timeout(uint64_t claimable_amount_satoshis, uint32_t claimable_height);
+       // struct LDKBalance Balance_maybe_timeout_claimable_htlc(uint64_t claimable_amount_satoshis, uint32_t claimable_height);
+/* @internal */
+export function Balance_maybe_timeout_claimable_htlc(claimable_amount_satoshis: bigint, claimable_height: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Balance_maybe_timeout_claimable_htlc(claimable_amount_satoshis, claimable_height);
+       return nativeResponseValue;
+}
+       // struct LDKBalance Balance_maybe_preimage_claimable_htlc(uint64_t claimable_amount_satoshis, uint32_t expiry_height);
 /* @internal */
-export function Balance_maybe_claimable_htlcawaiting_timeout(claimable_amount_satoshis: bigint, claimable_height: number): bigint {
+export function Balance_maybe_preimage_claimable_htlc(claimable_amount_satoshis: bigint, expiry_height: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Balance_maybe_claimable_htlcawaiting_timeout(claimable_amount_satoshis, claimable_height);
+       const nativeResponseValue = wasm.TS_Balance_maybe_preimage_claimable_htlc(claimable_amount_satoshis, expiry_height);
+       return nativeResponseValue;
+}
+       // struct LDKBalance Balance_counterparty_revoked_output_claimable(uint64_t claimable_amount_satoshis);
+/* @internal */
+export function Balance_counterparty_revoked_output_claimable(claimable_amount_satoshis: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Balance_counterparty_revoked_output_claimable(claimable_amount_satoshis);
        return nativeResponseValue;
 }
        // bool Balance_eq(const struct LDKBalance *NONNULL_PTR a, const struct LDKBalance *NONNULL_PTR b);
@@ -18292,7 +20978,7 @@ export function ChannelMonitor_best_block_updated(this_arg: bigint, header: numb
        const nativeResponseValue = wasm.TS_ChannelMonitor_best_block_updated(this_arg, header, height, broadcaster, fee_estimator, logger);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKCVec_TxidZ ChannelMonitor_get_relevant_txids(const struct LDKChannelMonitor *NONNULL_PTR this_arg);
+       // MUST_USE_RES struct LDKCVec_C2Tuple_TxidBlockHashZZ ChannelMonitor_get_relevant_txids(const struct LDKChannelMonitor *NONNULL_PTR this_arg);
 /* @internal */
 export function ChannelMonitor_get_relevant_txids(this_arg: bigint): number {
        if(!isWasmInitialized) {
@@ -18319,13 +21005,13 @@ export function ChannelMonitor_get_claimable_balances(this_arg: bigint): number
        const nativeResponseValue = wasm.TS_ChannelMonitor_get_claimable_balances(this_arg);
        return nativeResponseValue;
 }
-       // struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ C2Tuple_BlockHashChannelMonitorZ_read(struct LDKu8slice ser, const struct LDKKeysInterface *NONNULL_PTR arg);
+       // struct LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ C2Tuple_BlockHashChannelMonitorZ_read(struct LDKu8slice ser, const struct LDKEntropySource *NONNULL_PTR arg_a, const struct LDKSignerProvider *NONNULL_PTR arg_b);
 /* @internal */
-export function C2Tuple_BlockHashChannelMonitorZ_read(ser: number, arg: bigint): bigint {
+export function C2Tuple_BlockHashChannelMonitorZ_read(ser: number, arg_a: bigint, arg_b: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelMonitorZ_read(ser, arg);
+       const nativeResponseValue = wasm.TS_C2Tuple_BlockHashChannelMonitorZ_read(ser, arg_a, arg_b);
        return nativeResponseValue;
 }
        // void OutPoint_free(struct LDKOutPoint this_obj);
@@ -18606,6 +21292,15 @@ export function DelayedPaymentOutputDescriptor_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_clone(orig);
        return nativeResponseValue;
+}
+       // bool DelayedPaymentOutputDescriptor_eq(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR a, const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR b);
+/* @internal */
+export function DelayedPaymentOutputDescriptor_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_DelayedPaymentOutputDescriptor_eq(a, b);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z DelayedPaymentOutputDescriptor_write(const struct LDKDelayedPaymentOutputDescriptor *NONNULL_PTR obj);
 /* @internal */
@@ -18732,6 +21427,15 @@ export function StaticPaymentOutputDescriptor_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_StaticPaymentOutputDescriptor_clone(orig);
        return nativeResponseValue;
+}
+       // bool StaticPaymentOutputDescriptor_eq(const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR a, const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR b);
+/* @internal */
+export function StaticPaymentOutputDescriptor_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_StaticPaymentOutputDescriptor_eq(a, b);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z StaticPaymentOutputDescriptor_write(const struct LDKStaticPaymentOutputDescriptor *NONNULL_PTR obj);
 /* @internal */
@@ -18804,6 +21508,15 @@ export function SpendableOutputDescriptor_static_payment_output(a: bigint): bigi
        }
        const nativeResponseValue = wasm.TS_SpendableOutputDescriptor_static_payment_output(a);
        return nativeResponseValue;
+}
+       // bool SpendableOutputDescriptor_eq(const struct LDKSpendableOutputDescriptor *NONNULL_PTR a, const struct LDKSpendableOutputDescriptor *NONNULL_PTR b);
+/* @internal */
+export function SpendableOutputDescriptor_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_SpendableOutputDescriptor_eq(a, b);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z SpendableOutputDescriptor_write(const struct LDKSpendableOutputDescriptor *NONNULL_PTR obj);
 /* @internal */
@@ -18823,40 +21536,49 @@ export function SpendableOutputDescriptor_read(ser: number): bigint {
        const nativeResponseValue = wasm.TS_SpendableOutputDescriptor_read(ser);
        return nativeResponseValue;
 }
-       // void BaseSign_free(struct LDKBaseSign this_ptr);
+       // void ChannelSigner_free(struct LDKChannelSigner this_ptr);
+/* @internal */
+export function ChannelSigner_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelSigner_free(this_ptr);
+       // debug statements here
+}
+       // void EcdsaChannelSigner_free(struct LDKEcdsaChannelSigner this_ptr);
 /* @internal */
-export function BaseSign_free(this_ptr: bigint): void {
+export function EcdsaChannelSigner_free(this_ptr: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_BaseSign_free(this_ptr);
+       const nativeResponseValue = wasm.TS_EcdsaChannelSigner_free(this_ptr);
        // debug statements here
 }
-       // uint64_t Sign_clone_ptr(LDKSign *NONNULL_PTR arg);
+       // uint64_t WriteableEcdsaChannelSigner_clone_ptr(LDKWriteableEcdsaChannelSigner *NONNULL_PTR arg);
 /* @internal */
-export function Sign_clone_ptr(arg: bigint): bigint {
+export function WriteableEcdsaChannelSigner_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Sign_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_WriteableEcdsaChannelSigner_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKSign Sign_clone(const struct LDKSign *NONNULL_PTR orig);
+       // struct LDKWriteableEcdsaChannelSigner WriteableEcdsaChannelSigner_clone(const struct LDKWriteableEcdsaChannelSigner *NONNULL_PTR orig);
 /* @internal */
-export function Sign_clone(orig: bigint): bigint {
+export function WriteableEcdsaChannelSigner_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Sign_clone(orig);
+       const nativeResponseValue = wasm.TS_WriteableEcdsaChannelSigner_clone(orig);
        return nativeResponseValue;
 }
-       // void Sign_free(struct LDKSign this_ptr);
+       // void WriteableEcdsaChannelSigner_free(struct LDKWriteableEcdsaChannelSigner this_ptr);
 /* @internal */
-export function Sign_free(this_ptr: bigint): void {
+export function WriteableEcdsaChannelSigner_free(this_ptr: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Sign_free(this_ptr);
+       const nativeResponseValue = wasm.TS_WriteableEcdsaChannelSigner_free(this_ptr);
        // debug statements here
 }
        // enum LDKRecipient Recipient_clone(const enum LDKRecipient *NONNULL_PTR orig);
@@ -18886,13 +21608,31 @@ export function Recipient_phantom_node(): Recipient {
        const nativeResponseValue = wasm.TS_Recipient_phantom_node();
        return nativeResponseValue;
 }
-       // void KeysInterface_free(struct LDKKeysInterface this_ptr);
+       // void EntropySource_free(struct LDKEntropySource this_ptr);
+/* @internal */
+export function EntropySource_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_EntropySource_free(this_ptr);
+       // debug statements here
+}
+       // void NodeSigner_free(struct LDKNodeSigner this_ptr);
 /* @internal */
-export function KeysInterface_free(this_ptr: bigint): void {
+export function NodeSigner_free(this_ptr: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_KeysInterface_free(this_ptr);
+       const nativeResponseValue = wasm.TS_NodeSigner_free(this_ptr);
+       // debug statements here
+}
+       // void SignerProvider_free(struct LDKSignerProvider this_ptr);
+/* @internal */
+export function SignerProvider_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_SignerProvider_free(this_ptr);
        // debug statements here
 }
        // void InMemorySigner_free(struct LDKInMemorySigner this_obj);
@@ -19030,13 +21770,13 @@ export function InMemorySigner_clone(orig: bigint): bigint {
        const nativeResponseValue = wasm.TS_InMemorySigner_clone(orig);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKInMemorySigner InMemorySigner_new(struct LDKSecretKey node_secret, struct LDKSecretKey funding_key, struct LDKSecretKey revocation_base_key, struct LDKSecretKey payment_key, struct LDKSecretKey delayed_payment_base_key, struct LDKSecretKey htlc_base_key, struct LDKThirtyTwoBytes commitment_seed, uint64_t channel_value_satoshis, struct LDKThirtyTwoBytes channel_keys_id);
+       // MUST_USE_RES struct LDKInMemorySigner InMemorySigner_new(struct LDKSecretKey funding_key, struct LDKSecretKey revocation_base_key, struct LDKSecretKey payment_key, struct LDKSecretKey delayed_payment_base_key, struct LDKSecretKey htlc_base_key, struct LDKThirtyTwoBytes commitment_seed, uint64_t channel_value_satoshis, struct LDKThirtyTwoBytes channel_keys_id);
 /* @internal */
-export function InMemorySigner_new(node_secret: number, funding_key: number, revocation_base_key: number, payment_key: number, delayed_payment_base_key: number, htlc_base_key: number, commitment_seed: number, channel_value_satoshis: bigint, channel_keys_id: number): bigint {
+export function InMemorySigner_new(funding_key: number, revocation_base_key: number, payment_key: number, delayed_payment_base_key: number, htlc_base_key: number, commitment_seed: number, channel_value_satoshis: bigint, channel_keys_id: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_InMemorySigner_new(node_secret, funding_key, revocation_base_key, payment_key, delayed_payment_base_key, htlc_base_key, commitment_seed, channel_value_satoshis, channel_keys_id);
+       const nativeResponseValue = wasm.TS_InMemorySigner_new(funding_key, revocation_base_key, payment_key, delayed_payment_base_key, htlc_base_key, commitment_seed, channel_value_satoshis, channel_keys_id);
        return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKChannelPublicKeys InMemorySigner_counterparty_pubkeys(const struct LDKInMemorySigner *NONNULL_PTR this_arg);
@@ -19120,22 +21860,31 @@ export function InMemorySigner_sign_dynamic_p2wsh_input(this_arg: bigint, spend_
        const nativeResponseValue = wasm.TS_InMemorySigner_sign_dynamic_p2wsh_input(this_arg, spend_tx, input_idx, descriptor);
        return nativeResponseValue;
 }
-       // struct LDKBaseSign InMemorySigner_as_BaseSign(const struct LDKInMemorySigner *NONNULL_PTR this_arg);
+       // struct LDKChannelSigner InMemorySigner_as_ChannelSigner(const struct LDKInMemorySigner *NONNULL_PTR this_arg);
 /* @internal */
-export function InMemorySigner_as_BaseSign(this_arg: bigint): bigint {
+export function InMemorySigner_as_ChannelSigner(this_arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_InMemorySigner_as_BaseSign(this_arg);
+       const nativeResponseValue = wasm.TS_InMemorySigner_as_ChannelSigner(this_arg);
        return nativeResponseValue;
 }
-       // struct LDKSign InMemorySigner_as_Sign(const struct LDKInMemorySigner *NONNULL_PTR this_arg);
+       // struct LDKEcdsaChannelSigner InMemorySigner_as_EcdsaChannelSigner(const struct LDKInMemorySigner *NONNULL_PTR this_arg);
 /* @internal */
-export function InMemorySigner_as_Sign(this_arg: bigint): bigint {
+export function InMemorySigner_as_EcdsaChannelSigner(this_arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_InMemorySigner_as_Sign(this_arg);
+       const nativeResponseValue = wasm.TS_InMemorySigner_as_EcdsaChannelSigner(this_arg);
+       return nativeResponseValue;
+}
+       // struct LDKWriteableEcdsaChannelSigner InMemorySigner_as_WriteableEcdsaChannelSigner(const struct LDKInMemorySigner *NONNULL_PTR this_arg);
+/* @internal */
+export function InMemorySigner_as_WriteableEcdsaChannelSigner(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InMemorySigner_as_WriteableEcdsaChannelSigner(this_arg);
        return nativeResponseValue;
 }
        // struct LDKCVec_u8Z InMemorySigner_write(const struct LDKInMemorySigner *NONNULL_PTR obj);
@@ -19147,13 +21896,13 @@ export function InMemorySigner_write(obj: bigint): number {
        const nativeResponseValue = wasm.TS_InMemorySigner_write(obj);
        return nativeResponseValue;
 }
-       // struct LDKCResult_InMemorySignerDecodeErrorZ InMemorySigner_read(struct LDKu8slice ser, struct LDKSecretKey arg);
+       // struct LDKCResult_InMemorySignerDecodeErrorZ InMemorySigner_read(struct LDKu8slice ser);
 /* @internal */
-export function InMemorySigner_read(ser: number, arg: number): bigint {
+export function InMemorySigner_read(ser: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_InMemorySigner_read(ser, arg);
+       const nativeResponseValue = wasm.TS_InMemorySigner_read(ser);
        return nativeResponseValue;
 }
        // void KeysManager_free(struct LDKKeysManager this_obj);
@@ -19173,6 +21922,15 @@ export function KeysManager_new(seed: number, starting_time_secs: bigint, starti
        }
        const nativeResponseValue = wasm.TS_KeysManager_new(seed, starting_time_secs, starting_time_nanos);
        return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKSecretKey KeysManager_get_node_secret_key(const struct LDKKeysManager *NONNULL_PTR this_arg);
+/* @internal */
+export function KeysManager_get_node_secret_key(this_arg: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_KeysManager_get_node_secret_key(this_arg);
+       return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKInMemorySigner KeysManager_derive_channel_keys(const struct LDKKeysManager *NONNULL_PTR this_arg, uint64_t channel_value_satoshis, const uint8_t (*params)[32]);
 /* @internal */
@@ -19192,13 +21950,31 @@ export function KeysManager_spend_spendable_outputs(this_arg: bigint, descriptor
        const nativeResponseValue = wasm.TS_KeysManager_spend_spendable_outputs(this_arg, descriptors, outputs, change_destination_script, feerate_sat_per_1000_weight);
        return nativeResponseValue;
 }
-       // struct LDKKeysInterface KeysManager_as_KeysInterface(const struct LDKKeysManager *NONNULL_PTR this_arg);
+       // struct LDKEntropySource KeysManager_as_EntropySource(const struct LDKKeysManager *NONNULL_PTR this_arg);
+/* @internal */
+export function KeysManager_as_EntropySource(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_KeysManager_as_EntropySource(this_arg);
+       return nativeResponseValue;
+}
+       // struct LDKNodeSigner KeysManager_as_NodeSigner(const struct LDKKeysManager *NONNULL_PTR this_arg);
 /* @internal */
-export function KeysManager_as_KeysInterface(this_arg: bigint): bigint {
+export function KeysManager_as_NodeSigner(this_arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_KeysManager_as_KeysInterface(this_arg);
+       const nativeResponseValue = wasm.TS_KeysManager_as_NodeSigner(this_arg);
+       return nativeResponseValue;
+}
+       // struct LDKSignerProvider KeysManager_as_SignerProvider(const struct LDKKeysManager *NONNULL_PTR this_arg);
+/* @internal */
+export function KeysManager_as_SignerProvider(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_KeysManager_as_SignerProvider(this_arg);
        return nativeResponseValue;
 }
        // void PhantomKeysManager_free(struct LDKPhantomKeysManager this_obj);
@@ -19210,13 +21986,31 @@ export function PhantomKeysManager_free(this_obj: bigint): void {
        const nativeResponseValue = wasm.TS_PhantomKeysManager_free(this_obj);
        // debug statements here
 }
-       // struct LDKKeysInterface PhantomKeysManager_as_KeysInterface(const struct LDKPhantomKeysManager *NONNULL_PTR this_arg);
+       // struct LDKEntropySource PhantomKeysManager_as_EntropySource(const struct LDKPhantomKeysManager *NONNULL_PTR this_arg);
 /* @internal */
-export function PhantomKeysManager_as_KeysInterface(this_arg: bigint): bigint {
+export function PhantomKeysManager_as_EntropySource(this_arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_PhantomKeysManager_as_KeysInterface(this_arg);
+       const nativeResponseValue = wasm.TS_PhantomKeysManager_as_EntropySource(this_arg);
+       return nativeResponseValue;
+}
+       // struct LDKNodeSigner PhantomKeysManager_as_NodeSigner(const struct LDKPhantomKeysManager *NONNULL_PTR this_arg);
+/* @internal */
+export function PhantomKeysManager_as_NodeSigner(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PhantomKeysManager_as_NodeSigner(this_arg);
+       return nativeResponseValue;
+}
+       // struct LDKSignerProvider PhantomKeysManager_as_SignerProvider(const struct LDKPhantomKeysManager *NONNULL_PTR this_arg);
+/* @internal */
+export function PhantomKeysManager_as_SignerProvider(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PhantomKeysManager_as_SignerProvider(this_arg);
        return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKPhantomKeysManager PhantomKeysManager_new(const uint8_t (*seed)[32], uint64_t starting_time_secs, uint32_t starting_time_nanos, const uint8_t (*cross_node_seed)[32]);
@@ -19245,6 +22039,60 @@ export function PhantomKeysManager_derive_channel_keys(this_arg: bigint, channel
        }
        const nativeResponseValue = wasm.TS_PhantomKeysManager_derive_channel_keys(this_arg, channel_value_satoshis, params);
        return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKSecretKey PhantomKeysManager_get_node_secret_key(const struct LDKPhantomKeysManager *NONNULL_PTR this_arg);
+/* @internal */
+export function PhantomKeysManager_get_node_secret_key(this_arg: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PhantomKeysManager_get_node_secret_key(this_arg);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKSecretKey PhantomKeysManager_get_phantom_node_secret_key(const struct LDKPhantomKeysManager *NONNULL_PTR this_arg);
+/* @internal */
+export function PhantomKeysManager_get_phantom_node_secret_key(this_arg: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PhantomKeysManager_get_phantom_node_secret_key(this_arg);
+       return nativeResponseValue;
+}
+       // enum LDKFailureCode FailureCode_clone(const enum LDKFailureCode *NONNULL_PTR orig);
+/* @internal */
+export function FailureCode_clone(orig: bigint): FailureCode {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_FailureCode_clone(orig);
+       return nativeResponseValue;
+}
+       // enum LDKFailureCode FailureCode_temporary_node_failure(void);
+/* @internal */
+export function FailureCode_temporary_node_failure(): FailureCode {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_FailureCode_temporary_node_failure();
+       return nativeResponseValue;
+}
+       // enum LDKFailureCode FailureCode_required_node_feature_missing(void);
+/* @internal */
+export function FailureCode_required_node_feature_missing(): FailureCode {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_FailureCode_required_node_feature_missing();
+       return nativeResponseValue;
+}
+       // enum LDKFailureCode FailureCode_incorrect_or_unknown_payment_details(void);
+/* @internal */
+export function FailureCode_incorrect_or_unknown_payment_details(): FailureCode {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_FailureCode_incorrect_or_unknown_payment_details();
+       return nativeResponseValue;
 }
        // void ChannelManager_free(struct LDKChannelManager this_obj);
 /* @internal */
@@ -19732,18 +22580,18 @@ export function ChannelDetails_set_unspendable_punishment_reserve(this_ptr: bigi
        const nativeResponseValue = wasm.TS_ChannelDetails_set_unspendable_punishment_reserve(this_ptr, val);
        // debug statements here
 }
-       // uint64_t ChannelDetails_get_user_channel_id(const struct LDKChannelDetails *NONNULL_PTR this_ptr);
+       // struct LDKU128 ChannelDetails_get_user_channel_id(const struct LDKChannelDetails *NONNULL_PTR this_ptr);
 /* @internal */
-export function ChannelDetails_get_user_channel_id(this_ptr: bigint): bigint {
+export function ChannelDetails_get_user_channel_id(this_ptr: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_ChannelDetails_get_user_channel_id(this_ptr);
        return nativeResponseValue;
 }
-       // void ChannelDetails_set_user_channel_id(struct LDKChannelDetails *NONNULL_PTR this_ptr, uint64_t val);
+       // void ChannelDetails_set_user_channel_id(struct LDKChannelDetails *NONNULL_PTR this_ptr, struct LDKU128 val);
 /* @internal */
-export function ChannelDetails_set_user_channel_id(this_ptr: bigint, val: bigint): void {
+export function ChannelDetails_set_user_channel_id(this_ptr: bigint, val: number): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -19839,6 +22687,24 @@ export function ChannelDetails_set_confirmations_required(this_ptr: bigint, val:
        }
        const nativeResponseValue = wasm.TS_ChannelDetails_set_confirmations_required(this_ptr, val);
        // debug statements here
+}
+       // struct LDKCOption_u32Z ChannelDetails_get_confirmations(const struct LDKChannelDetails *NONNULL_PTR this_ptr);
+/* @internal */
+export function ChannelDetails_get_confirmations(this_ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelDetails_get_confirmations(this_ptr);
+       return nativeResponseValue;
+}
+       // void ChannelDetails_set_confirmations(struct LDKChannelDetails *NONNULL_PTR this_ptr, struct LDKCOption_u32Z val);
+/* @internal */
+export function ChannelDetails_set_confirmations(this_ptr: bigint, val: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelDetails_set_confirmations(this_ptr, val);
+       // debug statements here
 }
        // struct LDKCOption_u16Z ChannelDetails_get_force_close_spend_delay(const struct LDKChannelDetails *NONNULL_PTR this_ptr);
 /* @internal */
@@ -19984,13 +22850,13 @@ export function ChannelDetails_set_config(this_ptr: bigint, val: bigint): void {
        const nativeResponseValue = wasm.TS_ChannelDetails_set_config(this_ptr, val);
        // debug statements here
 }
-       // MUST_USE_RES struct LDKChannelDetails ChannelDetails_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKChannelCounterparty counterparty_arg, struct LDKOutPoint funding_txo_arg, struct LDKChannelTypeFeatures channel_type_arg, struct LDKCOption_u64Z short_channel_id_arg, struct LDKCOption_u64Z outbound_scid_alias_arg, struct LDKCOption_u64Z inbound_scid_alias_arg, uint64_t channel_value_satoshis_arg, struct LDKCOption_u64Z unspendable_punishment_reserve_arg, uint64_t user_channel_id_arg, uint64_t balance_msat_arg, uint64_t outbound_capacity_msat_arg, uint64_t next_outbound_htlc_limit_msat_arg, uint64_t inbound_capacity_msat_arg, struct LDKCOption_u32Z confirmations_required_arg, struct LDKCOption_u16Z force_close_spend_delay_arg, bool is_outbound_arg, bool is_channel_ready_arg, bool is_usable_arg, bool is_public_arg, struct LDKCOption_u64Z inbound_htlc_minimum_msat_arg, struct LDKCOption_u64Z inbound_htlc_maximum_msat_arg, struct LDKChannelConfig config_arg);
+       // MUST_USE_RES struct LDKChannelDetails ChannelDetails_new(struct LDKThirtyTwoBytes channel_id_arg, struct LDKChannelCounterparty counterparty_arg, struct LDKOutPoint funding_txo_arg, struct LDKChannelTypeFeatures channel_type_arg, struct LDKCOption_u64Z short_channel_id_arg, struct LDKCOption_u64Z outbound_scid_alias_arg, struct LDKCOption_u64Z inbound_scid_alias_arg, uint64_t channel_value_satoshis_arg, struct LDKCOption_u64Z unspendable_punishment_reserve_arg, struct LDKU128 user_channel_id_arg, uint64_t balance_msat_arg, uint64_t outbound_capacity_msat_arg, uint64_t next_outbound_htlc_limit_msat_arg, uint64_t inbound_capacity_msat_arg, struct LDKCOption_u32Z confirmations_required_arg, struct LDKCOption_u32Z confirmations_arg, struct LDKCOption_u16Z force_close_spend_delay_arg, bool is_outbound_arg, bool is_channel_ready_arg, bool is_usable_arg, bool is_public_arg, struct LDKCOption_u64Z inbound_htlc_minimum_msat_arg, struct LDKCOption_u64Z inbound_htlc_maximum_msat_arg, struct LDKChannelConfig config_arg);
 /* @internal */
-export function ChannelDetails_new(channel_id_arg: number, counterparty_arg: bigint, funding_txo_arg: bigint, channel_type_arg: bigint, short_channel_id_arg: bigint, outbound_scid_alias_arg: bigint, inbound_scid_alias_arg: bigint, channel_value_satoshis_arg: bigint, unspendable_punishment_reserve_arg: bigint, user_channel_id_arg: bigint, balance_msat_arg: bigint, outbound_capacity_msat_arg: bigint, next_outbound_htlc_limit_msat_arg: bigint, inbound_capacity_msat_arg: bigint, confirmations_required_arg: bigint, force_close_spend_delay_arg: bigint, is_outbound_arg: boolean, is_channel_ready_arg: boolean, is_usable_arg: boolean, is_public_arg: boolean, inbound_htlc_minimum_msat_arg: bigint, inbound_htlc_maximum_msat_arg: bigint, config_arg: bigint): bigint {
+export function ChannelDetails_new(channel_id_arg: number, counterparty_arg: bigint, funding_txo_arg: bigint, channel_type_arg: bigint, short_channel_id_arg: bigint, outbound_scid_alias_arg: bigint, inbound_scid_alias_arg: bigint, channel_value_satoshis_arg: bigint, unspendable_punishment_reserve_arg: bigint, user_channel_id_arg: number, balance_msat_arg: bigint, outbound_capacity_msat_arg: bigint, next_outbound_htlc_limit_msat_arg: bigint, inbound_capacity_msat_arg: bigint, confirmations_required_arg: bigint, confirmations_arg: bigint, force_close_spend_delay_arg: bigint, is_outbound_arg: boolean, is_channel_ready_arg: boolean, is_usable_arg: boolean, is_public_arg: boolean, inbound_htlc_minimum_msat_arg: bigint, inbound_htlc_maximum_msat_arg: bigint, config_arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelDetails_new(channel_id_arg, counterparty_arg, funding_txo_arg, channel_type_arg, short_channel_id_arg, outbound_scid_alias_arg, inbound_scid_alias_arg, channel_value_satoshis_arg, unspendable_punishment_reserve_arg, user_channel_id_arg, balance_msat_arg, outbound_capacity_msat_arg, next_outbound_htlc_limit_msat_arg, inbound_capacity_msat_arg, confirmations_required_arg, force_close_spend_delay_arg, is_outbound_arg, is_channel_ready_arg, is_usable_arg, is_public_arg, inbound_htlc_minimum_msat_arg, inbound_htlc_maximum_msat_arg, config_arg);
+       const nativeResponseValue = wasm.TS_ChannelDetails_new(channel_id_arg, counterparty_arg, funding_txo_arg, channel_type_arg, short_channel_id_arg, outbound_scid_alias_arg, inbound_scid_alias_arg, channel_value_satoshis_arg, unspendable_punishment_reserve_arg, user_channel_id_arg, balance_msat_arg, outbound_capacity_msat_arg, next_outbound_htlc_limit_msat_arg, inbound_capacity_msat_arg, confirmations_required_arg, confirmations_arg, force_close_spend_delay_arg, is_outbound_arg, is_channel_ready_arg, is_usable_arg, is_public_arg, inbound_htlc_minimum_msat_arg, inbound_htlc_maximum_msat_arg, config_arg);
        return nativeResponseValue;
 }
        // uint64_t ChannelDetails_clone_ptr(LDKChannelDetails *NONNULL_PTR arg);
@@ -20029,67 +22895,58 @@ export function ChannelDetails_get_outbound_payment_scid(this_arg: bigint): bigi
        const nativeResponseValue = wasm.TS_ChannelDetails_get_outbound_payment_scid(this_arg);
        return nativeResponseValue;
 }
-       // void PaymentSendFailure_free(struct LDKPaymentSendFailure this_ptr);
+       // void RecentPaymentDetails_free(struct LDKRecentPaymentDetails this_ptr);
 /* @internal */
-export function PaymentSendFailure_free(this_ptr: bigint): void {
+export function RecentPaymentDetails_free(this_ptr: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_PaymentSendFailure_free(this_ptr);
+       const nativeResponseValue = wasm.TS_RecentPaymentDetails_free(this_ptr);
        // debug statements here
 }
-       // uint64_t PaymentSendFailure_clone_ptr(LDKPaymentSendFailure *NONNULL_PTR arg);
+       // uint64_t RecentPaymentDetails_clone_ptr(LDKRecentPaymentDetails *NONNULL_PTR arg);
 /* @internal */
-export function PaymentSendFailure_clone_ptr(arg: bigint): bigint {
+export function RecentPaymentDetails_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_PaymentSendFailure_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_RecentPaymentDetails_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKPaymentSendFailure PaymentSendFailure_clone(const struct LDKPaymentSendFailure *NONNULL_PTR orig);
+       // struct LDKRecentPaymentDetails RecentPaymentDetails_clone(const struct LDKRecentPaymentDetails *NONNULL_PTR orig);
 /* @internal */
-export function PaymentSendFailure_clone(orig: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_PaymentSendFailure_clone(orig);
-       return nativeResponseValue;
-}
-       // struct LDKPaymentSendFailure PaymentSendFailure_parameter_error(struct LDKAPIError a);
-/* @internal */
-export function PaymentSendFailure_parameter_error(a: bigint): bigint {
+export function RecentPaymentDetails_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_PaymentSendFailure_parameter_error(a);
+       const nativeResponseValue = wasm.TS_RecentPaymentDetails_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKPaymentSendFailure PaymentSendFailure_path_parameter_error(struct LDKCVec_CResult_NoneAPIErrorZZ a);
+       // struct LDKRecentPaymentDetails RecentPaymentDetails_pending(struct LDKThirtyTwoBytes payment_hash, uint64_t total_msat);
 /* @internal */
-export function PaymentSendFailure_path_parameter_error(a: number): bigint {
+export function RecentPaymentDetails_pending(payment_hash: number, total_msat: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_PaymentSendFailure_path_parameter_error(a);
+       const nativeResponseValue = wasm.TS_RecentPaymentDetails_pending(payment_hash, total_msat);
        return nativeResponseValue;
 }
-       // struct LDKPaymentSendFailure PaymentSendFailure_all_failed_retry_safe(struct LDKCVec_APIErrorZ a);
+       // struct LDKRecentPaymentDetails RecentPaymentDetails_fulfilled(struct LDKThirtyTwoBytes payment_hash);
 /* @internal */
-export function PaymentSendFailure_all_failed_retry_safe(a: number): bigint {
+export function RecentPaymentDetails_fulfilled(payment_hash: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_PaymentSendFailure_all_failed_retry_safe(a);
+       const nativeResponseValue = wasm.TS_RecentPaymentDetails_fulfilled(payment_hash);
        return nativeResponseValue;
 }
-       // struct LDKPaymentSendFailure PaymentSendFailure_partial_failure(struct LDKCVec_CResult_NoneAPIErrorZZ results, struct LDKRouteParameters failed_paths_retry, struct LDKThirtyTwoBytes payment_id);
+       // struct LDKRecentPaymentDetails RecentPaymentDetails_abandoned(struct LDKThirtyTwoBytes payment_hash);
 /* @internal */
-export function PaymentSendFailure_partial_failure(results: number, failed_paths_retry: bigint, payment_id: number): bigint {
+export function RecentPaymentDetails_abandoned(payment_hash: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_PaymentSendFailure_partial_failure(results, failed_paths_retry, payment_id);
+       const nativeResponseValue = wasm.TS_RecentPaymentDetails_abandoned(payment_hash);
        return nativeResponseValue;
 }
        // void PhantomRouteHints_free(struct LDKPhantomRouteHints this_obj);
@@ -20182,13 +23039,13 @@ export function PhantomRouteHints_clone(orig: bigint): bigint {
        const nativeResponseValue = wasm.TS_PhantomRouteHints_clone(orig);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKChannelManager ChannelManager_new(struct LDKFeeEstimator fee_est, struct LDKWatch chain_monitor, struct LDKBroadcasterInterface tx_broadcaster, struct LDKLogger logger, struct LDKKeysInterface keys_manager, struct LDKUserConfig config, struct LDKChainParameters params);
+       // MUST_USE_RES struct LDKChannelManager ChannelManager_new(struct LDKFeeEstimator fee_est, struct LDKWatch chain_monitor, struct LDKBroadcasterInterface tx_broadcaster, struct LDKRouter router, struct LDKLogger logger, struct LDKEntropySource entropy_source, struct LDKNodeSigner node_signer, struct LDKSignerProvider signer_provider, struct LDKUserConfig config, struct LDKChainParameters params);
 /* @internal */
-export function ChannelManager_new(fee_est: bigint, chain_monitor: bigint, tx_broadcaster: bigint, logger: bigint, keys_manager: bigint, config: bigint, params: bigint): bigint {
+export function ChannelManager_new(fee_est: bigint, chain_monitor: bigint, tx_broadcaster: bigint, router: bigint, logger: bigint, entropy_source: bigint, node_signer: bigint, signer_provider: bigint, config: bigint, params: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelManager_new(fee_est, chain_monitor, tx_broadcaster, logger, keys_manager, config, params);
+       const nativeResponseValue = wasm.TS_ChannelManager_new(fee_est, chain_monitor, tx_broadcaster, router, logger, entropy_source, node_signer, signer_provider, config, params);
        return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKUserConfig ChannelManager_get_current_default_configuration(const struct LDKChannelManager *NONNULL_PTR this_arg);
@@ -20200,9 +23057,9 @@ export function ChannelManager_get_current_default_configuration(this_arg: bigin
        const nativeResponseValue = wasm.TS_ChannelManager_get_current_default_configuration(this_arg);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKCResult__u832APIErrorZ ChannelManager_create_channel(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKPublicKey their_network_key, uint64_t channel_value_satoshis, uint64_t push_msat, uint64_t user_channel_id, struct LDKUserConfig override_config);
+       // MUST_USE_RES struct LDKCResult__u832APIErrorZ ChannelManager_create_channel(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKPublicKey their_network_key, uint64_t channel_value_satoshis, uint64_t push_msat, struct LDKU128 user_channel_id, struct LDKUserConfig override_config);
 /* @internal */
-export function ChannelManager_create_channel(this_arg: bigint, their_network_key: number, channel_value_satoshis: bigint, push_msat: bigint, user_channel_id: bigint, override_config: bigint): bigint {
+export function ChannelManager_create_channel(this_arg: bigint, their_network_key: number, channel_value_satoshis: bigint, push_msat: bigint, user_channel_id: number, override_config: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -20226,6 +23083,15 @@ export function ChannelManager_list_usable_channels(this_arg: bigint): number {
        }
        const nativeResponseValue = wasm.TS_ChannelManager_list_usable_channels(this_arg);
        return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKCVec_RecentPaymentDetailsZ ChannelManager_list_recent_payments(const struct LDKChannelManager *NONNULL_PTR this_arg);
+/* @internal */
+export function ChannelManager_list_recent_payments(this_arg: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelManager_list_recent_payments(this_arg);
+       return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKCResult_NoneAPIErrorZ ChannelManager_close_channel(const struct LDKChannelManager *NONNULL_PTR this_arg, const uint8_t (*channel_id)[32], struct LDKPublicKey counterparty_node_id);
 /* @internal */
@@ -20281,22 +23147,22 @@ export function ChannelManager_force_close_all_channels_without_broadcasting_txn
        const nativeResponseValue = wasm.TS_ChannelManager_force_close_all_channels_without_broadcasting_txn(this_arg);
        // debug statements here
 }
-       // MUST_USE_RES struct LDKCResult_PaymentIdPaymentSendFailureZ ChannelManager_send_payment(const struct LDKChannelManager *NONNULL_PTR this_arg, const struct LDKRoute *NONNULL_PTR route, struct LDKThirtyTwoBytes payment_hash, struct LDKThirtyTwoBytes payment_secret);
+       // MUST_USE_RES struct LDKCResult_NonePaymentSendFailureZ ChannelManager_send_payment(const struct LDKChannelManager *NONNULL_PTR this_arg, const struct LDKRoute *NONNULL_PTR route, struct LDKThirtyTwoBytes payment_hash, struct LDKThirtyTwoBytes payment_secret, struct LDKThirtyTwoBytes payment_id);
 /* @internal */
-export function ChannelManager_send_payment(this_arg: bigint, route: bigint, payment_hash: number, payment_secret: number): bigint {
+export function ChannelManager_send_payment(this_arg: bigint, route: bigint, payment_hash: number, payment_secret: number, payment_id: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelManager_send_payment(this_arg, route, payment_hash, payment_secret);
+       const nativeResponseValue = wasm.TS_ChannelManager_send_payment(this_arg, route, payment_hash, payment_secret, payment_id);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKCResult_NonePaymentSendFailureZ ChannelManager_retry_payment(const struct LDKChannelManager *NONNULL_PTR this_arg, const struct LDKRoute *NONNULL_PTR route, struct LDKThirtyTwoBytes payment_id);
+       // MUST_USE_RES struct LDKCResult_NoneRetryableSendFailureZ ChannelManager_send_payment_with_retry(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes payment_hash, struct LDKThirtyTwoBytes payment_secret, struct LDKThirtyTwoBytes payment_id, struct LDKRouteParameters route_params, struct LDKRetry retry_strategy);
 /* @internal */
-export function ChannelManager_retry_payment(this_arg: bigint, route: bigint, payment_id: number): bigint {
+export function ChannelManager_send_payment_with_retry(this_arg: bigint, payment_hash: number, payment_secret: number, payment_id: number, route_params: bigint, retry_strategy: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelManager_retry_payment(this_arg, route, payment_id);
+       const nativeResponseValue = wasm.TS_ChannelManager_send_payment_with_retry(this_arg, payment_hash, payment_secret, payment_id, route_params, retry_strategy);
        return nativeResponseValue;
 }
        // void ChannelManager_abandon_payment(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes payment_id);
@@ -20308,13 +23174,22 @@ export function ChannelManager_abandon_payment(this_arg: bigint, payment_id: num
        const nativeResponseValue = wasm.TS_ChannelManager_abandon_payment(this_arg, payment_id);
        // debug statements here
 }
-       // MUST_USE_RES struct LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ ChannelManager_send_spontaneous_payment(const struct LDKChannelManager *NONNULL_PTR this_arg, const struct LDKRoute *NONNULL_PTR route, struct LDKThirtyTwoBytes payment_preimage);
+       // MUST_USE_RES struct LDKCResult_PaymentHashPaymentSendFailureZ ChannelManager_send_spontaneous_payment(const struct LDKChannelManager *NONNULL_PTR this_arg, const struct LDKRoute *NONNULL_PTR route, struct LDKThirtyTwoBytes payment_preimage, struct LDKThirtyTwoBytes payment_id);
+/* @internal */
+export function ChannelManager_send_spontaneous_payment(this_arg: bigint, route: bigint, payment_preimage: number, payment_id: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelManager_send_spontaneous_payment(this_arg, route, payment_preimage, payment_id);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKCResult_PaymentHashRetryableSendFailureZ ChannelManager_send_spontaneous_payment_with_retry(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes payment_preimage, struct LDKThirtyTwoBytes payment_id, struct LDKRouteParameters route_params, struct LDKRetry retry_strategy);
 /* @internal */
-export function ChannelManager_send_spontaneous_payment(this_arg: bigint, route: bigint, payment_preimage: number): bigint {
+export function ChannelManager_send_spontaneous_payment_with_retry(this_arg: bigint, payment_preimage: number, payment_id: number, route_params: bigint, retry_strategy: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelManager_send_spontaneous_payment(this_arg, route, payment_preimage);
+       const nativeResponseValue = wasm.TS_ChannelManager_send_spontaneous_payment_with_retry(this_arg, payment_preimage, payment_id, route_params, retry_strategy);
        return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKCResult_C2Tuple_PaymentHashPaymentIdZPaymentSendFailureZ ChannelManager_send_probe(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKCVec_RouteHopZ hops);
@@ -20335,22 +23210,31 @@ export function ChannelManager_funding_transaction_generated(this_arg: bigint, t
        const nativeResponseValue = wasm.TS_ChannelManager_funding_transaction_generated(this_arg, temporary_channel_id, counterparty_node_id, funding_transaction);
        return nativeResponseValue;
 }
-       // void ChannelManager_broadcast_node_announcement(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKThreeBytes rgb, struct LDKThirtyTwoBytes alias, struct LDKCVec_NetAddressZ addresses);
+       // MUST_USE_RES struct LDKCResult_NoneAPIErrorZ ChannelManager_update_channel_config(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKPublicKey counterparty_node_id, struct LDKCVec_ThirtyTwoBytesZ channel_ids, const struct LDKChannelConfig *NONNULL_PTR config);
 /* @internal */
-export function ChannelManager_broadcast_node_announcement(this_arg: bigint, rgb: number, alias: number, addresses: number): void {
+export function ChannelManager_update_channel_config(this_arg: bigint, counterparty_node_id: number, channel_ids: number, config: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelManager_broadcast_node_announcement(this_arg, rgb, alias, addresses);
-       // debug statements here
+       const nativeResponseValue = wasm.TS_ChannelManager_update_channel_config(this_arg, counterparty_node_id, channel_ids, config);
+       return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKCResult_NoneAPIErrorZ ChannelManager_update_channel_config(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKPublicKey counterparty_node_id, struct LDKCVec_ThirtyTwoBytesZ channel_ids, const struct LDKChannelConfig *NONNULL_PTR config);
+       // MUST_USE_RES struct LDKCResult_NoneAPIErrorZ ChannelManager_forward_intercepted_htlc(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes intercept_id, const uint8_t (*next_hop_channel_id)[32], struct LDKPublicKey next_node_id, uint64_t amt_to_forward_msat);
 /* @internal */
-export function ChannelManager_update_channel_config(this_arg: bigint, counterparty_node_id: number, channel_ids: number, config: bigint): bigint {
+export function ChannelManager_forward_intercepted_htlc(this_arg: bigint, intercept_id: number, next_hop_channel_id: number, next_node_id: number, amt_to_forward_msat: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelManager_update_channel_config(this_arg, counterparty_node_id, channel_ids, config);
+       const nativeResponseValue = wasm.TS_ChannelManager_forward_intercepted_htlc(this_arg, intercept_id, next_hop_channel_id, next_node_id, amt_to_forward_msat);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKCResult_NoneAPIErrorZ ChannelManager_fail_intercepted_htlc(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes intercept_id);
+/* @internal */
+export function ChannelManager_fail_intercepted_htlc(this_arg: bigint, intercept_id: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelManager_fail_intercepted_htlc(this_arg, intercept_id);
        return nativeResponseValue;
 }
        // void ChannelManager_process_pending_htlc_forwards(const struct LDKChannelManager *NONNULL_PTR this_arg);
@@ -20379,6 +23263,15 @@ export function ChannelManager_fail_htlc_backwards(this_arg: bigint, payment_has
        }
        const nativeResponseValue = wasm.TS_ChannelManager_fail_htlc_backwards(this_arg, payment_hash);
        // debug statements here
+}
+       // void ChannelManager_fail_htlc_backwards_with_reason(const struct LDKChannelManager *NONNULL_PTR this_arg, const uint8_t (*payment_hash)[32], enum LDKFailureCode failure_code);
+/* @internal */
+export function ChannelManager_fail_htlc_backwards_with_reason(this_arg: bigint, payment_hash: number, failure_code: FailureCode): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelManager_fail_htlc_backwards_with_reason(this_arg, payment_hash, failure_code);
+       // debug statements here
 }
        // void ChannelManager_claim_funds(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes payment_preimage);
 /* @internal */
@@ -20398,31 +23291,31 @@ export function ChannelManager_get_our_node_id(this_arg: bigint): number {
        const nativeResponseValue = wasm.TS_ChannelManager_get_our_node_id(this_arg);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKCResult_NoneAPIErrorZ ChannelManager_accept_inbound_channel(const struct LDKChannelManager *NONNULL_PTR this_arg, const uint8_t (*temporary_channel_id)[32], struct LDKPublicKey counterparty_node_id, uint64_t user_channel_id);
+       // MUST_USE_RES struct LDKCResult_NoneAPIErrorZ ChannelManager_accept_inbound_channel(const struct LDKChannelManager *NONNULL_PTR this_arg, const uint8_t (*temporary_channel_id)[32], struct LDKPublicKey counterparty_node_id, struct LDKU128 user_channel_id);
 /* @internal */
-export function ChannelManager_accept_inbound_channel(this_arg: bigint, temporary_channel_id: number, counterparty_node_id: number, user_channel_id: bigint): bigint {
+export function ChannelManager_accept_inbound_channel(this_arg: bigint, temporary_channel_id: number, counterparty_node_id: number, user_channel_id: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_ChannelManager_accept_inbound_channel(this_arg, temporary_channel_id, counterparty_node_id, user_channel_id);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKCResult_NoneAPIErrorZ ChannelManager_accept_inbound_channel_from_trusted_peer_0conf(const struct LDKChannelManager *NONNULL_PTR this_arg, const uint8_t (*temporary_channel_id)[32], struct LDKPublicKey counterparty_node_id, uint64_t user_channel_id);
+       // MUST_USE_RES struct LDKCResult_NoneAPIErrorZ ChannelManager_accept_inbound_channel_from_trusted_peer_0conf(const struct LDKChannelManager *NONNULL_PTR this_arg, const uint8_t (*temporary_channel_id)[32], struct LDKPublicKey counterparty_node_id, struct LDKU128 user_channel_id);
 /* @internal */
-export function ChannelManager_accept_inbound_channel_from_trusted_peer_0conf(this_arg: bigint, temporary_channel_id: number, counterparty_node_id: number, user_channel_id: bigint): bigint {
+export function ChannelManager_accept_inbound_channel_from_trusted_peer_0conf(this_arg: bigint, temporary_channel_id: number, counterparty_node_id: number, user_channel_id: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_ChannelManager_accept_inbound_channel_from_trusted_peer_0conf(this_arg, temporary_channel_id, counterparty_node_id, user_channel_id);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ ChannelManager_create_inbound_payment(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKCOption_u64Z min_value_msat, uint32_t invoice_expiry_delta_secs);
+       // MUST_USE_RES struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ ChannelManager_create_inbound_payment(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKCOption_u64Z min_value_msat, uint32_t invoice_expiry_delta_secs, struct LDKCOption_u16Z min_final_cltv_expiry_delta);
 /* @internal */
-export function ChannelManager_create_inbound_payment(this_arg: bigint, min_value_msat: bigint, invoice_expiry_delta_secs: number): bigint {
+export function ChannelManager_create_inbound_payment(this_arg: bigint, min_value_msat: bigint, invoice_expiry_delta_secs: number, min_final_cltv_expiry_delta: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelManager_create_inbound_payment(this_arg, min_value_msat, invoice_expiry_delta_secs);
+       const nativeResponseValue = wasm.TS_ChannelManager_create_inbound_payment(this_arg, min_value_msat, invoice_expiry_delta_secs, min_final_cltv_expiry_delta);
        return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZAPIErrorZ ChannelManager_create_inbound_payment_legacy(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKCOption_u64Z min_value_msat, uint32_t invoice_expiry_delta_secs);
@@ -20434,13 +23327,13 @@ export function ChannelManager_create_inbound_payment_legacy(this_arg: bigint, m
        const nativeResponseValue = wasm.TS_ChannelManager_create_inbound_payment_legacy(this_arg, min_value_msat, invoice_expiry_delta_secs);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKCResult_PaymentSecretNoneZ ChannelManager_create_inbound_payment_for_hash(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes payment_hash, struct LDKCOption_u64Z min_value_msat, uint32_t invoice_expiry_delta_secs);
+       // MUST_USE_RES struct LDKCResult_PaymentSecretNoneZ ChannelManager_create_inbound_payment_for_hash(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes payment_hash, struct LDKCOption_u64Z min_value_msat, uint32_t invoice_expiry_delta_secs, struct LDKCOption_u16Z min_final_cltv_expiry);
 /* @internal */
-export function ChannelManager_create_inbound_payment_for_hash(this_arg: bigint, payment_hash: number, min_value_msat: bigint, invoice_expiry_delta_secs: number): bigint {
+export function ChannelManager_create_inbound_payment_for_hash(this_arg: bigint, payment_hash: number, min_value_msat: bigint, invoice_expiry_delta_secs: number, min_final_cltv_expiry: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelManager_create_inbound_payment_for_hash(this_arg, payment_hash, min_value_msat, invoice_expiry_delta_secs);
+       const nativeResponseValue = wasm.TS_ChannelManager_create_inbound_payment_for_hash(this_arg, payment_hash, min_value_msat, invoice_expiry_delta_secs, min_final_cltv_expiry);
        return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKCResult_PaymentSecretAPIErrorZ ChannelManager_create_inbound_payment_for_hash_legacy(const struct LDKChannelManager *NONNULL_PTR this_arg, struct LDKThirtyTwoBytes payment_hash, struct LDKCOption_u64Z min_value_msat, uint32_t invoice_expiry_delta_secs);
@@ -20478,6 +23371,24 @@ export function ChannelManager_get_phantom_route_hints(this_arg: bigint): bigint
        }
        const nativeResponseValue = wasm.TS_ChannelManager_get_phantom_route_hints(this_arg);
        return nativeResponseValue;
+}
+       // MUST_USE_RES uint64_t ChannelManager_get_intercept_scid(const struct LDKChannelManager *NONNULL_PTR this_arg);
+/* @internal */
+export function ChannelManager_get_intercept_scid(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelManager_get_intercept_scid(this_arg);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKInFlightHtlcs ChannelManager_compute_inflight_htlcs(const struct LDKChannelManager *NONNULL_PTR this_arg);
+/* @internal */
+export function ChannelManager_compute_inflight_htlcs(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelManager_compute_inflight_htlcs(this_arg);
+       return nativeResponseValue;
 }
        // struct LDKMessageSendEventsProvider ChannelManager_as_MessageSendEventsProvider(const struct LDKChannelManager *NONNULL_PTR this_arg);
 /* @internal */
@@ -20523,6 +23434,15 @@ export function ChannelManager_await_persistable_update(this_arg: bigint): void
        }
        const nativeResponseValue = wasm.TS_ChannelManager_await_persistable_update(this_arg);
        // debug statements here
+}
+       // MUST_USE_RES struct LDKFuture ChannelManager_get_persistable_update_future(const struct LDKChannelManager *NONNULL_PTR this_arg);
+/* @internal */
+export function ChannelManager_get_persistable_update_future(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelManager_get_persistable_update_future(this_arg);
+       return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKBestBlock ChannelManager_current_best_block(const struct LDKChannelManager *NONNULL_PTR this_arg);
 /* @internal */
@@ -20532,6 +23452,42 @@ export function ChannelManager_current_best_block(this_arg: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_ChannelManager_current_best_block(this_arg);
        return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKNodeFeatures ChannelManager_node_features(const struct LDKChannelManager *NONNULL_PTR this_arg);
+/* @internal */
+export function ChannelManager_node_features(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelManager_node_features(this_arg);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKChannelFeatures ChannelManager_channel_features(const struct LDKChannelManager *NONNULL_PTR this_arg);
+/* @internal */
+export function ChannelManager_channel_features(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelManager_channel_features(this_arg);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKChannelTypeFeatures ChannelManager_channel_type_features(const struct LDKChannelManager *NONNULL_PTR this_arg);
+/* @internal */
+export function ChannelManager_channel_type_features(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelManager_channel_type_features(this_arg);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKInitFeatures ChannelManager_init_features(const struct LDKChannelManager *NONNULL_PTR this_arg);
+/* @internal */
+export function ChannelManager_init_features(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelManager_init_features(this_arg);
+       return nativeResponseValue;
 }
        // struct LDKChannelMessageHandler ChannelManager_as_ChannelMessageHandler(const struct LDKChannelManager *NONNULL_PTR this_arg);
 /* @internal */
@@ -20541,6 +23497,15 @@ export function ChannelManager_as_ChannelMessageHandler(this_arg: bigint): bigin
        }
        const nativeResponseValue = wasm.TS_ChannelManager_as_ChannelMessageHandler(this_arg);
        return nativeResponseValue;
+}
+       // struct LDKInitFeatures provided_init_features(const struct LDKUserConfig *NONNULL_PTR _config);
+/* @internal */
+export function provided_init_features(_config: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_provided_init_features(_config);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z CounterpartyForwardingInfo_write(const struct LDKCounterpartyForwardingInfo *NONNULL_PTR obj);
 /* @internal */
@@ -20632,22 +23597,58 @@ export function ChannelManagerReadArgs_free(this_obj: bigint): void {
        const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_free(this_obj);
        // debug statements here
 }
-       // const struct LDKKeysInterface *ChannelManagerReadArgs_get_keys_manager(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr);
+       // const struct LDKEntropySource *ChannelManagerReadArgs_get_entropy_source(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr);
 /* @internal */
-export function ChannelManagerReadArgs_get_keys_manager(this_ptr: bigint): bigint {
+export function ChannelManagerReadArgs_get_entropy_source(this_ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_get_keys_manager(this_ptr);
+       const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_get_entropy_source(this_ptr);
        return nativeResponseValue;
 }
-       // void ChannelManagerReadArgs_set_keys_manager(struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr, struct LDKKeysInterface val);
+       // void ChannelManagerReadArgs_set_entropy_source(struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr, struct LDKEntropySource val);
 /* @internal */
-export function ChannelManagerReadArgs_set_keys_manager(this_ptr: bigint, val: bigint): void {
+export function ChannelManagerReadArgs_set_entropy_source(this_ptr: bigint, val: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_set_keys_manager(this_ptr, val);
+       const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_set_entropy_source(this_ptr, val);
+       // debug statements here
+}
+       // const struct LDKNodeSigner *ChannelManagerReadArgs_get_node_signer(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr);
+/* @internal */
+export function ChannelManagerReadArgs_get_node_signer(this_ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_get_node_signer(this_ptr);
+       return nativeResponseValue;
+}
+       // void ChannelManagerReadArgs_set_node_signer(struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr, struct LDKNodeSigner val);
+/* @internal */
+export function ChannelManagerReadArgs_set_node_signer(this_ptr: bigint, val: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_set_node_signer(this_ptr, val);
+       // debug statements here
+}
+       // const struct LDKSignerProvider *ChannelManagerReadArgs_get_signer_provider(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr);
+/* @internal */
+export function ChannelManagerReadArgs_get_signer_provider(this_ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_get_signer_provider(this_ptr);
+       return nativeResponseValue;
+}
+       // void ChannelManagerReadArgs_set_signer_provider(struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr, struct LDKSignerProvider val);
+/* @internal */
+export function ChannelManagerReadArgs_set_signer_provider(this_ptr: bigint, val: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_set_signer_provider(this_ptr, val);
        // debug statements here
 }
        // const struct LDKFeeEstimator *ChannelManagerReadArgs_get_fee_estimator(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr);
@@ -20703,6 +23704,24 @@ export function ChannelManagerReadArgs_set_tx_broadcaster(this_ptr: bigint, val:
        }
        const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_set_tx_broadcaster(this_ptr, val);
        // debug statements here
+}
+       // const struct LDKRouter *ChannelManagerReadArgs_get_router(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr);
+/* @internal */
+export function ChannelManagerReadArgs_get_router(this_ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_get_router(this_ptr);
+       return nativeResponseValue;
+}
+       // void ChannelManagerReadArgs_set_router(struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr, struct LDKRouter val);
+/* @internal */
+export function ChannelManagerReadArgs_set_router(this_ptr: bigint, val: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_set_router(this_ptr, val);
+       // debug statements here
 }
        // const struct LDKLogger *ChannelManagerReadArgs_get_logger(const struct LDKChannelManagerReadArgs *NONNULL_PTR this_ptr);
 /* @internal */
@@ -20740,13 +23759,13 @@ export function ChannelManagerReadArgs_set_default_config(this_ptr: bigint, val:
        const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_set_default_config(this_ptr, val);
        // debug statements here
 }
-       // MUST_USE_RES struct LDKChannelManagerReadArgs ChannelManagerReadArgs_new(struct LDKKeysInterface keys_manager, struct LDKFeeEstimator fee_estimator, struct LDKWatch chain_monitor, struct LDKBroadcasterInterface tx_broadcaster, struct LDKLogger logger, struct LDKUserConfig default_config, struct LDKCVec_ChannelMonitorZ channel_monitors);
+       // MUST_USE_RES struct LDKChannelManagerReadArgs ChannelManagerReadArgs_new(struct LDKEntropySource entropy_source, struct LDKNodeSigner node_signer, struct LDKSignerProvider signer_provider, struct LDKFeeEstimator fee_estimator, struct LDKWatch chain_monitor, struct LDKBroadcasterInterface tx_broadcaster, struct LDKRouter router, struct LDKLogger logger, struct LDKUserConfig default_config, struct LDKCVec_ChannelMonitorZ channel_monitors);
 /* @internal */
-export function ChannelManagerReadArgs_new(keys_manager: bigint, fee_estimator: bigint, chain_monitor: bigint, tx_broadcaster: bigint, logger: bigint, default_config: bigint, channel_monitors: number): bigint {
+export function ChannelManagerReadArgs_new(entropy_source: bigint, node_signer: bigint, signer_provider: bigint, fee_estimator: bigint, chain_monitor: bigint, tx_broadcaster: bigint, router: bigint, logger: bigint, default_config: bigint, channel_monitors: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_new(keys_manager, fee_estimator, chain_monitor, tx_broadcaster, logger, default_config, channel_monitors);
+       const nativeResponseValue = wasm.TS_ChannelManagerReadArgs_new(entropy_source, node_signer, signer_provider, fee_estimator, chain_monitor, tx_broadcaster, router, logger, default_config, channel_monitors);
        return nativeResponseValue;
 }
        // struct LDKCResult_C2Tuple_BlockHashChannelManagerZDecodeErrorZ C2Tuple_BlockHashChannelManagerZ_read(struct LDKu8slice ser, struct LDKChannelManagerReadArgs arg);
@@ -20776,31 +23795,31 @@ export function ExpandedKey_new(key_material: number): bigint {
        const nativeResponseValue = wasm.TS_ExpandedKey_new(key_material);
        return nativeResponseValue;
 }
-       // struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ create(const struct LDKExpandedKey *NONNULL_PTR keys, struct LDKCOption_u64Z min_value_msat, uint32_t invoice_expiry_delta_secs, const struct LDKKeysInterface *NONNULL_PTR keys_manager, uint64_t current_time);
+       // struct LDKCResult_C2Tuple_PaymentHashPaymentSecretZNoneZ create(const struct LDKExpandedKey *NONNULL_PTR keys, struct LDKCOption_u64Z min_value_msat, uint32_t invoice_expiry_delta_secs, const struct LDKEntropySource *NONNULL_PTR entropy_source, uint64_t current_time, struct LDKCOption_u16Z min_final_cltv_expiry_delta);
 /* @internal */
-export function create(keys: bigint, min_value_msat: bigint, invoice_expiry_delta_secs: number, keys_manager: bigint, current_time: bigint): bigint {
+export function create(keys: bigint, min_value_msat: bigint, invoice_expiry_delta_secs: number, entropy_source: bigint, current_time: bigint, min_final_cltv_expiry_delta: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_create(keys, min_value_msat, invoice_expiry_delta_secs, keys_manager, current_time);
+       const nativeResponseValue = wasm.TS_create(keys, min_value_msat, invoice_expiry_delta_secs, entropy_source, current_time, min_final_cltv_expiry_delta);
        return nativeResponseValue;
 }
-       // struct LDKCResult_PaymentSecretNoneZ create_from_hash(const struct LDKExpandedKey *NONNULL_PTR keys, struct LDKCOption_u64Z min_value_msat, struct LDKThirtyTwoBytes payment_hash, uint32_t invoice_expiry_delta_secs, uint64_t current_time);
+       // struct LDKCResult_PaymentSecretNoneZ create_from_hash(const struct LDKExpandedKey *NONNULL_PTR keys, struct LDKCOption_u64Z min_value_msat, struct LDKThirtyTwoBytes payment_hash, uint32_t invoice_expiry_delta_secs, uint64_t current_time, struct LDKCOption_u16Z min_final_cltv_expiry_delta);
 /* @internal */
-export function create_from_hash(keys: bigint, min_value_msat: bigint, payment_hash: number, invoice_expiry_delta_secs: number, current_time: bigint): bigint {
+export function create_from_hash(keys: bigint, min_value_msat: bigint, payment_hash: number, invoice_expiry_delta_secs: number, current_time: bigint, min_final_cltv_expiry_delta: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_create_from_hash(keys, min_value_msat, payment_hash, invoice_expiry_delta_secs, current_time);
+       const nativeResponseValue = wasm.TS_create_from_hash(keys, min_value_msat, payment_hash, invoice_expiry_delta_secs, current_time, min_final_cltv_expiry_delta);
        return nativeResponseValue;
 }
-       // void DecodeError_free(struct LDKDecodeError this_obj);
+       // void DecodeError_free(struct LDKDecodeError this_ptr);
 /* @internal */
-export function DecodeError_free(this_obj: bigint): void {
+export function DecodeError_free(this_ptr: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_DecodeError_free(this_obj);
+       const nativeResponseValue = wasm.TS_DecodeError_free(this_ptr);
        // debug statements here
 }
        // uint64_t DecodeError_clone_ptr(LDKDecodeError *NONNULL_PTR arg);
@@ -20820,6 +23839,78 @@ export function DecodeError_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_DecodeError_clone(orig);
        return nativeResponseValue;
+}
+       // struct LDKDecodeError DecodeError_unknown_version(void);
+/* @internal */
+export function DecodeError_unknown_version(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_DecodeError_unknown_version();
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError DecodeError_unknown_required_feature(void);
+/* @internal */
+export function DecodeError_unknown_required_feature(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_DecodeError_unknown_required_feature();
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError DecodeError_invalid_value(void);
+/* @internal */
+export function DecodeError_invalid_value(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_DecodeError_invalid_value();
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError DecodeError_short_read(void);
+/* @internal */
+export function DecodeError_short_read(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_DecodeError_short_read();
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError DecodeError_bad_length_descriptor(void);
+/* @internal */
+export function DecodeError_bad_length_descriptor(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_DecodeError_bad_length_descriptor();
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError DecodeError_io(enum LDKIOError a);
+/* @internal */
+export function DecodeError_io(a: IOError): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_DecodeError_io(a);
+       return nativeResponseValue;
+}
+       // struct LDKDecodeError DecodeError_unsupported_compression(void);
+/* @internal */
+export function DecodeError_unsupported_compression(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_DecodeError_unsupported_compression();
+       return nativeResponseValue;
+}
+       // bool DecodeError_eq(const struct LDKDecodeError *NONNULL_PTR a, const struct LDKDecodeError *NONNULL_PTR b);
+/* @internal */
+export function DecodeError_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_DecodeError_eq(a, b);
+       return nativeResponseValue;
 }
        // void Init_free(struct LDKInit this_obj);
 /* @internal */
@@ -20892,6 +23983,15 @@ export function Init_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_Init_clone(orig);
        return nativeResponseValue;
+}
+       // bool Init_eq(const struct LDKInit *NONNULL_PTR a, const struct LDKInit *NONNULL_PTR b);
+/* @internal */
+export function Init_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Init_eq(a, b);
+       return nativeResponseValue;
 }
        // void ErrorMessage_free(struct LDKErrorMessage this_obj);
 /* @internal */
@@ -20964,6 +24064,15 @@ export function ErrorMessage_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_ErrorMessage_clone(orig);
        return nativeResponseValue;
+}
+       // bool ErrorMessage_eq(const struct LDKErrorMessage *NONNULL_PTR a, const struct LDKErrorMessage *NONNULL_PTR b);
+/* @internal */
+export function ErrorMessage_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ErrorMessage_eq(a, b);
+       return nativeResponseValue;
 }
        // void WarningMessage_free(struct LDKWarningMessage this_obj);
 /* @internal */
@@ -21036,6 +24145,15 @@ export function WarningMessage_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_WarningMessage_clone(orig);
        return nativeResponseValue;
+}
+       // bool WarningMessage_eq(const struct LDKWarningMessage *NONNULL_PTR a, const struct LDKWarningMessage *NONNULL_PTR b);
+/* @internal */
+export function WarningMessage_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_WarningMessage_eq(a, b);
+       return nativeResponseValue;
 }
        // void Ping_free(struct LDKPing this_obj);
 /* @internal */
@@ -21108,6 +24226,15 @@ export function Ping_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_Ping_clone(orig);
        return nativeResponseValue;
+}
+       // bool Ping_eq(const struct LDKPing *NONNULL_PTR a, const struct LDKPing *NONNULL_PTR b);
+/* @internal */
+export function Ping_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Ping_eq(a, b);
+       return nativeResponseValue;
 }
        // void Pong_free(struct LDKPong this_obj);
 /* @internal */
@@ -21162,6 +24289,15 @@ export function Pong_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_Pong_clone(orig);
        return nativeResponseValue;
+}
+       // bool Pong_eq(const struct LDKPong *NONNULL_PTR a, const struct LDKPong *NONNULL_PTR b);
+/* @internal */
+export function Pong_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Pong_eq(a, b);
+       return nativeResponseValue;
 }
        // void OpenChannel_free(struct LDKOpenChannel this_obj);
 /* @internal */
@@ -21531,6 +24667,15 @@ export function OpenChannel_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_OpenChannel_clone(orig);
        return nativeResponseValue;
+}
+       // bool OpenChannel_eq(const struct LDKOpenChannel *NONNULL_PTR a, const struct LDKOpenChannel *NONNULL_PTR b);
+/* @internal */
+export function OpenChannel_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OpenChannel_eq(a, b);
+       return nativeResponseValue;
 }
        // void AcceptChannel_free(struct LDKAcceptChannel this_obj);
 /* @internal */
@@ -21828,6 +24973,15 @@ export function AcceptChannel_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_AcceptChannel_clone(orig);
        return nativeResponseValue;
+}
+       // bool AcceptChannel_eq(const struct LDKAcceptChannel *NONNULL_PTR a, const struct LDKAcceptChannel *NONNULL_PTR b);
+/* @internal */
+export function AcceptChannel_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_AcceptChannel_eq(a, b);
+       return nativeResponseValue;
 }
        // void FundingCreated_free(struct LDKFundingCreated this_obj);
 /* @internal */
@@ -21936,6 +25090,15 @@ export function FundingCreated_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_FundingCreated_clone(orig);
        return nativeResponseValue;
+}
+       // bool FundingCreated_eq(const struct LDKFundingCreated *NONNULL_PTR a, const struct LDKFundingCreated *NONNULL_PTR b);
+/* @internal */
+export function FundingCreated_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_FundingCreated_eq(a, b);
+       return nativeResponseValue;
 }
        // void FundingSigned_free(struct LDKFundingSigned this_obj);
 /* @internal */
@@ -22008,6 +25171,15 @@ export function FundingSigned_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_FundingSigned_clone(orig);
        return nativeResponseValue;
+}
+       // bool FundingSigned_eq(const struct LDKFundingSigned *NONNULL_PTR a, const struct LDKFundingSigned *NONNULL_PTR b);
+/* @internal */
+export function FundingSigned_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_FundingSigned_eq(a, b);
+       return nativeResponseValue;
 }
        // void ChannelReady_free(struct LDKChannelReady this_obj);
 /* @internal */
@@ -22098,6 +25270,15 @@ export function ChannelReady_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_ChannelReady_clone(orig);
        return nativeResponseValue;
+}
+       // bool ChannelReady_eq(const struct LDKChannelReady *NONNULL_PTR a, const struct LDKChannelReady *NONNULL_PTR b);
+/* @internal */
+export function ChannelReady_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelReady_eq(a, b);
+       return nativeResponseValue;
 }
        // void Shutdown_free(struct LDKShutdown this_obj);
 /* @internal */
@@ -22170,6 +25351,15 @@ export function Shutdown_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_Shutdown_clone(orig);
        return nativeResponseValue;
+}
+       // bool Shutdown_eq(const struct LDKShutdown *NONNULL_PTR a, const struct LDKShutdown *NONNULL_PTR b);
+/* @internal */
+export function Shutdown_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Shutdown_eq(a, b);
+       return nativeResponseValue;
 }
        // void ClosingSignedFeeRange_free(struct LDKClosingSignedFeeRange this_obj);
 /* @internal */
@@ -22242,6 +25432,15 @@ export function ClosingSignedFeeRange_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_ClosingSignedFeeRange_clone(orig);
        return nativeResponseValue;
+}
+       // bool ClosingSignedFeeRange_eq(const struct LDKClosingSignedFeeRange *NONNULL_PTR a, const struct LDKClosingSignedFeeRange *NONNULL_PTR b);
+/* @internal */
+export function ClosingSignedFeeRange_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ClosingSignedFeeRange_eq(a, b);
+       return nativeResponseValue;
 }
        // void ClosingSigned_free(struct LDKClosingSigned this_obj);
 /* @internal */
@@ -22350,6 +25549,15 @@ export function ClosingSigned_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_ClosingSigned_clone(orig);
        return nativeResponseValue;
+}
+       // bool ClosingSigned_eq(const struct LDKClosingSigned *NONNULL_PTR a, const struct LDKClosingSigned *NONNULL_PTR b);
+/* @internal */
+export function ClosingSigned_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ClosingSigned_eq(a, b);
+       return nativeResponseValue;
 }
        // void UpdateAddHTLC_free(struct LDKUpdateAddHTLC this_obj);
 /* @internal */
@@ -22467,6 +25675,69 @@ export function UpdateAddHTLC_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_UpdateAddHTLC_clone(orig);
        return nativeResponseValue;
+}
+       // bool UpdateAddHTLC_eq(const struct LDKUpdateAddHTLC *NONNULL_PTR a, const struct LDKUpdateAddHTLC *NONNULL_PTR b);
+/* @internal */
+export function UpdateAddHTLC_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UpdateAddHTLC_eq(a, b);
+       return nativeResponseValue;
+}
+       // void OnionMessage_free(struct LDKOnionMessage this_obj);
+/* @internal */
+export function OnionMessage_free(this_obj: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessage_free(this_obj);
+       // debug statements here
+}
+       // struct LDKPublicKey OnionMessage_get_blinding_point(const struct LDKOnionMessage *NONNULL_PTR this_ptr);
+/* @internal */
+export function OnionMessage_get_blinding_point(this_ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessage_get_blinding_point(this_ptr);
+       return nativeResponseValue;
+}
+       // void OnionMessage_set_blinding_point(struct LDKOnionMessage *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+/* @internal */
+export function OnionMessage_set_blinding_point(this_ptr: bigint, val: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessage_set_blinding_point(this_ptr, val);
+       // debug statements here
+}
+       // uint64_t OnionMessage_clone_ptr(LDKOnionMessage *NONNULL_PTR arg);
+/* @internal */
+export function OnionMessage_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessage_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKOnionMessage OnionMessage_clone(const struct LDKOnionMessage *NONNULL_PTR orig);
+/* @internal */
+export function OnionMessage_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessage_clone(orig);
+       return nativeResponseValue;
+}
+       // bool OnionMessage_eq(const struct LDKOnionMessage *NONNULL_PTR a, const struct LDKOnionMessage *NONNULL_PTR b);
+/* @internal */
+export function OnionMessage_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessage_eq(a, b);
+       return nativeResponseValue;
 }
        // void UpdateFulfillHTLC_free(struct LDKUpdateFulfillHTLC this_obj);
 /* @internal */
@@ -22557,6 +25828,15 @@ export function UpdateFulfillHTLC_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_UpdateFulfillHTLC_clone(orig);
        return nativeResponseValue;
+}
+       // bool UpdateFulfillHTLC_eq(const struct LDKUpdateFulfillHTLC *NONNULL_PTR a, const struct LDKUpdateFulfillHTLC *NONNULL_PTR b);
+/* @internal */
+export function UpdateFulfillHTLC_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UpdateFulfillHTLC_eq(a, b);
+       return nativeResponseValue;
 }
        // void UpdateFailHTLC_free(struct LDKUpdateFailHTLC this_obj);
 /* @internal */
@@ -22620,6 +25900,15 @@ export function UpdateFailHTLC_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_UpdateFailHTLC_clone(orig);
        return nativeResponseValue;
+}
+       // bool UpdateFailHTLC_eq(const struct LDKUpdateFailHTLC *NONNULL_PTR a, const struct LDKUpdateFailHTLC *NONNULL_PTR b);
+/* @internal */
+export function UpdateFailHTLC_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UpdateFailHTLC_eq(a, b);
+       return nativeResponseValue;
 }
        // void UpdateFailMalformedHTLC_free(struct LDKUpdateFailMalformedHTLC this_obj);
 /* @internal */
@@ -22701,6 +25990,15 @@ export function UpdateFailMalformedHTLC_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_UpdateFailMalformedHTLC_clone(orig);
        return nativeResponseValue;
+}
+       // bool UpdateFailMalformedHTLC_eq(const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR a, const struct LDKUpdateFailMalformedHTLC *NONNULL_PTR b);
+/* @internal */
+export function UpdateFailMalformedHTLC_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UpdateFailMalformedHTLC_eq(a, b);
+       return nativeResponseValue;
 }
        // void CommitmentSigned_free(struct LDKCommitmentSigned this_obj);
 /* @internal */
@@ -22791,6 +26089,15 @@ export function CommitmentSigned_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_CommitmentSigned_clone(orig);
        return nativeResponseValue;
+}
+       // bool CommitmentSigned_eq(const struct LDKCommitmentSigned *NONNULL_PTR a, const struct LDKCommitmentSigned *NONNULL_PTR b);
+/* @internal */
+export function CommitmentSigned_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CommitmentSigned_eq(a, b);
+       return nativeResponseValue;
 }
        // void RevokeAndACK_free(struct LDKRevokeAndACK this_obj);
 /* @internal */
@@ -22881,6 +26188,15 @@ export function RevokeAndACK_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_RevokeAndACK_clone(orig);
        return nativeResponseValue;
+}
+       // bool RevokeAndACK_eq(const struct LDKRevokeAndACK *NONNULL_PTR a, const struct LDKRevokeAndACK *NONNULL_PTR b);
+/* @internal */
+export function RevokeAndACK_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_RevokeAndACK_eq(a, b);
+       return nativeResponseValue;
 }
        // void UpdateFee_free(struct LDKUpdateFee this_obj);
 /* @internal */
@@ -22953,6 +26269,15 @@ export function UpdateFee_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_UpdateFee_clone(orig);
        return nativeResponseValue;
+}
+       // bool UpdateFee_eq(const struct LDKUpdateFee *NONNULL_PTR a, const struct LDKUpdateFee *NONNULL_PTR b);
+/* @internal */
+export function UpdateFee_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UpdateFee_eq(a, b);
+       return nativeResponseValue;
 }
        // void DataLossProtect_free(struct LDKDataLossProtect this_obj);
 /* @internal */
@@ -23025,6 +26350,15 @@ export function DataLossProtect_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_DataLossProtect_clone(orig);
        return nativeResponseValue;
+}
+       // bool DataLossProtect_eq(const struct LDKDataLossProtect *NONNULL_PTR a, const struct LDKDataLossProtect *NONNULL_PTR b);
+/* @internal */
+export function DataLossProtect_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_DataLossProtect_eq(a, b);
+       return nativeResponseValue;
 }
        // void ChannelReestablish_free(struct LDKChannelReestablish this_obj);
 /* @internal */
@@ -23106,6 +26440,15 @@ export function ChannelReestablish_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_ChannelReestablish_clone(orig);
        return nativeResponseValue;
+}
+       // bool ChannelReestablish_eq(const struct LDKChannelReestablish *NONNULL_PTR a, const struct LDKChannelReestablish *NONNULL_PTR b);
+/* @internal */
+export function ChannelReestablish_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelReestablish_eq(a, b);
+       return nativeResponseValue;
 }
        // void AnnouncementSignatures_free(struct LDKAnnouncementSignatures this_obj);
 /* @internal */
@@ -23214,6 +26557,15 @@ export function AnnouncementSignatures_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_AnnouncementSignatures_clone(orig);
        return nativeResponseValue;
+}
+       // bool AnnouncementSignatures_eq(const struct LDKAnnouncementSignatures *NONNULL_PTR a, const struct LDKAnnouncementSignatures *NONNULL_PTR b);
+/* @internal */
+export function AnnouncementSignatures_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_AnnouncementSignatures_eq(a, b);
+       return nativeResponseValue;
 }
        // void NetAddress_free(struct LDKNetAddress this_ptr);
 /* @internal */
@@ -23286,6 +26638,15 @@ export function NetAddress_hostname(hostname: bigint, port: number): bigint {
        }
        const nativeResponseValue = wasm.TS_NetAddress_hostname(hostname, port);
        return nativeResponseValue;
+}
+       // bool NetAddress_eq(const struct LDKNetAddress *NONNULL_PTR a, const struct LDKNetAddress *NONNULL_PTR b);
+/* @internal */
+export function NetAddress_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_NetAddress_eq(a, b);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z NetAddress_write(const struct LDKNetAddress *NONNULL_PTR obj);
 /* @internal */
@@ -23304,6 +26665,69 @@ export function NetAddress_read(ser: number): bigint {
        }
        const nativeResponseValue = wasm.TS_NetAddress_read(ser);
        return nativeResponseValue;
+}
+       // void UnsignedGossipMessage_free(struct LDKUnsignedGossipMessage this_ptr);
+/* @internal */
+export function UnsignedGossipMessage_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UnsignedGossipMessage_free(this_ptr);
+       // debug statements here
+}
+       // uint64_t UnsignedGossipMessage_clone_ptr(LDKUnsignedGossipMessage *NONNULL_PTR arg);
+/* @internal */
+export function UnsignedGossipMessage_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UnsignedGossipMessage_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKUnsignedGossipMessage UnsignedGossipMessage_clone(const struct LDKUnsignedGossipMessage *NONNULL_PTR orig);
+/* @internal */
+export function UnsignedGossipMessage_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UnsignedGossipMessage_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKUnsignedGossipMessage UnsignedGossipMessage_channel_announcement(struct LDKUnsignedChannelAnnouncement a);
+/* @internal */
+export function UnsignedGossipMessage_channel_announcement(a: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UnsignedGossipMessage_channel_announcement(a);
+       return nativeResponseValue;
+}
+       // struct LDKUnsignedGossipMessage UnsignedGossipMessage_channel_update(struct LDKUnsignedChannelUpdate a);
+/* @internal */
+export function UnsignedGossipMessage_channel_update(a: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UnsignedGossipMessage_channel_update(a);
+       return nativeResponseValue;
+}
+       // struct LDKUnsignedGossipMessage UnsignedGossipMessage_node_announcement(struct LDKUnsignedNodeAnnouncement a);
+/* @internal */
+export function UnsignedGossipMessage_node_announcement(a: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UnsignedGossipMessage_node_announcement(a);
+       return nativeResponseValue;
+}
+       // struct LDKCVec_u8Z UnsignedGossipMessage_write(const struct LDKUnsignedGossipMessage *NONNULL_PTR obj);
+/* @internal */
+export function UnsignedGossipMessage_write(obj: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UnsignedGossipMessage_write(obj);
+       return nativeResponseValue;
 }
        // void UnsignedNodeAnnouncement_free(struct LDKUnsignedNodeAnnouncement this_obj);
 /* @internal */
@@ -23350,18 +26774,18 @@ export function UnsignedNodeAnnouncement_set_timestamp(this_ptr: bigint, val: nu
        const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_set_timestamp(this_ptr, val);
        // debug statements here
 }
-       // struct LDKPublicKey UnsignedNodeAnnouncement_get_node_id(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr);
+       // struct LDKNodeId UnsignedNodeAnnouncement_get_node_id(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr);
 /* @internal */
-export function UnsignedNodeAnnouncement_get_node_id(this_ptr: bigint): number {
+export function UnsignedNodeAnnouncement_get_node_id(this_ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_get_node_id(this_ptr);
        return nativeResponseValue;
 }
-       // void UnsignedNodeAnnouncement_set_node_id(struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+       // void UnsignedNodeAnnouncement_set_node_id(struct LDKUnsignedNodeAnnouncement *NONNULL_PTR this_ptr, struct LDKNodeId val);
 /* @internal */
-export function UnsignedNodeAnnouncement_set_node_id(this_ptr: bigint, val: number): void {
+export function UnsignedNodeAnnouncement_set_node_id(this_ptr: bigint, val: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -23439,6 +26863,15 @@ export function UnsignedNodeAnnouncement_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_clone(orig);
        return nativeResponseValue;
+}
+       // bool UnsignedNodeAnnouncement_eq(const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR a, const struct LDKUnsignedNodeAnnouncement *NONNULL_PTR b);
+/* @internal */
+export function UnsignedNodeAnnouncement_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UnsignedNodeAnnouncement_eq(a, b);
+       return nativeResponseValue;
 }
        // void NodeAnnouncement_free(struct LDKNodeAnnouncement this_obj);
 /* @internal */
@@ -23511,6 +26944,15 @@ export function NodeAnnouncement_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_NodeAnnouncement_clone(orig);
        return nativeResponseValue;
+}
+       // bool NodeAnnouncement_eq(const struct LDKNodeAnnouncement *NONNULL_PTR a, const struct LDKNodeAnnouncement *NONNULL_PTR b);
+/* @internal */
+export function NodeAnnouncement_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_NodeAnnouncement_eq(a, b);
+       return nativeResponseValue;
 }
        // void UnsignedChannelAnnouncement_free(struct LDKUnsignedChannelAnnouncement this_obj);
 /* @internal */
@@ -23575,72 +27017,72 @@ export function UnsignedChannelAnnouncement_set_short_channel_id(this_ptr: bigin
        const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_set_short_channel_id(this_ptr, val);
        // debug statements here
 }
-       // struct LDKPublicKey UnsignedChannelAnnouncement_get_node_id_1(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr);
+       // struct LDKNodeId UnsignedChannelAnnouncement_get_node_id_1(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr);
 /* @internal */
-export function UnsignedChannelAnnouncement_get_node_id_1(this_ptr: bigint): number {
+export function UnsignedChannelAnnouncement_get_node_id_1(this_ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_get_node_id_1(this_ptr);
        return nativeResponseValue;
 }
-       // void UnsignedChannelAnnouncement_set_node_id_1(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+       // void UnsignedChannelAnnouncement_set_node_id_1(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKNodeId val);
 /* @internal */
-export function UnsignedChannelAnnouncement_set_node_id_1(this_ptr: bigint, val: number): void {
+export function UnsignedChannelAnnouncement_set_node_id_1(this_ptr: bigint, val: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_set_node_id_1(this_ptr, val);
        // debug statements here
 }
-       // struct LDKPublicKey UnsignedChannelAnnouncement_get_node_id_2(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr);
+       // struct LDKNodeId UnsignedChannelAnnouncement_get_node_id_2(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr);
 /* @internal */
-export function UnsignedChannelAnnouncement_get_node_id_2(this_ptr: bigint): number {
+export function UnsignedChannelAnnouncement_get_node_id_2(this_ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_get_node_id_2(this_ptr);
        return nativeResponseValue;
 }
-       // void UnsignedChannelAnnouncement_set_node_id_2(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+       // void UnsignedChannelAnnouncement_set_node_id_2(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKNodeId val);
 /* @internal */
-export function UnsignedChannelAnnouncement_set_node_id_2(this_ptr: bigint, val: number): void {
+export function UnsignedChannelAnnouncement_set_node_id_2(this_ptr: bigint, val: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_set_node_id_2(this_ptr, val);
        // debug statements here
 }
-       // struct LDKPublicKey UnsignedChannelAnnouncement_get_bitcoin_key_1(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr);
+       // struct LDKNodeId UnsignedChannelAnnouncement_get_bitcoin_key_1(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr);
 /* @internal */
-export function UnsignedChannelAnnouncement_get_bitcoin_key_1(this_ptr: bigint): number {
+export function UnsignedChannelAnnouncement_get_bitcoin_key_1(this_ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_get_bitcoin_key_1(this_ptr);
        return nativeResponseValue;
 }
-       // void UnsignedChannelAnnouncement_set_bitcoin_key_1(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+       // void UnsignedChannelAnnouncement_set_bitcoin_key_1(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKNodeId val);
 /* @internal */
-export function UnsignedChannelAnnouncement_set_bitcoin_key_1(this_ptr: bigint, val: number): void {
+export function UnsignedChannelAnnouncement_set_bitcoin_key_1(this_ptr: bigint, val: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_set_bitcoin_key_1(this_ptr, val);
        // debug statements here
 }
-       // struct LDKPublicKey UnsignedChannelAnnouncement_get_bitcoin_key_2(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr);
+       // struct LDKNodeId UnsignedChannelAnnouncement_get_bitcoin_key_2(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr);
 /* @internal */
-export function UnsignedChannelAnnouncement_get_bitcoin_key_2(this_ptr: bigint): number {
+export function UnsignedChannelAnnouncement_get_bitcoin_key_2(this_ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_get_bitcoin_key_2(this_ptr);
        return nativeResponseValue;
 }
-       // void UnsignedChannelAnnouncement_set_bitcoin_key_2(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKPublicKey val);
+       // void UnsignedChannelAnnouncement_set_bitcoin_key_2(struct LDKUnsignedChannelAnnouncement *NONNULL_PTR this_ptr, struct LDKNodeId val);
 /* @internal */
-export function UnsignedChannelAnnouncement_set_bitcoin_key_2(this_ptr: bigint, val: number): void {
+export function UnsignedChannelAnnouncement_set_bitcoin_key_2(this_ptr: bigint, val: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -23664,6 +27106,15 @@ export function UnsignedChannelAnnouncement_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_clone(orig);
        return nativeResponseValue;
+}
+       // bool UnsignedChannelAnnouncement_eq(const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR a, const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR b);
+/* @internal */
+export function UnsignedChannelAnnouncement_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UnsignedChannelAnnouncement_eq(a, b);
+       return nativeResponseValue;
 }
        // void ChannelAnnouncement_free(struct LDKChannelAnnouncement this_obj);
 /* @internal */
@@ -23790,6 +27241,15 @@ export function ChannelAnnouncement_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_ChannelAnnouncement_clone(orig);
        return nativeResponseValue;
+}
+       // bool ChannelAnnouncement_eq(const struct LDKChannelAnnouncement *NONNULL_PTR a, const struct LDKChannelAnnouncement *NONNULL_PTR b);
+/* @internal */
+export function ChannelAnnouncement_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelAnnouncement_eq(a, b);
+       return nativeResponseValue;
 }
        // void UnsignedChannelUpdate_free(struct LDKUnsignedChannelUpdate this_obj);
 /* @internal */
@@ -24006,6 +27466,15 @@ export function UnsignedChannelUpdate_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_clone(orig);
        return nativeResponseValue;
+}
+       // bool UnsignedChannelUpdate_eq(const struct LDKUnsignedChannelUpdate *NONNULL_PTR a, const struct LDKUnsignedChannelUpdate *NONNULL_PTR b);
+/* @internal */
+export function UnsignedChannelUpdate_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UnsignedChannelUpdate_eq(a, b);
+       return nativeResponseValue;
 }
        // void ChannelUpdate_free(struct LDKChannelUpdate this_obj);
 /* @internal */
@@ -24078,6 +27547,15 @@ export function ChannelUpdate_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_ChannelUpdate_clone(orig);
        return nativeResponseValue;
+}
+       // bool ChannelUpdate_eq(const struct LDKChannelUpdate *NONNULL_PTR a, const struct LDKChannelUpdate *NONNULL_PTR b);
+/* @internal */
+export function ChannelUpdate_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelUpdate_eq(a, b);
+       return nativeResponseValue;
 }
        // void QueryChannelRange_free(struct LDKQueryChannelRange this_obj);
 /* @internal */
@@ -24168,6 +27646,15 @@ export function QueryChannelRange_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_QueryChannelRange_clone(orig);
        return nativeResponseValue;
+}
+       // bool QueryChannelRange_eq(const struct LDKQueryChannelRange *NONNULL_PTR a, const struct LDKQueryChannelRange *NONNULL_PTR b);
+/* @internal */
+export function QueryChannelRange_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_QueryChannelRange_eq(a, b);
+       return nativeResponseValue;
 }
        // void ReplyChannelRange_free(struct LDKReplyChannelRange this_obj);
 /* @internal */
@@ -24294,6 +27781,15 @@ export function ReplyChannelRange_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_ReplyChannelRange_clone(orig);
        return nativeResponseValue;
+}
+       // bool ReplyChannelRange_eq(const struct LDKReplyChannelRange *NONNULL_PTR a, const struct LDKReplyChannelRange *NONNULL_PTR b);
+/* @internal */
+export function ReplyChannelRange_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ReplyChannelRange_eq(a, b);
+       return nativeResponseValue;
 }
        // void QueryShortChannelIds_free(struct LDKQueryShortChannelIds this_obj);
 /* @internal */
@@ -24366,6 +27862,15 @@ export function QueryShortChannelIds_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_QueryShortChannelIds_clone(orig);
        return nativeResponseValue;
+}
+       // bool QueryShortChannelIds_eq(const struct LDKQueryShortChannelIds *NONNULL_PTR a, const struct LDKQueryShortChannelIds *NONNULL_PTR b);
+/* @internal */
+export function QueryShortChannelIds_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_QueryShortChannelIds_eq(a, b);
+       return nativeResponseValue;
 }
        // void ReplyShortChannelIdsEnd_free(struct LDKReplyShortChannelIdsEnd this_obj);
 /* @internal */
@@ -24438,6 +27943,15 @@ export function ReplyShortChannelIdsEnd_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_ReplyShortChannelIdsEnd_clone(orig);
        return nativeResponseValue;
+}
+       // bool ReplyShortChannelIdsEnd_eq(const struct LDKReplyShortChannelIdsEnd *NONNULL_PTR a, const struct LDKReplyShortChannelIdsEnd *NONNULL_PTR b);
+/* @internal */
+export function ReplyShortChannelIdsEnd_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ReplyShortChannelIdsEnd_eq(a, b);
+       return nativeResponseValue;
 }
        // void GossipTimestampFilter_free(struct LDKGossipTimestampFilter this_obj);
 /* @internal */
@@ -24528,6 +28042,15 @@ export function GossipTimestampFilter_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_GossipTimestampFilter_clone(orig);
        return nativeResponseValue;
+}
+       // bool GossipTimestampFilter_eq(const struct LDKGossipTimestampFilter *NONNULL_PTR a, const struct LDKGossipTimestampFilter *NONNULL_PTR b);
+/* @internal */
+export function GossipTimestampFilter_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_GossipTimestampFilter_eq(a, b);
+       return nativeResponseValue;
 }
        // void ErrorAction_free(struct LDKErrorAction this_ptr);
 /* @internal */
@@ -24825,6 +28348,15 @@ export function CommitmentUpdate_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_CommitmentUpdate_clone(orig);
        return nativeResponseValue;
+}
+       // bool CommitmentUpdate_eq(const struct LDKCommitmentUpdate *NONNULL_PTR a, const struct LDKCommitmentUpdate *NONNULL_PTR b);
+/* @internal */
+export function CommitmentUpdate_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CommitmentUpdate_eq(a, b);
+       return nativeResponseValue;
 }
        // void ChannelMessageHandler_free(struct LDKChannelMessageHandler this_ptr);
 /* @internal */
@@ -24843,6 +28375,15 @@ export function RoutingMessageHandler_free(this_ptr: bigint): void {
        }
        const nativeResponseValue = wasm.TS_RoutingMessageHandler_free(this_ptr);
        // debug statements here
+}
+       // void OnionMessageHandler_free(struct LDKOnionMessageHandler this_ptr);
+/* @internal */
+export function OnionMessageHandler_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessageHandler_free(this_ptr);
+       // debug statements here
 }
        // struct LDKCVec_u8Z AcceptChannel_write(const struct LDKAcceptChannel *NONNULL_PTR obj);
 /* @internal */
@@ -25167,6 +28708,24 @@ export function UpdateAddHTLC_read(ser: number): bigint {
        }
        const nativeResponseValue = wasm.TS_UpdateAddHTLC_read(ser);
        return nativeResponseValue;
+}
+       // struct LDKCResult_OnionMessageDecodeErrorZ OnionMessage_read(struct LDKu8slice ser);
+/* @internal */
+export function OnionMessage_read(ser: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessage_read(ser);
+       return nativeResponseValue;
+}
+       // struct LDKCVec_u8Z OnionMessage_write(const struct LDKOnionMessage *NONNULL_PTR obj);
+/* @internal */
+export function OnionMessage_write(obj: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessage_write(obj);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z Ping_write(const struct LDKPing *NONNULL_PTR obj);
 /* @internal */
@@ -25491,6 +29050,33 @@ export function IgnoringMessageHandler_as_RoutingMessageHandler(this_arg: bigint
        }
        const nativeResponseValue = wasm.TS_IgnoringMessageHandler_as_RoutingMessageHandler(this_arg);
        return nativeResponseValue;
+}
+       // struct LDKOnionMessageProvider IgnoringMessageHandler_as_OnionMessageProvider(const struct LDKIgnoringMessageHandler *NONNULL_PTR this_arg);
+/* @internal */
+export function IgnoringMessageHandler_as_OnionMessageProvider(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_IgnoringMessageHandler_as_OnionMessageProvider(this_arg);
+       return nativeResponseValue;
+}
+       // struct LDKOnionMessageHandler IgnoringMessageHandler_as_OnionMessageHandler(const struct LDKIgnoringMessageHandler *NONNULL_PTR this_arg);
+/* @internal */
+export function IgnoringMessageHandler_as_OnionMessageHandler(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_IgnoringMessageHandler_as_OnionMessageHandler(this_arg);
+       return nativeResponseValue;
+}
+       // struct LDKCustomOnionMessageHandler IgnoringMessageHandler_as_CustomOnionMessageHandler(const struct LDKIgnoringMessageHandler *NONNULL_PTR this_arg);
+/* @internal */
+export function IgnoringMessageHandler_as_CustomOnionMessageHandler(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_IgnoringMessageHandler_as_CustomOnionMessageHandler(this_arg);
+       return nativeResponseValue;
 }
        // struct LDKCustomMessageReader IgnoringMessageHandler_as_CustomMessageReader(const struct LDKIgnoringMessageHandler *NONNULL_PTR this_arg);
 /* @internal */
@@ -25591,13 +29177,31 @@ export function MessageHandler_set_route_handler(this_ptr: bigint, val: bigint):
        const nativeResponseValue = wasm.TS_MessageHandler_set_route_handler(this_ptr, val);
        // debug statements here
 }
-       // MUST_USE_RES struct LDKMessageHandler MessageHandler_new(struct LDKChannelMessageHandler chan_handler_arg, struct LDKRoutingMessageHandler route_handler_arg);
+       // const struct LDKOnionMessageHandler *MessageHandler_get_onion_message_handler(const struct LDKMessageHandler *NONNULL_PTR this_ptr);
+/* @internal */
+export function MessageHandler_get_onion_message_handler(this_ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_MessageHandler_get_onion_message_handler(this_ptr);
+       return nativeResponseValue;
+}
+       // void MessageHandler_set_onion_message_handler(struct LDKMessageHandler *NONNULL_PTR this_ptr, struct LDKOnionMessageHandler val);
+/* @internal */
+export function MessageHandler_set_onion_message_handler(this_ptr: bigint, val: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_MessageHandler_set_onion_message_handler(this_ptr, val);
+       // debug statements here
+}
+       // MUST_USE_RES struct LDKMessageHandler MessageHandler_new(struct LDKChannelMessageHandler chan_handler_arg, struct LDKRoutingMessageHandler route_handler_arg, struct LDKOnionMessageHandler onion_message_handler_arg);
 /* @internal */
-export function MessageHandler_new(chan_handler_arg: bigint, route_handler_arg: bigint): bigint {
+export function MessageHandler_new(chan_handler_arg: bigint, route_handler_arg: bigint, onion_message_handler_arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_MessageHandler_new(chan_handler_arg, route_handler_arg);
+       const nativeResponseValue = wasm.TS_MessageHandler_new(chan_handler_arg, route_handler_arg, onion_message_handler_arg);
        return nativeResponseValue;
 }
        // uint64_t SocketDescriptor_clone_ptr(LDKSocketDescriptor *NONNULL_PTR arg);
@@ -25636,31 +29240,13 @@ export function PeerHandleError_free(this_obj: bigint): void {
        const nativeResponseValue = wasm.TS_PeerHandleError_free(this_obj);
        // debug statements here
 }
-       // bool PeerHandleError_get_no_connection_possible(const struct LDKPeerHandleError *NONNULL_PTR this_ptr);
-/* @internal */
-export function PeerHandleError_get_no_connection_possible(this_ptr: bigint): boolean {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_PeerHandleError_get_no_connection_possible(this_ptr);
-       return nativeResponseValue;
-}
-       // void PeerHandleError_set_no_connection_possible(struct LDKPeerHandleError *NONNULL_PTR this_ptr, bool val);
-/* @internal */
-export function PeerHandleError_set_no_connection_possible(this_ptr: bigint, val: boolean): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_PeerHandleError_set_no_connection_possible(this_ptr, val);
-       // debug statements here
-}
-       // MUST_USE_RES struct LDKPeerHandleError PeerHandleError_new(bool no_connection_possible_arg);
+       // MUST_USE_RES struct LDKPeerHandleError PeerHandleError_new(void);
 /* @internal */
-export function PeerHandleError_new(no_connection_possible_arg: boolean): bigint {
+export function PeerHandleError_new(): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_PeerHandleError_new(no_connection_possible_arg);
+       const nativeResponseValue = wasm.TS_PeerHandleError_new();
        return nativeResponseValue;
 }
        // uint64_t PeerHandleError_clone_ptr(LDKPeerHandleError *NONNULL_PTR arg);
@@ -25690,16 +29276,16 @@ export function PeerManager_free(this_obj: bigint): void {
        const nativeResponseValue = wasm.TS_PeerManager_free(this_obj);
        // debug statements here
 }
-       // MUST_USE_RES struct LDKPeerManager PeerManager_new(struct LDKMessageHandler message_handler, struct LDKSecretKey our_node_secret, const uint8_t (*ephemeral_random_data)[32], struct LDKLogger logger, struct LDKCustomMessageHandler custom_message_handler);
+       // MUST_USE_RES struct LDKPeerManager PeerManager_new(struct LDKMessageHandler message_handler, uint32_t current_time, const uint8_t (*ephemeral_random_data)[32], struct LDKLogger logger, struct LDKCustomMessageHandler custom_message_handler, struct LDKNodeSigner node_signer);
 /* @internal */
-export function PeerManager_new(message_handler: bigint, our_node_secret: number, ephemeral_random_data: number, logger: bigint, custom_message_handler: bigint): bigint {
+export function PeerManager_new(message_handler: bigint, current_time: number, ephemeral_random_data: number, logger: bigint, custom_message_handler: bigint, node_signer: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_PeerManager_new(message_handler, our_node_secret, ephemeral_random_data, logger, custom_message_handler);
+       const nativeResponseValue = wasm.TS_PeerManager_new(message_handler, current_time, ephemeral_random_data, logger, custom_message_handler, node_signer);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKCVec_PublicKeyZ PeerManager_get_peer_node_ids(const struct LDKPeerManager *NONNULL_PTR this_arg);
+       // MUST_USE_RES struct LDKCVec_C2Tuple_PublicKeyCOption_NetAddressZZZ PeerManager_get_peer_node_ids(const struct LDKPeerManager *NONNULL_PTR this_arg);
 /* @internal */
 export function PeerManager_get_peer_node_ids(this_arg: bigint): number {
        if(!isWasmInitialized) {
@@ -25762,13 +29348,13 @@ export function PeerManager_socket_disconnected(this_arg: bigint, descriptor: bi
        const nativeResponseValue = wasm.TS_PeerManager_socket_disconnected(this_arg, descriptor);
        // debug statements here
 }
-       // void PeerManager_disconnect_by_node_id(const struct LDKPeerManager *NONNULL_PTR this_arg, struct LDKPublicKey node_id, bool no_connection_possible);
+       // void PeerManager_disconnect_by_node_id(const struct LDKPeerManager *NONNULL_PTR this_arg, struct LDKPublicKey node_id);
 /* @internal */
-export function PeerManager_disconnect_by_node_id(this_arg: bigint, node_id: number, no_connection_possible: boolean): void {
+export function PeerManager_disconnect_by_node_id(this_arg: bigint, node_id: number): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_PeerManager_disconnect_by_node_id(this_arg, node_id, no_connection_possible);
+       const nativeResponseValue = wasm.TS_PeerManager_disconnect_by_node_id(this_arg, node_id);
        // debug statements here
 }
        // void PeerManager_disconnect_all_peers(const struct LDKPeerManager *NONNULL_PTR this_arg);
@@ -25788,6 +29374,15 @@ export function PeerManager_timer_tick_occurred(this_arg: bigint): void {
        }
        const nativeResponseValue = wasm.TS_PeerManager_timer_tick_occurred(this_arg);
        // debug statements here
+}
+       // void PeerManager_broadcast_node_announcement(const struct LDKPeerManager *NONNULL_PTR this_arg, struct LDKThreeBytes rgb, struct LDKThirtyTwoBytes alias, struct LDKCVec_NetAddressZ addresses);
+/* @internal */
+export function PeerManager_broadcast_node_announcement(this_arg: bigint, rgb: number, alias: number, addresses: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PeerManager_broadcast_node_announcement(this_arg, rgb, alias, addresses);
+       // debug statements here
 }
        // uint64_t htlc_success_tx_weight(bool opt_anchors);
 /* @internal */
@@ -25806,6 +29401,78 @@ export function htlc_timeout_tx_weight(opt_anchors: boolean): bigint {
        }
        const nativeResponseValue = wasm.TS_htlc_timeout_tx_weight(opt_anchors);
        return nativeResponseValue;
+}
+       // enum LDKHTLCClaim HTLCClaim_clone(const enum LDKHTLCClaim *NONNULL_PTR orig);
+/* @internal */
+export function HTLCClaim_clone(orig: bigint): HTLCClaim {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_HTLCClaim_clone(orig);
+       return nativeResponseValue;
+}
+       // enum LDKHTLCClaim HTLCClaim_offered_timeout(void);
+/* @internal */
+export function HTLCClaim_offered_timeout(): HTLCClaim {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_HTLCClaim_offered_timeout();
+       return nativeResponseValue;
+}
+       // enum LDKHTLCClaim HTLCClaim_offered_preimage(void);
+/* @internal */
+export function HTLCClaim_offered_preimage(): HTLCClaim {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_HTLCClaim_offered_preimage();
+       return nativeResponseValue;
+}
+       // enum LDKHTLCClaim HTLCClaim_accepted_timeout(void);
+/* @internal */
+export function HTLCClaim_accepted_timeout(): HTLCClaim {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_HTLCClaim_accepted_timeout();
+       return nativeResponseValue;
+}
+       // enum LDKHTLCClaim HTLCClaim_accepted_preimage(void);
+/* @internal */
+export function HTLCClaim_accepted_preimage(): HTLCClaim {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_HTLCClaim_accepted_preimage();
+       return nativeResponseValue;
+}
+       // enum LDKHTLCClaim HTLCClaim_revocation(void);
+/* @internal */
+export function HTLCClaim_revocation(): HTLCClaim {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_HTLCClaim_revocation();
+       return nativeResponseValue;
+}
+       // bool HTLCClaim_eq(const enum LDKHTLCClaim *NONNULL_PTR a, const enum LDKHTLCClaim *NONNULL_PTR b);
+/* @internal */
+export function HTLCClaim_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_HTLCClaim_eq(a, b);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKCOption_HTLCClaimZ HTLCClaim_from_witness(struct LDKWitness witness);
+/* @internal */
+export function HTLCClaim_from_witness(witness: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_HTLCClaim_from_witness(witness);
+       return nativeResponseValue;
 }
        // struct LDKThirtyTwoBytes build_commitment_secret(const uint8_t (*commitment_seed)[32], uint64_t idx);
 /* @internal */
@@ -25906,36 +29573,36 @@ export function CounterpartyCommitmentSecrets_read(ser: number): bigint {
        const nativeResponseValue = wasm.TS_CounterpartyCommitmentSecrets_read(ser);
        return nativeResponseValue;
 }
-       // struct LDKCResult_SecretKeyErrorZ derive_private_key(struct LDKPublicKey per_commitment_point, const uint8_t (*base_secret)[32]);
+       // struct LDKSecretKey derive_private_key(struct LDKPublicKey per_commitment_point, const uint8_t (*base_secret)[32]);
 /* @internal */
-export function derive_private_key(per_commitment_point: number, base_secret: number): bigint {
+export function derive_private_key(per_commitment_point: number, base_secret: number): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_derive_private_key(per_commitment_point, base_secret);
        return nativeResponseValue;
 }
-       // struct LDKCResult_PublicKeyErrorZ derive_public_key(struct LDKPublicKey per_commitment_point, struct LDKPublicKey base_point);
+       // struct LDKPublicKey derive_public_key(struct LDKPublicKey per_commitment_point, struct LDKPublicKey base_point);
 /* @internal */
-export function derive_public_key(per_commitment_point: number, base_point: number): bigint {
+export function derive_public_key(per_commitment_point: number, base_point: number): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_derive_public_key(per_commitment_point, base_point);
        return nativeResponseValue;
 }
-       // struct LDKCResult_SecretKeyErrorZ derive_private_revocation_key(const uint8_t (*per_commitment_secret)[32], const uint8_t (*countersignatory_revocation_base_secret)[32]);
+       // struct LDKSecretKey derive_private_revocation_key(const uint8_t (*per_commitment_secret)[32], const uint8_t (*countersignatory_revocation_base_secret)[32]);
 /* @internal */
-export function derive_private_revocation_key(per_commitment_secret: number, countersignatory_revocation_base_secret: number): bigint {
+export function derive_private_revocation_key(per_commitment_secret: number, countersignatory_revocation_base_secret: number): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_derive_private_revocation_key(per_commitment_secret, countersignatory_revocation_base_secret);
        return nativeResponseValue;
 }
-       // struct LDKCResult_PublicKeyErrorZ derive_public_revocation_key(struct LDKPublicKey per_commitment_point, struct LDKPublicKey countersignatory_revocation_base_point);
+       // struct LDKPublicKey derive_public_revocation_key(struct LDKPublicKey per_commitment_point, struct LDKPublicKey countersignatory_revocation_base_point);
 /* @internal */
-export function derive_public_revocation_key(per_commitment_point: number, countersignatory_revocation_base_point: number): bigint {
+export function derive_public_revocation_key(per_commitment_point: number, countersignatory_revocation_base_point: number): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
@@ -26049,6 +29716,15 @@ export function TxCreationKeys_new(per_commitment_point_arg: number, revocation_
        }
        const nativeResponseValue = wasm.TS_TxCreationKeys_new(per_commitment_point_arg, revocation_key_arg, broadcaster_htlc_key_arg, countersignatory_htlc_key_arg, broadcaster_delayed_payment_key_arg);
        return nativeResponseValue;
+}
+       // bool TxCreationKeys_eq(const struct LDKTxCreationKeys *NONNULL_PTR a, const struct LDKTxCreationKeys *NONNULL_PTR b);
+/* @internal */
+export function TxCreationKeys_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_TxCreationKeys_eq(a, b);
+       return nativeResponseValue;
 }
        // uint64_t TxCreationKeys_clone_ptr(LDKTxCreationKeys *NONNULL_PTR arg);
 /* @internal */
@@ -26211,6 +29887,15 @@ export function ChannelPublicKeys_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_ChannelPublicKeys_clone(orig);
        return nativeResponseValue;
+}
+       // bool ChannelPublicKeys_eq(const struct LDKChannelPublicKeys *NONNULL_PTR a, const struct LDKChannelPublicKeys *NONNULL_PTR b);
+/* @internal */
+export function ChannelPublicKeys_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelPublicKeys_eq(a, b);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z ChannelPublicKeys_write(const struct LDKChannelPublicKeys *NONNULL_PTR obj);
 /* @internal */
@@ -26230,7 +29915,7 @@ export function ChannelPublicKeys_read(ser: number): bigint {
        const nativeResponseValue = wasm.TS_ChannelPublicKeys_read(ser);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKCResult_TxCreationKeysErrorZ TxCreationKeys_derive_new(struct LDKPublicKey per_commitment_point, struct LDKPublicKey broadcaster_delayed_payment_base, struct LDKPublicKey broadcaster_htlc_base, struct LDKPublicKey countersignatory_revocation_base, struct LDKPublicKey countersignatory_htlc_base);
+       // MUST_USE_RES struct LDKTxCreationKeys TxCreationKeys_derive_new(struct LDKPublicKey per_commitment_point, struct LDKPublicKey broadcaster_delayed_payment_base, struct LDKPublicKey broadcaster_htlc_base, struct LDKPublicKey countersignatory_revocation_base, struct LDKPublicKey countersignatory_htlc_base);
 /* @internal */
 export function TxCreationKeys_derive_new(per_commitment_point: number, broadcaster_delayed_payment_base: number, broadcaster_htlc_base: number, countersignatory_revocation_base: number, countersignatory_htlc_base: number): bigint {
        if(!isWasmInitialized) {
@@ -26239,7 +29924,7 @@ export function TxCreationKeys_derive_new(per_commitment_point: number, broadcas
        const nativeResponseValue = wasm.TS_TxCreationKeys_derive_new(per_commitment_point, broadcaster_delayed_payment_base, broadcaster_htlc_base, countersignatory_revocation_base, countersignatory_htlc_base);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKCResult_TxCreationKeysErrorZ TxCreationKeys_from_channel_static_keys(struct LDKPublicKey per_commitment_point, const struct LDKChannelPublicKeys *NONNULL_PTR broadcaster_keys, const struct LDKChannelPublicKeys *NONNULL_PTR countersignatory_keys);
+       // MUST_USE_RES struct LDKTxCreationKeys TxCreationKeys_from_channel_static_keys(struct LDKPublicKey per_commitment_point, const struct LDKChannelPublicKeys *NONNULL_PTR broadcaster_keys, const struct LDKChannelPublicKeys *NONNULL_PTR countersignatory_keys);
 /* @internal */
 export function TxCreationKeys_from_channel_static_keys(per_commitment_point: number, broadcaster_keys: bigint, countersignatory_keys: bigint): bigint {
        if(!isWasmInitialized) {
@@ -26382,6 +30067,15 @@ export function HTLCOutputInCommitment_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_HTLCOutputInCommitment_clone(orig);
        return nativeResponseValue;
+}
+       // bool HTLCOutputInCommitment_eq(const struct LDKHTLCOutputInCommitment *NONNULL_PTR a, const struct LDKHTLCOutputInCommitment *NONNULL_PTR b);
+/* @internal */
+export function HTLCOutputInCommitment_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_HTLCOutputInCommitment_eq(a, b);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z HTLCOutputInCommitment_write(const struct LDKHTLCOutputInCommitment *NONNULL_PTR obj);
 /* @internal */
@@ -26419,13 +30113,31 @@ export function make_funding_redeemscript(broadcaster: number, countersignatory:
        const nativeResponseValue = wasm.TS_make_funding_redeemscript(broadcaster, countersignatory);
        return nativeResponseValue;
 }
-       // struct LDKTransaction build_htlc_transaction(const uint8_t (*commitment_txid)[32], uint32_t feerate_per_kw, uint16_t contest_delay, const struct LDKHTLCOutputInCommitment *NONNULL_PTR htlc, bool opt_anchors, struct LDKPublicKey broadcaster_delayed_payment_key, struct LDKPublicKey revocation_key);
+       // struct LDKTransaction build_htlc_transaction(const uint8_t (*commitment_txid)[32], uint32_t feerate_per_kw, uint16_t contest_delay, const struct LDKHTLCOutputInCommitment *NONNULL_PTR htlc, bool opt_anchors, bool use_non_zero_fee_anchors, struct LDKPublicKey broadcaster_delayed_payment_key, struct LDKPublicKey revocation_key);
 /* @internal */
-export function build_htlc_transaction(commitment_txid: number, feerate_per_kw: number, contest_delay: number, htlc: bigint, opt_anchors: boolean, broadcaster_delayed_payment_key: number, revocation_key: number): number {
+export function build_htlc_transaction(commitment_txid: number, feerate_per_kw: number, contest_delay: number, htlc: bigint, opt_anchors: boolean, use_non_zero_fee_anchors: boolean, broadcaster_delayed_payment_key: number, revocation_key: number): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_build_htlc_transaction(commitment_txid, feerate_per_kw, contest_delay, htlc, opt_anchors, broadcaster_delayed_payment_key, revocation_key);
+       const nativeResponseValue = wasm.TS_build_htlc_transaction(commitment_txid, feerate_per_kw, contest_delay, htlc, opt_anchors, use_non_zero_fee_anchors, broadcaster_delayed_payment_key, revocation_key);
+       return nativeResponseValue;
+}
+       // struct LDKWitness build_htlc_input_witness(struct LDKSignature local_sig, struct LDKSignature remote_sig, struct LDKThirtyTwoBytes preimage, struct LDKu8slice redeem_script, bool opt_anchors);
+/* @internal */
+export function build_htlc_input_witness(local_sig: number, remote_sig: number, preimage: number, redeem_script: number, opt_anchors: boolean): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_build_htlc_input_witness(local_sig, remote_sig, preimage, redeem_script, opt_anchors);
+       return nativeResponseValue;
+}
+       // struct LDKCVec_u8Z get_to_countersignatory_with_anchors_redeemscript(struct LDKPublicKey payment_point);
+/* @internal */
+export function get_to_countersignatory_with_anchors_redeemscript(payment_point: number): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_get_to_countersignatory_with_anchors_redeemscript(payment_point);
        return nativeResponseValue;
 }
        // struct LDKCVec_u8Z get_anchor_redeemscript(struct LDKPublicKey funding_pubkey);
@@ -26436,6 +30148,15 @@ export function get_anchor_redeemscript(funding_pubkey: number): number {
        }
        const nativeResponseValue = wasm.TS_get_anchor_redeemscript(funding_pubkey);
        return nativeResponseValue;
+}
+       // struct LDKWitness build_anchor_input_witness(struct LDKPublicKey funding_key, struct LDKSignature funding_sig);
+/* @internal */
+export function build_anchor_input_witness(funding_key: number, funding_sig: number): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_build_anchor_input_witness(funding_key, funding_sig);
+       return nativeResponseValue;
 }
        // void ChannelTransactionParameters_free(struct LDKChannelTransactionParameters this_obj);
 /* @internal */
@@ -26554,13 +30275,31 @@ export function ChannelTransactionParameters_set_opt_anchors(this_ptr: bigint, v
        const nativeResponseValue = wasm.TS_ChannelTransactionParameters_set_opt_anchors(this_ptr, val);
        // debug statements here
 }
-       // MUST_USE_RES struct LDKChannelTransactionParameters ChannelTransactionParameters_new(struct LDKChannelPublicKeys holder_pubkeys_arg, uint16_t holder_selected_contest_delay_arg, bool is_outbound_from_holder_arg, struct LDKCounterpartyChannelTransactionParameters counterparty_parameters_arg, struct LDKOutPoint funding_outpoint_arg, enum LDKCOption_NoneZ opt_anchors_arg);
+       // enum LDKCOption_NoneZ ChannelTransactionParameters_get_opt_non_zero_fee_anchors(const struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr);
 /* @internal */
-export function ChannelTransactionParameters_new(holder_pubkeys_arg: bigint, holder_selected_contest_delay_arg: number, is_outbound_from_holder_arg: boolean, counterparty_parameters_arg: bigint, funding_outpoint_arg: bigint, opt_anchors_arg: COption_NoneZ): bigint {
+export function ChannelTransactionParameters_get_opt_non_zero_fee_anchors(this_ptr: bigint): COption_NoneZ {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelTransactionParameters_new(holder_pubkeys_arg, holder_selected_contest_delay_arg, is_outbound_from_holder_arg, counterparty_parameters_arg, funding_outpoint_arg, opt_anchors_arg);
+       const nativeResponseValue = wasm.TS_ChannelTransactionParameters_get_opt_non_zero_fee_anchors(this_ptr);
+       return nativeResponseValue;
+}
+       // void ChannelTransactionParameters_set_opt_non_zero_fee_anchors(struct LDKChannelTransactionParameters *NONNULL_PTR this_ptr, enum LDKCOption_NoneZ val);
+/* @internal */
+export function ChannelTransactionParameters_set_opt_non_zero_fee_anchors(this_ptr: bigint, val: COption_NoneZ): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelTransactionParameters_set_opt_non_zero_fee_anchors(this_ptr, val);
+       // debug statements here
+}
+       // MUST_USE_RES struct LDKChannelTransactionParameters ChannelTransactionParameters_new(struct LDKChannelPublicKeys holder_pubkeys_arg, uint16_t holder_selected_contest_delay_arg, bool is_outbound_from_holder_arg, struct LDKCounterpartyChannelTransactionParameters counterparty_parameters_arg, struct LDKOutPoint funding_outpoint_arg, enum LDKCOption_NoneZ opt_anchors_arg, enum LDKCOption_NoneZ opt_non_zero_fee_anchors_arg);
+/* @internal */
+export function ChannelTransactionParameters_new(holder_pubkeys_arg: bigint, holder_selected_contest_delay_arg: number, is_outbound_from_holder_arg: boolean, counterparty_parameters_arg: bigint, funding_outpoint_arg: bigint, opt_anchors_arg: COption_NoneZ, opt_non_zero_fee_anchors_arg: COption_NoneZ): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelTransactionParameters_new(holder_pubkeys_arg, holder_selected_contest_delay_arg, is_outbound_from_holder_arg, counterparty_parameters_arg, funding_outpoint_arg, opt_anchors_arg, opt_non_zero_fee_anchors_arg);
        return nativeResponseValue;
 }
        // uint64_t ChannelTransactionParameters_clone_ptr(LDKChannelTransactionParameters *NONNULL_PTR arg);
@@ -27012,6 +30751,15 @@ export function ClosingTransaction_hash(o: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_ClosingTransaction_hash(o);
        return nativeResponseValue;
+}
+       // bool ClosingTransaction_eq(const struct LDKClosingTransaction *NONNULL_PTR a, const struct LDKClosingTransaction *NONNULL_PTR b);
+/* @internal */
+export function ClosingTransaction_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ClosingTransaction_eq(a, b);
+       return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKClosingTransaction ClosingTransaction_new(uint64_t to_holder_value_sat, uint64_t to_counterparty_value_sat, struct LDKCVec_u8Z to_holder_script, struct LDKCVec_u8Z to_counterparty_script, struct LDKOutPoint funding_outpoint);
 /* @internal */
@@ -27309,6 +31057,42 @@ export function InvoiceFeatures_eq(a: bigint, b: bigint): boolean {
        }
        const nativeResponseValue = wasm.TS_InvoiceFeatures_eq(a, b);
        return nativeResponseValue;
+}
+       // bool OfferFeatures_eq(const struct LDKOfferFeatures *NONNULL_PTR a, const struct LDKOfferFeatures *NONNULL_PTR b);
+/* @internal */
+export function OfferFeatures_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OfferFeatures_eq(a, b);
+       return nativeResponseValue;
+}
+       // bool InvoiceRequestFeatures_eq(const struct LDKInvoiceRequestFeatures *NONNULL_PTR a, const struct LDKInvoiceRequestFeatures *NONNULL_PTR b);
+/* @internal */
+export function InvoiceRequestFeatures_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InvoiceRequestFeatures_eq(a, b);
+       return nativeResponseValue;
+}
+       // bool Bolt12InvoiceFeatures_eq(const struct LDKBolt12InvoiceFeatures *NONNULL_PTR a, const struct LDKBolt12InvoiceFeatures *NONNULL_PTR b);
+/* @internal */
+export function Bolt12InvoiceFeatures_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Bolt12InvoiceFeatures_eq(a, b);
+       return nativeResponseValue;
+}
+       // bool BlindedHopFeatures_eq(const struct LDKBlindedHopFeatures *NONNULL_PTR a, const struct LDKBlindedHopFeatures *NONNULL_PTR b);
+/* @internal */
+export function BlindedHopFeatures_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedHopFeatures_eq(a, b);
+       return nativeResponseValue;
 }
        // bool ChannelTypeFeatures_eq(const struct LDKChannelTypeFeatures *NONNULL_PTR a, const struct LDKChannelTypeFeatures *NONNULL_PTR b);
 /* @internal */
@@ -27390,6 +31174,78 @@ export function InvoiceFeatures_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_InvoiceFeatures_clone(orig);
        return nativeResponseValue;
+}
+       // uint64_t OfferFeatures_clone_ptr(LDKOfferFeatures *NONNULL_PTR arg);
+/* @internal */
+export function OfferFeatures_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OfferFeatures_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKOfferFeatures OfferFeatures_clone(const struct LDKOfferFeatures *NONNULL_PTR orig);
+/* @internal */
+export function OfferFeatures_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OfferFeatures_clone(orig);
+       return nativeResponseValue;
+}
+       // uint64_t InvoiceRequestFeatures_clone_ptr(LDKInvoiceRequestFeatures *NONNULL_PTR arg);
+/* @internal */
+export function InvoiceRequestFeatures_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InvoiceRequestFeatures_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKInvoiceRequestFeatures InvoiceRequestFeatures_clone(const struct LDKInvoiceRequestFeatures *NONNULL_PTR orig);
+/* @internal */
+export function InvoiceRequestFeatures_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InvoiceRequestFeatures_clone(orig);
+       return nativeResponseValue;
+}
+       // uint64_t Bolt12InvoiceFeatures_clone_ptr(LDKBolt12InvoiceFeatures *NONNULL_PTR arg);
+/* @internal */
+export function Bolt12InvoiceFeatures_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Bolt12InvoiceFeatures_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKBolt12InvoiceFeatures Bolt12InvoiceFeatures_clone(const struct LDKBolt12InvoiceFeatures *NONNULL_PTR orig);
+/* @internal */
+export function Bolt12InvoiceFeatures_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Bolt12InvoiceFeatures_clone(orig);
+       return nativeResponseValue;
+}
+       // uint64_t BlindedHopFeatures_clone_ptr(LDKBlindedHopFeatures *NONNULL_PTR arg);
+/* @internal */
+export function BlindedHopFeatures_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedHopFeatures_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKBlindedHopFeatures BlindedHopFeatures_clone(const struct LDKBlindedHopFeatures *NONNULL_PTR orig);
+/* @internal */
+export function BlindedHopFeatures_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedHopFeatures_clone(orig);
+       return nativeResponseValue;
 }
        // uint64_t ChannelTypeFeatures_clone_ptr(LDKChannelTypeFeatures *NONNULL_PTR arg);
 /* @internal */
@@ -27444,6 +31300,42 @@ export function InvoiceFeatures_free(this_obj: bigint): void {
        }
        const nativeResponseValue = wasm.TS_InvoiceFeatures_free(this_obj);
        // debug statements here
+}
+       // void OfferFeatures_free(struct LDKOfferFeatures this_obj);
+/* @internal */
+export function OfferFeatures_free(this_obj: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OfferFeatures_free(this_obj);
+       // debug statements here
+}
+       // void InvoiceRequestFeatures_free(struct LDKInvoiceRequestFeatures this_obj);
+/* @internal */
+export function InvoiceRequestFeatures_free(this_obj: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InvoiceRequestFeatures_free(this_obj);
+       // debug statements here
+}
+       // void Bolt12InvoiceFeatures_free(struct LDKBolt12InvoiceFeatures this_obj);
+/* @internal */
+export function Bolt12InvoiceFeatures_free(this_obj: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Bolt12InvoiceFeatures_free(this_obj);
+       // debug statements here
+}
+       // void BlindedHopFeatures_free(struct LDKBlindedHopFeatures this_obj);
+/* @internal */
+export function BlindedHopFeatures_free(this_obj: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedHopFeatures_free(this_obj);
+       // debug statements here
 }
        // void ChannelTypeFeatures_free(struct LDKChannelTypeFeatures this_obj);
 /* @internal */
@@ -27462,15 +31354,6 @@ export function InitFeatures_empty(): bigint {
        }
        const nativeResponseValue = wasm.TS_InitFeatures_empty();
        return nativeResponseValue;
-}
-       // MUST_USE_RES struct LDKInitFeatures InitFeatures_known(void);
-/* @internal */
-export function InitFeatures_known(): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_InitFeatures_known();
-       return nativeResponseValue;
 }
        // MUST_USE_RES bool InitFeatures_requires_unknown_bits(const struct LDKInitFeatures *NONNULL_PTR this_arg);
 /* @internal */
@@ -27489,15 +31372,6 @@ export function NodeFeatures_empty(): bigint {
        }
        const nativeResponseValue = wasm.TS_NodeFeatures_empty();
        return nativeResponseValue;
-}
-       // MUST_USE_RES struct LDKNodeFeatures NodeFeatures_known(void);
-/* @internal */
-export function NodeFeatures_known(): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_NodeFeatures_known();
-       return nativeResponseValue;
 }
        // MUST_USE_RES bool NodeFeatures_requires_unknown_bits(const struct LDKNodeFeatures *NONNULL_PTR this_arg);
 /* @internal */
@@ -27516,15 +31390,6 @@ export function ChannelFeatures_empty(): bigint {
        }
        const nativeResponseValue = wasm.TS_ChannelFeatures_empty();
        return nativeResponseValue;
-}
-       // MUST_USE_RES struct LDKChannelFeatures ChannelFeatures_known(void);
-/* @internal */
-export function ChannelFeatures_known(): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_ChannelFeatures_known();
-       return nativeResponseValue;
 }
        // MUST_USE_RES bool ChannelFeatures_requires_unknown_bits(const struct LDKChannelFeatures *NONNULL_PTR this_arg);
 /* @internal */
@@ -27544,40 +31409,94 @@ export function InvoiceFeatures_empty(): bigint {
        const nativeResponseValue = wasm.TS_InvoiceFeatures_empty();
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKInvoiceFeatures InvoiceFeatures_known(void);
+       // MUST_USE_RES bool InvoiceFeatures_requires_unknown_bits(const struct LDKInvoiceFeatures *NONNULL_PTR this_arg);
 /* @internal */
-export function InvoiceFeatures_known(): bigint {
+export function InvoiceFeatures_requires_unknown_bits(this_arg: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_InvoiceFeatures_known();
+       const nativeResponseValue = wasm.TS_InvoiceFeatures_requires_unknown_bits(this_arg);
        return nativeResponseValue;
 }
-       // MUST_USE_RES bool InvoiceFeatures_requires_unknown_bits(const struct LDKInvoiceFeatures *NONNULL_PTR this_arg);
+       // MUST_USE_RES struct LDKOfferFeatures OfferFeatures_empty(void);
 /* @internal */
-export function InvoiceFeatures_requires_unknown_bits(this_arg: bigint): boolean {
+export function OfferFeatures_empty(): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_InvoiceFeatures_requires_unknown_bits(this_arg);
+       const nativeResponseValue = wasm.TS_OfferFeatures_empty();
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKChannelTypeFeatures ChannelTypeFeatures_empty(void);
+       // MUST_USE_RES bool OfferFeatures_requires_unknown_bits(const struct LDKOfferFeatures *NONNULL_PTR this_arg);
 /* @internal */
-export function ChannelTypeFeatures_empty(): bigint {
+export function OfferFeatures_requires_unknown_bits(this_arg: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelTypeFeatures_empty();
+       const nativeResponseValue = wasm.TS_OfferFeatures_requires_unknown_bits(this_arg);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKInvoiceRequestFeatures InvoiceRequestFeatures_empty(void);
+/* @internal */
+export function InvoiceRequestFeatures_empty(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InvoiceRequestFeatures_empty();
+       return nativeResponseValue;
+}
+       // MUST_USE_RES bool InvoiceRequestFeatures_requires_unknown_bits(const struct LDKInvoiceRequestFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function InvoiceRequestFeatures_requires_unknown_bits(this_arg: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InvoiceRequestFeatures_requires_unknown_bits(this_arg);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKChannelTypeFeatures ChannelTypeFeatures_known(void);
+       // MUST_USE_RES struct LDKBolt12InvoiceFeatures Bolt12InvoiceFeatures_empty(void);
 /* @internal */
-export function ChannelTypeFeatures_known(): bigint {
+export function Bolt12InvoiceFeatures_empty(): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelTypeFeatures_known();
+       const nativeResponseValue = wasm.TS_Bolt12InvoiceFeatures_empty();
+       return nativeResponseValue;
+}
+       // MUST_USE_RES bool Bolt12InvoiceFeatures_requires_unknown_bits(const struct LDKBolt12InvoiceFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function Bolt12InvoiceFeatures_requires_unknown_bits(this_arg: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Bolt12InvoiceFeatures_requires_unknown_bits(this_arg);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKBlindedHopFeatures BlindedHopFeatures_empty(void);
+/* @internal */
+export function BlindedHopFeatures_empty(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedHopFeatures_empty();
+       return nativeResponseValue;
+}
+       // MUST_USE_RES bool BlindedHopFeatures_requires_unknown_bits(const struct LDKBlindedHopFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function BlindedHopFeatures_requires_unknown_bits(this_arg: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedHopFeatures_requires_unknown_bits(this_arg);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKChannelTypeFeatures ChannelTypeFeatures_empty(void);
+/* @internal */
+export function ChannelTypeFeatures_empty(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelTypeFeatures_empty();
        return nativeResponseValue;
 }
        // MUST_USE_RES bool ChannelTypeFeatures_requires_unknown_bits(const struct LDKChannelTypeFeatures *NONNULL_PTR this_arg);
@@ -27660,6 +31579,24 @@ export function InvoiceFeatures_read(ser: number): bigint {
        }
        const nativeResponseValue = wasm.TS_InvoiceFeatures_read(ser);
        return nativeResponseValue;
+}
+       // struct LDKCVec_u8Z BlindedHopFeatures_write(const struct LDKBlindedHopFeatures *NONNULL_PTR obj);
+/* @internal */
+export function BlindedHopFeatures_write(obj: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedHopFeatures_write(obj);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_BlindedHopFeaturesDecodeErrorZ BlindedHopFeatures_read(struct LDKu8slice ser);
+/* @internal */
+export function BlindedHopFeatures_read(ser: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedHopFeatures_read(ser);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z ChannelTypeFeatures_write(const struct LDKChannelTypeFeatures *NONNULL_PTR obj);
 /* @internal */
@@ -28326,6 +32263,33 @@ export function InvoiceFeatures_supports_basic_mpp(this_arg: bigint): boolean {
        }
        const nativeResponseValue = wasm.TS_InvoiceFeatures_supports_basic_mpp(this_arg);
        return nativeResponseValue;
+}
+       // void Bolt12InvoiceFeatures_set_basic_mpp_optional(struct LDKBolt12InvoiceFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function Bolt12InvoiceFeatures_set_basic_mpp_optional(this_arg: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Bolt12InvoiceFeatures_set_basic_mpp_optional(this_arg);
+       // debug statements here
+}
+       // void Bolt12InvoiceFeatures_set_basic_mpp_required(struct LDKBolt12InvoiceFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function Bolt12InvoiceFeatures_set_basic_mpp_required(this_arg: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Bolt12InvoiceFeatures_set_basic_mpp_required(this_arg);
+       // debug statements here
+}
+       // MUST_USE_RES bool Bolt12InvoiceFeatures_supports_basic_mpp(const struct LDKBolt12InvoiceFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function Bolt12InvoiceFeatures_supports_basic_mpp(this_arg: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Bolt12InvoiceFeatures_supports_basic_mpp(this_arg);
+       return nativeResponseValue;
 }
        // MUST_USE_RES bool InitFeatures_requires_basic_mpp(const struct LDKInitFeatures *NONNULL_PTR this_arg);
 /* @internal */
@@ -28353,6 +32317,15 @@ export function InvoiceFeatures_requires_basic_mpp(this_arg: bigint): boolean {
        }
        const nativeResponseValue = wasm.TS_InvoiceFeatures_requires_basic_mpp(this_arg);
        return nativeResponseValue;
+}
+       // MUST_USE_RES bool Bolt12InvoiceFeatures_requires_basic_mpp(const struct LDKBolt12InvoiceFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function Bolt12InvoiceFeatures_requires_basic_mpp(this_arg: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Bolt12InvoiceFeatures_requires_basic_mpp(this_arg);
+       return nativeResponseValue;
 }
        // void InitFeatures_set_wumbo_optional(struct LDKInitFeatures *NONNULL_PTR this_arg);
 /* @internal */
@@ -28425,6 +32398,114 @@ export function NodeFeatures_requires_wumbo(this_arg: bigint): boolean {
        }
        const nativeResponseValue = wasm.TS_NodeFeatures_requires_wumbo(this_arg);
        return nativeResponseValue;
+}
+       // void InitFeatures_set_anchors_zero_fee_htlc_tx_optional(struct LDKInitFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function InitFeatures_set_anchors_zero_fee_htlc_tx_optional(this_arg: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InitFeatures_set_anchors_zero_fee_htlc_tx_optional(this_arg);
+       // debug statements here
+}
+       // void InitFeatures_set_anchors_zero_fee_htlc_tx_required(struct LDKInitFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function InitFeatures_set_anchors_zero_fee_htlc_tx_required(this_arg: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InitFeatures_set_anchors_zero_fee_htlc_tx_required(this_arg);
+       // debug statements here
+}
+       // MUST_USE_RES bool InitFeatures_supports_anchors_zero_fee_htlc_tx(const struct LDKInitFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function InitFeatures_supports_anchors_zero_fee_htlc_tx(this_arg: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InitFeatures_supports_anchors_zero_fee_htlc_tx(this_arg);
+       return nativeResponseValue;
+}
+       // void NodeFeatures_set_anchors_zero_fee_htlc_tx_optional(struct LDKNodeFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function NodeFeatures_set_anchors_zero_fee_htlc_tx_optional(this_arg: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_NodeFeatures_set_anchors_zero_fee_htlc_tx_optional(this_arg);
+       // debug statements here
+}
+       // void NodeFeatures_set_anchors_zero_fee_htlc_tx_required(struct LDKNodeFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function NodeFeatures_set_anchors_zero_fee_htlc_tx_required(this_arg: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_NodeFeatures_set_anchors_zero_fee_htlc_tx_required(this_arg);
+       // debug statements here
+}
+       // MUST_USE_RES bool NodeFeatures_supports_anchors_zero_fee_htlc_tx(const struct LDKNodeFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function NodeFeatures_supports_anchors_zero_fee_htlc_tx(this_arg: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_NodeFeatures_supports_anchors_zero_fee_htlc_tx(this_arg);
+       return nativeResponseValue;
+}
+       // void ChannelTypeFeatures_set_anchors_zero_fee_htlc_tx_optional(struct LDKChannelTypeFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function ChannelTypeFeatures_set_anchors_zero_fee_htlc_tx_optional(this_arg: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelTypeFeatures_set_anchors_zero_fee_htlc_tx_optional(this_arg);
+       // debug statements here
+}
+       // void ChannelTypeFeatures_set_anchors_zero_fee_htlc_tx_required(struct LDKChannelTypeFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function ChannelTypeFeatures_set_anchors_zero_fee_htlc_tx_required(this_arg: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelTypeFeatures_set_anchors_zero_fee_htlc_tx_required(this_arg);
+       // debug statements here
+}
+       // MUST_USE_RES bool ChannelTypeFeatures_supports_anchors_zero_fee_htlc_tx(const struct LDKChannelTypeFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function ChannelTypeFeatures_supports_anchors_zero_fee_htlc_tx(this_arg: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelTypeFeatures_supports_anchors_zero_fee_htlc_tx(this_arg);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES bool InitFeatures_requires_anchors_zero_fee_htlc_tx(const struct LDKInitFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function InitFeatures_requires_anchors_zero_fee_htlc_tx(this_arg: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InitFeatures_requires_anchors_zero_fee_htlc_tx(this_arg);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES bool NodeFeatures_requires_anchors_zero_fee_htlc_tx(const struct LDKNodeFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function NodeFeatures_requires_anchors_zero_fee_htlc_tx(this_arg: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_NodeFeatures_requires_anchors_zero_fee_htlc_tx(this_arg);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES bool ChannelTypeFeatures_requires_anchors_zero_fee_htlc_tx(const struct LDKChannelTypeFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function ChannelTypeFeatures_requires_anchors_zero_fee_htlc_tx(this_arg: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelTypeFeatures_requires_anchors_zero_fee_htlc_tx(this_arg);
+       return nativeResponseValue;
 }
        // void InitFeatures_set_shutdown_any_segwit_optional(struct LDKInitFeatures *NONNULL_PTR this_arg);
 /* @internal */
@@ -28497,6 +32578,78 @@ export function NodeFeatures_requires_shutdown_anysegwit(this_arg: bigint): bool
        }
        const nativeResponseValue = wasm.TS_NodeFeatures_requires_shutdown_anysegwit(this_arg);
        return nativeResponseValue;
+}
+       // void InitFeatures_set_onion_messages_optional(struct LDKInitFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function InitFeatures_set_onion_messages_optional(this_arg: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InitFeatures_set_onion_messages_optional(this_arg);
+       // debug statements here
+}
+       // void InitFeatures_set_onion_messages_required(struct LDKInitFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function InitFeatures_set_onion_messages_required(this_arg: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InitFeatures_set_onion_messages_required(this_arg);
+       // debug statements here
+}
+       // MUST_USE_RES bool InitFeatures_supports_onion_messages(const struct LDKInitFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function InitFeatures_supports_onion_messages(this_arg: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InitFeatures_supports_onion_messages(this_arg);
+       return nativeResponseValue;
+}
+       // void NodeFeatures_set_onion_messages_optional(struct LDKNodeFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function NodeFeatures_set_onion_messages_optional(this_arg: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_NodeFeatures_set_onion_messages_optional(this_arg);
+       // debug statements here
+}
+       // void NodeFeatures_set_onion_messages_required(struct LDKNodeFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function NodeFeatures_set_onion_messages_required(this_arg: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_NodeFeatures_set_onion_messages_required(this_arg);
+       // debug statements here
+}
+       // MUST_USE_RES bool NodeFeatures_supports_onion_messages(const struct LDKNodeFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function NodeFeatures_supports_onion_messages(this_arg: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_NodeFeatures_supports_onion_messages(this_arg);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES bool InitFeatures_requires_onion_messages(const struct LDKInitFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function InitFeatures_requires_onion_messages(this_arg: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InitFeatures_requires_onion_messages(this_arg);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES bool NodeFeatures_requires_onion_messages(const struct LDKNodeFeatures *NONNULL_PTR this_arg);
+/* @internal */
+export function NodeFeatures_requires_onion_messages(this_arg: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_NodeFeatures_requires_onion_messages(this_arg);
+       return nativeResponseValue;
 }
        // void InitFeatures_set_channel_type_optional(struct LDKInitFeatures *NONNULL_PTR this_arg);
 /* @internal */
@@ -28848,6 +33001,15 @@ export function ShutdownScript_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_ShutdownScript_clone(orig);
        return nativeResponseValue;
+}
+       // bool ShutdownScript_eq(const struct LDKShutdownScript *NONNULL_PTR a, const struct LDKShutdownScript *NONNULL_PTR b);
+/* @internal */
+export function ShutdownScript_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ShutdownScript_eq(a, b);
+       return nativeResponseValue;
 }
        // void InvalidShutdownScript_free(struct LDKInvalidShutdownScript this_obj);
 /* @internal */
@@ -28974,6 +33136,168 @@ export function ShutdownScript_is_compatible(this_arg: bigint, features: bigint)
        }
        const nativeResponseValue = wasm.TS_ShutdownScript_is_compatible(this_arg, features);
        return nativeResponseValue;
+}
+       // void Retry_free(struct LDKRetry this_ptr);
+/* @internal */
+export function Retry_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Retry_free(this_ptr);
+       // debug statements here
+}
+       // uint64_t Retry_clone_ptr(LDKRetry *NONNULL_PTR arg);
+/* @internal */
+export function Retry_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Retry_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKRetry Retry_clone(const struct LDKRetry *NONNULL_PTR orig);
+/* @internal */
+export function Retry_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Retry_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKRetry Retry_attempts(uintptr_t a);
+/* @internal */
+export function Retry_attempts(a: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Retry_attempts(a);
+       return nativeResponseValue;
+}
+       // bool Retry_eq(const struct LDKRetry *NONNULL_PTR a, const struct LDKRetry *NONNULL_PTR b);
+/* @internal */
+export function Retry_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Retry_eq(a, b);
+       return nativeResponseValue;
+}
+       // uint64_t Retry_hash(const struct LDKRetry *NONNULL_PTR o);
+/* @internal */
+export function Retry_hash(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Retry_hash(o);
+       return nativeResponseValue;
+}
+       // enum LDKRetryableSendFailure RetryableSendFailure_clone(const enum LDKRetryableSendFailure *NONNULL_PTR orig);
+/* @internal */
+export function RetryableSendFailure_clone(orig: bigint): RetryableSendFailure {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_RetryableSendFailure_clone(orig);
+       return nativeResponseValue;
+}
+       // enum LDKRetryableSendFailure RetryableSendFailure_payment_expired(void);
+/* @internal */
+export function RetryableSendFailure_payment_expired(): RetryableSendFailure {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_RetryableSendFailure_payment_expired();
+       return nativeResponseValue;
+}
+       // enum LDKRetryableSendFailure RetryableSendFailure_route_not_found(void);
+/* @internal */
+export function RetryableSendFailure_route_not_found(): RetryableSendFailure {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_RetryableSendFailure_route_not_found();
+       return nativeResponseValue;
+}
+       // enum LDKRetryableSendFailure RetryableSendFailure_duplicate_payment(void);
+/* @internal */
+export function RetryableSendFailure_duplicate_payment(): RetryableSendFailure {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_RetryableSendFailure_duplicate_payment();
+       return nativeResponseValue;
+}
+       // void PaymentSendFailure_free(struct LDKPaymentSendFailure this_ptr);
+/* @internal */
+export function PaymentSendFailure_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PaymentSendFailure_free(this_ptr);
+       // debug statements here
+}
+       // uint64_t PaymentSendFailure_clone_ptr(LDKPaymentSendFailure *NONNULL_PTR arg);
+/* @internal */
+export function PaymentSendFailure_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PaymentSendFailure_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKPaymentSendFailure PaymentSendFailure_clone(const struct LDKPaymentSendFailure *NONNULL_PTR orig);
+/* @internal */
+export function PaymentSendFailure_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PaymentSendFailure_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKPaymentSendFailure PaymentSendFailure_parameter_error(struct LDKAPIError a);
+/* @internal */
+export function PaymentSendFailure_parameter_error(a: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PaymentSendFailure_parameter_error(a);
+       return nativeResponseValue;
+}
+       // struct LDKPaymentSendFailure PaymentSendFailure_path_parameter_error(struct LDKCVec_CResult_NoneAPIErrorZZ a);
+/* @internal */
+export function PaymentSendFailure_path_parameter_error(a: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PaymentSendFailure_path_parameter_error(a);
+       return nativeResponseValue;
+}
+       // struct LDKPaymentSendFailure PaymentSendFailure_all_failed_resend_safe(struct LDKCVec_APIErrorZ a);
+/* @internal */
+export function PaymentSendFailure_all_failed_resend_safe(a: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PaymentSendFailure_all_failed_resend_safe(a);
+       return nativeResponseValue;
+}
+       // struct LDKPaymentSendFailure PaymentSendFailure_duplicate_payment(void);
+/* @internal */
+export function PaymentSendFailure_duplicate_payment(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PaymentSendFailure_duplicate_payment();
+       return nativeResponseValue;
+}
+       // struct LDKPaymentSendFailure PaymentSendFailure_partial_failure(struct LDKCVec_CResult_NoneAPIErrorZZ results, struct LDKRouteParameters failed_paths_retry, struct LDKThirtyTwoBytes payment_id);
+/* @internal */
+export function PaymentSendFailure_partial_failure(results: number, failed_paths_retry: bigint, payment_id: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PaymentSendFailure_partial_failure(results, failed_paths_retry, payment_id);
+       return nativeResponseValue;
 }
        // void CustomMessageReader_free(struct LDKCustomMessageReader this_ptr);
 /* @internal */
@@ -29010,6 +33334,141 @@ export function Type_free(this_ptr: bigint): void {
        }
        const nativeResponseValue = wasm.TS_Type_free(this_ptr);
        // debug statements here
+}
+       // enum LDKUtxoLookupError UtxoLookupError_clone(const enum LDKUtxoLookupError *NONNULL_PTR orig);
+/* @internal */
+export function UtxoLookupError_clone(orig: bigint): UtxoLookupError {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UtxoLookupError_clone(orig);
+       return nativeResponseValue;
+}
+       // enum LDKUtxoLookupError UtxoLookupError_unknown_chain(void);
+/* @internal */
+export function UtxoLookupError_unknown_chain(): UtxoLookupError {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UtxoLookupError_unknown_chain();
+       return nativeResponseValue;
+}
+       // enum LDKUtxoLookupError UtxoLookupError_unknown_tx(void);
+/* @internal */
+export function UtxoLookupError_unknown_tx(): UtxoLookupError {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UtxoLookupError_unknown_tx();
+       return nativeResponseValue;
+}
+       // void UtxoResult_free(struct LDKUtxoResult this_ptr);
+/* @internal */
+export function UtxoResult_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UtxoResult_free(this_ptr);
+       // debug statements here
+}
+       // uint64_t UtxoResult_clone_ptr(LDKUtxoResult *NONNULL_PTR arg);
+/* @internal */
+export function UtxoResult_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UtxoResult_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKUtxoResult UtxoResult_clone(const struct LDKUtxoResult *NONNULL_PTR orig);
+/* @internal */
+export function UtxoResult_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UtxoResult_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKUtxoResult UtxoResult_sync(struct LDKCResult_TxOutUtxoLookupErrorZ a);
+/* @internal */
+export function UtxoResult_sync(a: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UtxoResult_sync(a);
+       return nativeResponseValue;
+}
+       // struct LDKUtxoResult UtxoResult_async(struct LDKUtxoFuture a);
+/* @internal */
+export function UtxoResult_async(a: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UtxoResult_async(a);
+       return nativeResponseValue;
+}
+       // void UtxoLookup_free(struct LDKUtxoLookup this_ptr);
+/* @internal */
+export function UtxoLookup_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UtxoLookup_free(this_ptr);
+       // debug statements here
+}
+       // void UtxoFuture_free(struct LDKUtxoFuture this_obj);
+/* @internal */
+export function UtxoFuture_free(this_obj: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UtxoFuture_free(this_obj);
+       // debug statements here
+}
+       // uint64_t UtxoFuture_clone_ptr(LDKUtxoFuture *NONNULL_PTR arg);
+/* @internal */
+export function UtxoFuture_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UtxoFuture_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKUtxoFuture UtxoFuture_clone(const struct LDKUtxoFuture *NONNULL_PTR orig);
+/* @internal */
+export function UtxoFuture_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UtxoFuture_clone(orig);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKUtxoFuture UtxoFuture_new(void);
+/* @internal */
+export function UtxoFuture_new(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UtxoFuture_new();
+       return nativeResponseValue;
+}
+       // void UtxoFuture_resolve_without_forwarding(const struct LDKUtxoFuture *NONNULL_PTR this_arg, const struct LDKNetworkGraph *NONNULL_PTR graph, struct LDKCResult_TxOutUtxoLookupErrorZ result);
+/* @internal */
+export function UtxoFuture_resolve_without_forwarding(this_arg: bigint, graph: bigint, result: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UtxoFuture_resolve_without_forwarding(this_arg, graph, result);
+       // debug statements here
+}
+       // void UtxoFuture_resolve(const struct LDKUtxoFuture *NONNULL_PTR this_arg, const struct LDKNetworkGraph *NONNULL_PTR graph, const struct LDKP2PGossipSync *NONNULL_PTR gossip, struct LDKCResult_TxOutUtxoLookupErrorZ result);
+/* @internal */
+export function UtxoFuture_resolve(this_arg: bigint, graph: bigint, gossip: bigint, result: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_UtxoFuture_resolve(this_arg, graph, gossip, result);
+       // debug statements here
 }
        // void NodeId_free(struct LDKNodeId this_obj);
 /* @internal */
@@ -29154,6 +33613,15 @@ export function NetworkUpdate_node_failure(node_id: number, is_permanent: boolea
        }
        const nativeResponseValue = wasm.TS_NetworkUpdate_node_failure(node_id, is_permanent);
        return nativeResponseValue;
+}
+       // bool NetworkUpdate_eq(const struct LDKNetworkUpdate *NONNULL_PTR a, const struct LDKNetworkUpdate *NONNULL_PTR b);
+/* @internal */
+export function NetworkUpdate_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_NetworkUpdate_eq(a, b);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z NetworkUpdate_write(const struct LDKNetworkUpdate *NONNULL_PTR obj);
 /* @internal */
@@ -29182,32 +33650,32 @@ export function P2PGossipSync_free(this_obj: bigint): void {
        const nativeResponseValue = wasm.TS_P2PGossipSync_free(this_obj);
        // debug statements here
 }
-       // MUST_USE_RES struct LDKP2PGossipSync P2PGossipSync_new(const struct LDKNetworkGraph *NONNULL_PTR network_graph, struct LDKCOption_AccessZ chain_access, struct LDKLogger logger);
+       // MUST_USE_RES struct LDKP2PGossipSync P2PGossipSync_new(const struct LDKNetworkGraph *NONNULL_PTR network_graph, struct LDKCOption_UtxoLookupZ utxo_lookup, struct LDKLogger logger);
 /* @internal */
-export function P2PGossipSync_new(network_graph: bigint, chain_access: bigint, logger: bigint): bigint {
+export function P2PGossipSync_new(network_graph: bigint, utxo_lookup: bigint, logger: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_P2PGossipSync_new(network_graph, chain_access, logger);
+       const nativeResponseValue = wasm.TS_P2PGossipSync_new(network_graph, utxo_lookup, logger);
        return nativeResponseValue;
 }
-       // void P2PGossipSync_add_chain_access(struct LDKP2PGossipSync *NONNULL_PTR this_arg, struct LDKCOption_AccessZ chain_access);
+       // void P2PGossipSync_add_utxo_lookup(struct LDKP2PGossipSync *NONNULL_PTR this_arg, struct LDKCOption_UtxoLookupZ utxo_lookup);
 /* @internal */
-export function P2PGossipSync_add_chain_access(this_arg: bigint, chain_access: bigint): void {
+export function P2PGossipSync_add_utxo_lookup(this_arg: bigint, utxo_lookup: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_P2PGossipSync_add_chain_access(this_arg, chain_access);
+       const nativeResponseValue = wasm.TS_P2PGossipSync_add_utxo_lookup(this_arg, utxo_lookup);
        // debug statements here
 }
-       // struct LDKEventHandler NetworkGraph_as_EventHandler(const struct LDKNetworkGraph *NONNULL_PTR this_arg);
+       // void NetworkGraph_handle_network_update(const struct LDKNetworkGraph *NONNULL_PTR this_arg, const struct LDKNetworkUpdate *NONNULL_PTR network_update);
 /* @internal */
-export function NetworkGraph_as_EventHandler(this_arg: bigint): bigint {
+export function NetworkGraph_handle_network_update(this_arg: bigint, network_update: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_NetworkGraph_as_EventHandler(this_arg);
-       return nativeResponseValue;
+       const nativeResponseValue = wasm.TS_NetworkGraph_handle_network_update(this_arg, network_update);
+       // debug statements here
 }
        // struct LDKRoutingMessageHandler P2PGossipSync_as_RoutingMessageHandler(const struct LDKP2PGossipSync *NONNULL_PTR this_arg);
 /* @internal */
@@ -29388,6 +33856,15 @@ export function ChannelUpdateInfo_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_ChannelUpdateInfo_clone(orig);
        return nativeResponseValue;
+}
+       // bool ChannelUpdateInfo_eq(const struct LDKChannelUpdateInfo *NONNULL_PTR a, const struct LDKChannelUpdateInfo *NONNULL_PTR b);
+/* @internal */
+export function ChannelUpdateInfo_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelUpdateInfo_eq(a, b);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z ChannelUpdateInfo_write(const struct LDKChannelUpdateInfo *NONNULL_PTR obj);
 /* @internal */
@@ -29559,6 +34036,15 @@ export function ChannelInfo_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_ChannelInfo_clone(orig);
        return nativeResponseValue;
+}
+       // bool ChannelInfo_eq(const struct LDKChannelInfo *NONNULL_PTR a, const struct LDKChannelInfo *NONNULL_PTR b);
+/* @internal */
+export function ChannelInfo_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ChannelInfo_eq(a, b);
+       return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKChannelUpdateInfo ChannelInfo_get_directional_info(const struct LDKChannelInfo *NONNULL_PTR this_arg, uint8_t channel_flags);
 /* @internal */
@@ -29622,15 +34108,6 @@ export function DirectedChannelInfo_channel(this_arg: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_DirectedChannelInfo_channel(this_arg);
        return nativeResponseValue;
-}
-       // MUST_USE_RES struct LDKChannelUpdateInfo DirectedChannelInfo_direction(const struct LDKDirectedChannelInfo *NONNULL_PTR this_arg);
-/* @internal */
-export function DirectedChannelInfo_direction(this_arg: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_DirectedChannelInfo_direction(this_arg);
-       return nativeResponseValue;
 }
        // MUST_USE_RES uint64_t DirectedChannelInfo_htlc_maximum_msat(const struct LDKDirectedChannelInfo *NONNULL_PTR this_arg);
 /* @internal */
@@ -29695,7 +34172,7 @@ export function EffectiveCapacity_maximum_htlc(amount_msat: bigint): bigint {
        const nativeResponseValue = wasm.TS_EffectiveCapacity_maximum_htlc(amount_msat);
        return nativeResponseValue;
 }
-       // struct LDKEffectiveCapacity EffectiveCapacity_total(uint64_t capacity_msat, struct LDKCOption_u64Z htlc_maximum_msat);
+       // struct LDKEffectiveCapacity EffectiveCapacity_total(uint64_t capacity_msat, uint64_t htlc_maximum_msat);
 /* @internal */
 export function EffectiveCapacity_total(capacity_msat: bigint, htlc_maximum_msat: bigint): bigint {
        if(!isWasmInitialized) {
@@ -29982,6 +34459,15 @@ export function NodeAnnouncementInfo_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_clone(orig);
        return nativeResponseValue;
+}
+       // bool NodeAnnouncementInfo_eq(const struct LDKNodeAnnouncementInfo *NONNULL_PTR a, const struct LDKNodeAnnouncementInfo *NONNULL_PTR b);
+/* @internal */
+export function NodeAnnouncementInfo_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_NodeAnnouncementInfo_eq(a, b);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z NodeAnnouncementInfo_write(const struct LDKNodeAnnouncementInfo *NONNULL_PTR obj);
 /* @internal */
@@ -30054,6 +34540,15 @@ export function NodeAlias_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_NodeAlias_clone(orig);
        return nativeResponseValue;
+}
+       // bool NodeAlias_eq(const struct LDKNodeAlias *NONNULL_PTR a, const struct LDKNodeAlias *NONNULL_PTR b);
+/* @internal */
+export function NodeAlias_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_NodeAlias_eq(a, b);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z NodeAlias_write(const struct LDKNodeAlias *NONNULL_PTR obj);
 /* @internal */
@@ -30099,24 +34594,6 @@ export function NodeInfo_set_channels(this_ptr: bigint, val: number): void {
        }
        const nativeResponseValue = wasm.TS_NodeInfo_set_channels(this_ptr, val);
        // debug statements here
-}
-       // struct LDKRoutingFees NodeInfo_get_lowest_inbound_channel_fees(const struct LDKNodeInfo *NONNULL_PTR this_ptr);
-/* @internal */
-export function NodeInfo_get_lowest_inbound_channel_fees(this_ptr: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_NodeInfo_get_lowest_inbound_channel_fees(this_ptr);
-       return nativeResponseValue;
-}
-       // void NodeInfo_set_lowest_inbound_channel_fees(struct LDKNodeInfo *NONNULL_PTR this_ptr, struct LDKRoutingFees val);
-/* @internal */
-export function NodeInfo_set_lowest_inbound_channel_fees(this_ptr: bigint, val: bigint): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_NodeInfo_set_lowest_inbound_channel_fees(this_ptr, val);
-       // debug statements here
 }
        // struct LDKNodeAnnouncementInfo NodeInfo_get_announcement_info(const struct LDKNodeInfo *NONNULL_PTR this_ptr);
 /* @internal */
@@ -30136,13 +34613,13 @@ export function NodeInfo_set_announcement_info(this_ptr: bigint, val: bigint): v
        const nativeResponseValue = wasm.TS_NodeInfo_set_announcement_info(this_ptr, val);
        // debug statements here
 }
-       // MUST_USE_RES struct LDKNodeInfo NodeInfo_new(struct LDKCVec_u64Z channels_arg, struct LDKRoutingFees lowest_inbound_channel_fees_arg, struct LDKNodeAnnouncementInfo announcement_info_arg);
+       // MUST_USE_RES struct LDKNodeInfo NodeInfo_new(struct LDKCVec_u64Z channels_arg, struct LDKNodeAnnouncementInfo announcement_info_arg);
 /* @internal */
-export function NodeInfo_new(channels_arg: number, lowest_inbound_channel_fees_arg: bigint, announcement_info_arg: bigint): bigint {
+export function NodeInfo_new(channels_arg: number, announcement_info_arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_NodeInfo_new(channels_arg, lowest_inbound_channel_fees_arg, announcement_info_arg);
+       const nativeResponseValue = wasm.TS_NodeInfo_new(channels_arg, announcement_info_arg);
        return nativeResponseValue;
 }
        // uint64_t NodeInfo_clone_ptr(LDKNodeInfo *NONNULL_PTR arg);
@@ -30162,6 +34639,15 @@ export function NodeInfo_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_NodeInfo_clone(orig);
        return nativeResponseValue;
+}
+       // bool NodeInfo_eq(const struct LDKNodeInfo *NONNULL_PTR a, const struct LDKNodeInfo *NONNULL_PTR b);
+/* @internal */
+export function NodeInfo_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_NodeInfo_eq(a, b);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z NodeInfo_write(const struct LDKNodeInfo *NONNULL_PTR obj);
 /* @internal */
@@ -30199,13 +34685,13 @@ export function NetworkGraph_read(ser: number, arg: bigint): bigint {
        const nativeResponseValue = wasm.TS_NetworkGraph_read(ser, arg);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKNetworkGraph NetworkGraph_new(struct LDKThirtyTwoBytes genesis_hash, struct LDKLogger logger);
+       // MUST_USE_RES struct LDKNetworkGraph NetworkGraph_new(enum LDKNetwork network, struct LDKLogger logger);
 /* @internal */
-export function NetworkGraph_new(genesis_hash: number, logger: bigint): bigint {
+export function NetworkGraph_new(network: Network, logger: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_NetworkGraph_new(genesis_hash, logger);
+       const nativeResponseValue = wasm.TS_NetworkGraph_new(network, logger);
        return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKReadOnlyNetworkGraph NetworkGraph_read_only(const struct LDKNetworkGraph *NONNULL_PTR this_arg);
@@ -30253,22 +34739,22 @@ export function NetworkGraph_update_node_from_unsigned_announcement(this_arg: bi
        const nativeResponseValue = wasm.TS_NetworkGraph_update_node_from_unsigned_announcement(this_arg, msg);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKCResult_NoneLightningErrorZ NetworkGraph_update_channel_from_announcement(const struct LDKNetworkGraph *NONNULL_PTR this_arg, const struct LDKChannelAnnouncement *NONNULL_PTR msg, struct LDKCOption_AccessZ chain_access);
+       // MUST_USE_RES struct LDKCResult_NoneLightningErrorZ NetworkGraph_update_channel_from_announcement(const struct LDKNetworkGraph *NONNULL_PTR this_arg, const struct LDKChannelAnnouncement *NONNULL_PTR msg, struct LDKCOption_UtxoLookupZ utxo_lookup);
 /* @internal */
-export function NetworkGraph_update_channel_from_announcement(this_arg: bigint, msg: bigint, chain_access: bigint): bigint {
+export function NetworkGraph_update_channel_from_announcement(this_arg: bigint, msg: bigint, utxo_lookup: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_NetworkGraph_update_channel_from_announcement(this_arg, msg, chain_access);
+       const nativeResponseValue = wasm.TS_NetworkGraph_update_channel_from_announcement(this_arg, msg, utxo_lookup);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKCResult_NoneLightningErrorZ NetworkGraph_update_channel_from_unsigned_announcement(const struct LDKNetworkGraph *NONNULL_PTR this_arg, const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR msg, struct LDKCOption_AccessZ chain_access);
+       // MUST_USE_RES struct LDKCResult_NoneLightningErrorZ NetworkGraph_update_channel_from_unsigned_announcement(const struct LDKNetworkGraph *NONNULL_PTR this_arg, const struct LDKUnsignedChannelAnnouncement *NONNULL_PTR msg, struct LDKCOption_UtxoLookupZ utxo_lookup);
 /* @internal */
-export function NetworkGraph_update_channel_from_unsigned_announcement(this_arg: bigint, msg: bigint, chain_access: bigint): bigint {
+export function NetworkGraph_update_channel_from_unsigned_announcement(this_arg: bigint, msg: bigint, utxo_lookup: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_NetworkGraph_update_channel_from_unsigned_announcement(this_arg, msg, chain_access);
+       const nativeResponseValue = wasm.TS_NetworkGraph_update_channel_from_unsigned_announcement(this_arg, msg, utxo_lookup);
        return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKCResult_NoneLightningErrorZ NetworkGraph_add_channel_from_partial_announcement(const struct LDKNetworkGraph *NONNULL_PTR this_arg, uint64_t short_channel_id, uint64_t timestamp, struct LDKChannelFeatures features, struct LDKPublicKey node_id_1, struct LDKPublicKey node_id_2);
@@ -30289,22 +34775,22 @@ export function NetworkGraph_channel_failed(this_arg: bigint, short_channel_id:
        const nativeResponseValue = wasm.TS_NetworkGraph_channel_failed(this_arg, short_channel_id, is_permanent);
        // debug statements here
 }
-       // void NetworkGraph_node_failed(const struct LDKNetworkGraph *NONNULL_PTR this_arg, struct LDKPublicKey _node_id, bool is_permanent);
+       // void NetworkGraph_node_failed_permanent(const struct LDKNetworkGraph *NONNULL_PTR this_arg, struct LDKPublicKey node_id);
 /* @internal */
-export function NetworkGraph_node_failed(this_arg: bigint, _node_id: number, is_permanent: boolean): void {
+export function NetworkGraph_node_failed_permanent(this_arg: bigint, node_id: number): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_NetworkGraph_node_failed(this_arg, _node_id, is_permanent);
+       const nativeResponseValue = wasm.TS_NetworkGraph_node_failed_permanent(this_arg, node_id);
        // debug statements here
 }
-       // void NetworkGraph_remove_stale_channels_with_time(const struct LDKNetworkGraph *NONNULL_PTR this_arg, uint64_t current_time_unix);
+       // void NetworkGraph_remove_stale_channels_and_tracking_with_time(const struct LDKNetworkGraph *NONNULL_PTR this_arg, uint64_t current_time_unix);
 /* @internal */
-export function NetworkGraph_remove_stale_channels_with_time(this_arg: bigint, current_time_unix: bigint): void {
+export function NetworkGraph_remove_stale_channels_and_tracking_with_time(this_arg: bigint, current_time_unix: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_NetworkGraph_remove_stale_channels_with_time(this_arg, current_time_unix);
+       const nativeResponseValue = wasm.TS_NetworkGraph_remove_stale_channels_and_tracking_with_time(this_arg, current_time_unix);
        // debug statements here
 }
        // MUST_USE_RES struct LDKCResult_NoneLightningErrorZ NetworkGraph_update_channel(const struct LDKNetworkGraph *NONNULL_PTR this_arg, const struct LDKChannelUpdate *NONNULL_PTR msg);
@@ -30369,6 +34855,141 @@ export function ReadOnlyNetworkGraph_get_addresses(this_arg: bigint, pubkey: num
        }
        const nativeResponseValue = wasm.TS_ReadOnlyNetworkGraph_get_addresses(this_arg, pubkey);
        return nativeResponseValue;
+}
+       // void DefaultRouter_free(struct LDKDefaultRouter this_obj);
+/* @internal */
+export function DefaultRouter_free(this_obj: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_DefaultRouter_free(this_obj);
+       // debug statements here
+}
+       // MUST_USE_RES struct LDKDefaultRouter DefaultRouter_new(const struct LDKNetworkGraph *NONNULL_PTR network_graph, struct LDKLogger logger, struct LDKThirtyTwoBytes random_seed_bytes, struct LDKLockableScore scorer);
+/* @internal */
+export function DefaultRouter_new(network_graph: bigint, logger: bigint, random_seed_bytes: number, scorer: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_DefaultRouter_new(network_graph, logger, random_seed_bytes, scorer);
+       return nativeResponseValue;
+}
+       // struct LDKRouter DefaultRouter_as_Router(const struct LDKDefaultRouter *NONNULL_PTR this_arg);
+/* @internal */
+export function DefaultRouter_as_Router(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_DefaultRouter_as_Router(this_arg);
+       return nativeResponseValue;
+}
+       // void Router_free(struct LDKRouter this_ptr);
+/* @internal */
+export function Router_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Router_free(this_ptr);
+       // debug statements here
+}
+       // void ScorerAccountingForInFlightHtlcs_free(struct LDKScorerAccountingForInFlightHtlcs this_obj);
+/* @internal */
+export function ScorerAccountingForInFlightHtlcs_free(this_obj: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ScorerAccountingForInFlightHtlcs_free(this_obj);
+       // debug statements here
+}
+       // MUST_USE_RES struct LDKScorerAccountingForInFlightHtlcs ScorerAccountingForInFlightHtlcs_new(struct LDKScore scorer, const struct LDKInFlightHtlcs *NONNULL_PTR inflight_htlcs);
+/* @internal */
+export function ScorerAccountingForInFlightHtlcs_new(scorer: bigint, inflight_htlcs: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ScorerAccountingForInFlightHtlcs_new(scorer, inflight_htlcs);
+       return nativeResponseValue;
+}
+       // struct LDKCVec_u8Z ScorerAccountingForInFlightHtlcs_write(const struct LDKScorerAccountingForInFlightHtlcs *NONNULL_PTR obj);
+/* @internal */
+export function ScorerAccountingForInFlightHtlcs_write(obj: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ScorerAccountingForInFlightHtlcs_write(obj);
+       return nativeResponseValue;
+}
+       // struct LDKScore ScorerAccountingForInFlightHtlcs_as_Score(const struct LDKScorerAccountingForInFlightHtlcs *NONNULL_PTR this_arg);
+/* @internal */
+export function ScorerAccountingForInFlightHtlcs_as_Score(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ScorerAccountingForInFlightHtlcs_as_Score(this_arg);
+       return nativeResponseValue;
+}
+       // void InFlightHtlcs_free(struct LDKInFlightHtlcs this_obj);
+/* @internal */
+export function InFlightHtlcs_free(this_obj: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InFlightHtlcs_free(this_obj);
+       // debug statements here
+}
+       // uint64_t InFlightHtlcs_clone_ptr(LDKInFlightHtlcs *NONNULL_PTR arg);
+/* @internal */
+export function InFlightHtlcs_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InFlightHtlcs_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKInFlightHtlcs InFlightHtlcs_clone(const struct LDKInFlightHtlcs *NONNULL_PTR orig);
+/* @internal */
+export function InFlightHtlcs_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InFlightHtlcs_clone(orig);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKInFlightHtlcs InFlightHtlcs_new(void);
+/* @internal */
+export function InFlightHtlcs_new(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InFlightHtlcs_new();
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKCOption_u64Z InFlightHtlcs_used_liquidity_msat(const struct LDKInFlightHtlcs *NONNULL_PTR this_arg, const struct LDKNodeId *NONNULL_PTR source, const struct LDKNodeId *NONNULL_PTR target, uint64_t channel_scid);
+/* @internal */
+export function InFlightHtlcs_used_liquidity_msat(this_arg: bigint, source: bigint, target: bigint, channel_scid: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InFlightHtlcs_used_liquidity_msat(this_arg, source, target, channel_scid);
+       return nativeResponseValue;
+}
+       // struct LDKCVec_u8Z InFlightHtlcs_write(const struct LDKInFlightHtlcs *NONNULL_PTR obj);
+/* @internal */
+export function InFlightHtlcs_write(obj: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InFlightHtlcs_write(obj);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_InFlightHtlcsDecodeErrorZ InFlightHtlcs_read(struct LDKu8slice ser);
+/* @internal */
+export function InFlightHtlcs_read(ser: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InFlightHtlcs_read(ser);
+       return nativeResponseValue;
 }
        // void RouteHop_free(struct LDKRouteHop this_obj);
 /* @internal */
@@ -30721,31 +35342,13 @@ export function RouteParameters_set_final_value_msat(this_ptr: bigint, val: bigi
        const nativeResponseValue = wasm.TS_RouteParameters_set_final_value_msat(this_ptr, val);
        // debug statements here
 }
-       // uint32_t RouteParameters_get_final_cltv_expiry_delta(const struct LDKRouteParameters *NONNULL_PTR this_ptr);
-/* @internal */
-export function RouteParameters_get_final_cltv_expiry_delta(this_ptr: bigint): number {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_RouteParameters_get_final_cltv_expiry_delta(this_ptr);
-       return nativeResponseValue;
-}
-       // void RouteParameters_set_final_cltv_expiry_delta(struct LDKRouteParameters *NONNULL_PTR this_ptr, uint32_t val);
-/* @internal */
-export function RouteParameters_set_final_cltv_expiry_delta(this_ptr: bigint, val: number): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_RouteParameters_set_final_cltv_expiry_delta(this_ptr, val);
-       // debug statements here
-}
-       // MUST_USE_RES struct LDKRouteParameters RouteParameters_new(struct LDKPaymentParameters payment_params_arg, uint64_t final_value_msat_arg, uint32_t final_cltv_expiry_delta_arg);
+       // MUST_USE_RES struct LDKRouteParameters RouteParameters_new(struct LDKPaymentParameters payment_params_arg, uint64_t final_value_msat_arg);
 /* @internal */
-export function RouteParameters_new(payment_params_arg: bigint, final_value_msat_arg: bigint, final_cltv_expiry_delta_arg: number): bigint {
+export function RouteParameters_new(payment_params_arg: bigint, final_value_msat_arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_RouteParameters_new(payment_params_arg, final_value_msat_arg, final_cltv_expiry_delta_arg);
+       const nativeResponseValue = wasm.TS_RouteParameters_new(payment_params_arg, final_value_msat_arg);
        return nativeResponseValue;
 }
        // uint64_t RouteParameters_clone_ptr(LDKRouteParameters *NONNULL_PTR arg);
@@ -30765,6 +35368,15 @@ export function RouteParameters_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_RouteParameters_clone(orig);
        return nativeResponseValue;
+}
+       // bool RouteParameters_eq(const struct LDKRouteParameters *NONNULL_PTR a, const struct LDKRouteParameters *NONNULL_PTR b);
+/* @internal */
+export function RouteParameters_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_RouteParameters_eq(a, b);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z RouteParameters_write(const struct LDKRouteParameters *NONNULL_PTR obj);
 /* @internal */
@@ -30937,13 +35549,31 @@ export function PaymentParameters_set_previously_failed_channels(this_ptr: bigin
        const nativeResponseValue = wasm.TS_PaymentParameters_set_previously_failed_channels(this_ptr, val);
        // debug statements here
 }
-       // MUST_USE_RES struct LDKPaymentParameters PaymentParameters_new(struct LDKPublicKey payee_pubkey_arg, struct LDKInvoiceFeatures features_arg, struct LDKCVec_RouteHintZ route_hints_arg, struct LDKCOption_u64Z expiry_time_arg, uint32_t max_total_cltv_expiry_delta_arg, uint8_t max_path_count_arg, uint8_t max_channel_saturation_power_of_half_arg, struct LDKCVec_u64Z previously_failed_channels_arg);
+       // uint32_t PaymentParameters_get_final_cltv_expiry_delta(const struct LDKPaymentParameters *NONNULL_PTR this_ptr);
+/* @internal */
+export function PaymentParameters_get_final_cltv_expiry_delta(this_ptr: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PaymentParameters_get_final_cltv_expiry_delta(this_ptr);
+       return nativeResponseValue;
+}
+       // void PaymentParameters_set_final_cltv_expiry_delta(struct LDKPaymentParameters *NONNULL_PTR this_ptr, uint32_t val);
+/* @internal */
+export function PaymentParameters_set_final_cltv_expiry_delta(this_ptr: bigint, val: number): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PaymentParameters_set_final_cltv_expiry_delta(this_ptr, val);
+       // debug statements here
+}
+       // MUST_USE_RES struct LDKPaymentParameters PaymentParameters_new(struct LDKPublicKey payee_pubkey_arg, struct LDKInvoiceFeatures features_arg, struct LDKCVec_RouteHintZ route_hints_arg, struct LDKCOption_u64Z expiry_time_arg, uint32_t max_total_cltv_expiry_delta_arg, uint8_t max_path_count_arg, uint8_t max_channel_saturation_power_of_half_arg, struct LDKCVec_u64Z previously_failed_channels_arg, uint32_t final_cltv_expiry_delta_arg);
 /* @internal */
-export function PaymentParameters_new(payee_pubkey_arg: number, features_arg: bigint, route_hints_arg: number, expiry_time_arg: bigint, max_total_cltv_expiry_delta_arg: number, max_path_count_arg: number, max_channel_saturation_power_of_half_arg: number, previously_failed_channels_arg: number): bigint {
+export function PaymentParameters_new(payee_pubkey_arg: number, features_arg: bigint, route_hints_arg: number, expiry_time_arg: bigint, max_total_cltv_expiry_delta_arg: number, max_path_count_arg: number, max_channel_saturation_power_of_half_arg: number, previously_failed_channels_arg: number, final_cltv_expiry_delta_arg: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_PaymentParameters_new(payee_pubkey_arg, features_arg, route_hints_arg, expiry_time_arg, max_total_cltv_expiry_delta_arg, max_path_count_arg, max_channel_saturation_power_of_half_arg, previously_failed_channels_arg);
+       const nativeResponseValue = wasm.TS_PaymentParameters_new(payee_pubkey_arg, features_arg, route_hints_arg, expiry_time_arg, max_total_cltv_expiry_delta_arg, max_path_count_arg, max_channel_saturation_power_of_half_arg, previously_failed_channels_arg, final_cltv_expiry_delta_arg);
        return nativeResponseValue;
 }
        // uint64_t PaymentParameters_clone_ptr(LDKPaymentParameters *NONNULL_PTR arg);
@@ -30991,31 +35621,31 @@ export function PaymentParameters_write(obj: bigint): number {
        const nativeResponseValue = wasm.TS_PaymentParameters_write(obj);
        return nativeResponseValue;
 }
-       // struct LDKCResult_PaymentParametersDecodeErrorZ PaymentParameters_read(struct LDKu8slice ser);
+       // struct LDKCResult_PaymentParametersDecodeErrorZ PaymentParameters_read(struct LDKu8slice ser, uint32_t arg);
 /* @internal */
-export function PaymentParameters_read(ser: number): bigint {
+export function PaymentParameters_read(ser: number, arg: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_PaymentParameters_read(ser);
+       const nativeResponseValue = wasm.TS_PaymentParameters_read(ser, arg);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKPaymentParameters PaymentParameters_from_node_id(struct LDKPublicKey payee_pubkey);
+       // MUST_USE_RES struct LDKPaymentParameters PaymentParameters_from_node_id(struct LDKPublicKey payee_pubkey, uint32_t final_cltv_expiry_delta);
 /* @internal */
-export function PaymentParameters_from_node_id(payee_pubkey: number): bigint {
+export function PaymentParameters_from_node_id(payee_pubkey: number, final_cltv_expiry_delta: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_PaymentParameters_from_node_id(payee_pubkey);
+       const nativeResponseValue = wasm.TS_PaymentParameters_from_node_id(payee_pubkey, final_cltv_expiry_delta);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKPaymentParameters PaymentParameters_for_keysend(struct LDKPublicKey payee_pubkey);
+       // MUST_USE_RES struct LDKPaymentParameters PaymentParameters_for_keysend(struct LDKPublicKey payee_pubkey, uint32_t final_cltv_expiry_delta);
 /* @internal */
-export function PaymentParameters_for_keysend(payee_pubkey: number): bigint {
+export function PaymentParameters_for_keysend(payee_pubkey: number, final_cltv_expiry_delta: number): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_PaymentParameters_for_keysend(payee_pubkey);
+       const nativeResponseValue = wasm.TS_PaymentParameters_for_keysend(payee_pubkey, final_cltv_expiry_delta);
        return nativeResponseValue;
 }
        // void RouteHint_free(struct LDKRouteHint this_obj);
@@ -31323,6 +35953,15 @@ export function LockableScore_free(this_ptr: bigint): void {
        }
        const nativeResponseValue = wasm.TS_LockableScore_free(this_ptr);
        // debug statements here
+}
+       // void WriteableScore_free(struct LDKWriteableScore this_ptr);
+/* @internal */
+export function WriteableScore_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_WriteableScore_free(this_ptr);
+       // debug statements here
 }
        // void MultiThreadedLockableScore_free(struct LDKMultiThreadedLockableScore this_obj);
 /* @internal */
@@ -31332,6 +35971,42 @@ export function MultiThreadedLockableScore_free(this_obj: bigint): void {
        }
        const nativeResponseValue = wasm.TS_MultiThreadedLockableScore_free(this_obj);
        // debug statements here
+}
+       // void MultiThreadedScoreLock_free(struct LDKMultiThreadedScoreLock this_obj);
+/* @internal */
+export function MultiThreadedScoreLock_free(this_obj: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_MultiThreadedScoreLock_free(this_obj);
+       // debug statements here
+}
+       // struct LDKScore MultiThreadedScoreLock_as_Score(const struct LDKMultiThreadedScoreLock *NONNULL_PTR this_arg);
+/* @internal */
+export function MultiThreadedScoreLock_as_Score(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_MultiThreadedScoreLock_as_Score(this_arg);
+       return nativeResponseValue;
+}
+       // struct LDKCVec_u8Z MultiThreadedScoreLock_write(const struct LDKMultiThreadedScoreLock *NONNULL_PTR obj);
+/* @internal */
+export function MultiThreadedScoreLock_write(obj: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_MultiThreadedScoreLock_write(obj);
+       return nativeResponseValue;
+}
+       // struct LDKLockableScore MultiThreadedLockableScore_as_LockableScore(const struct LDKMultiThreadedLockableScore *NONNULL_PTR this_arg);
+/* @internal */
+export function MultiThreadedLockableScore_as_LockableScore(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_MultiThreadedLockableScore_as_LockableScore(this_arg);
+       return nativeResponseValue;
 }
        // struct LDKCVec_u8Z MultiThreadedLockableScore_write(const struct LDKMultiThreadedLockableScore *NONNULL_PTR obj);
 /* @internal */
@@ -31341,6 +36016,15 @@ export function MultiThreadedLockableScore_write(obj: bigint): number {
        }
        const nativeResponseValue = wasm.TS_MultiThreadedLockableScore_write(obj);
        return nativeResponseValue;
+}
+       // struct LDKWriteableScore MultiThreadedLockableScore_as_WriteableScore(const struct LDKMultiThreadedLockableScore *NONNULL_PTR this_arg);
+/* @internal */
+export function MultiThreadedLockableScore_as_WriteableScore(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_MultiThreadedLockableScore_as_WriteableScore(this_arg);
+       return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKMultiThreadedLockableScore MultiThreadedLockableScore_new(struct LDKScore score);
 /* @internal */
@@ -31611,6 +36295,60 @@ export function ProbabilisticScoringParameters_set_liquidity_penalty_amount_mult
        }
        const nativeResponseValue = wasm.TS_ProbabilisticScoringParameters_set_liquidity_penalty_amount_multiplier_msat(this_ptr, val);
        // debug statements here
+}
+       // uint64_t ProbabilisticScoringParameters_get_historical_liquidity_penalty_multiplier_msat(const struct LDKProbabilisticScoringParameters *NONNULL_PTR this_ptr);
+/* @internal */
+export function ProbabilisticScoringParameters_get_historical_liquidity_penalty_multiplier_msat(this_ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ProbabilisticScoringParameters_get_historical_liquidity_penalty_multiplier_msat(this_ptr);
+       return nativeResponseValue;
+}
+       // void ProbabilisticScoringParameters_set_historical_liquidity_penalty_multiplier_msat(struct LDKProbabilisticScoringParameters *NONNULL_PTR this_ptr, uint64_t val);
+/* @internal */
+export function ProbabilisticScoringParameters_set_historical_liquidity_penalty_multiplier_msat(this_ptr: bigint, val: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ProbabilisticScoringParameters_set_historical_liquidity_penalty_multiplier_msat(this_ptr, val);
+       // debug statements here
+}
+       // uint64_t ProbabilisticScoringParameters_get_historical_liquidity_penalty_amount_multiplier_msat(const struct LDKProbabilisticScoringParameters *NONNULL_PTR this_ptr);
+/* @internal */
+export function ProbabilisticScoringParameters_get_historical_liquidity_penalty_amount_multiplier_msat(this_ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ProbabilisticScoringParameters_get_historical_liquidity_penalty_amount_multiplier_msat(this_ptr);
+       return nativeResponseValue;
+}
+       // void ProbabilisticScoringParameters_set_historical_liquidity_penalty_amount_multiplier_msat(struct LDKProbabilisticScoringParameters *NONNULL_PTR this_ptr, uint64_t val);
+/* @internal */
+export function ProbabilisticScoringParameters_set_historical_liquidity_penalty_amount_multiplier_msat(this_ptr: bigint, val: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ProbabilisticScoringParameters_set_historical_liquidity_penalty_amount_multiplier_msat(this_ptr, val);
+       // debug statements here
+}
+       // uint64_t ProbabilisticScoringParameters_get_historical_no_updates_half_life(const struct LDKProbabilisticScoringParameters *NONNULL_PTR this_ptr);
+/* @internal */
+export function ProbabilisticScoringParameters_get_historical_no_updates_half_life(this_ptr: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ProbabilisticScoringParameters_get_historical_no_updates_half_life(this_ptr);
+       return nativeResponseValue;
+}
+       // void ProbabilisticScoringParameters_set_historical_no_updates_half_life(struct LDKProbabilisticScoringParameters *NONNULL_PTR this_ptr, uint64_t val);
+/* @internal */
+export function ProbabilisticScoringParameters_set_historical_no_updates_half_life(this_ptr: bigint, val: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ProbabilisticScoringParameters_set_historical_no_updates_half_life(this_ptr, val);
+       // debug statements here
 }
        // uint64_t ProbabilisticScoringParameters_get_anti_probing_penalty_msat(const struct LDKProbabilisticScoringParameters *NONNULL_PTR this_ptr);
 /* @internal */
@@ -31692,6 +36430,15 @@ export function ProbabilisticScorer_estimated_channel_liquidity_range(this_arg:
        }
        const nativeResponseValue = wasm.TS_ProbabilisticScorer_estimated_channel_liquidity_range(this_arg, scid, target);
        return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKCOption_C2Tuple_EightU16sEightU16sZZ ProbabilisticScorer_historical_estimated_channel_liquidity_probabilities(const struct LDKProbabilisticScorer *NONNULL_PTR this_arg, uint64_t scid, const struct LDKNodeId *NONNULL_PTR target);
+/* @internal */
+export function ProbabilisticScorer_historical_estimated_channel_liquidity_probabilities(this_arg: bigint, scid: bigint, target: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ProbabilisticScorer_historical_estimated_channel_liquidity_probabilities(this_arg, scid, target);
+       return nativeResponseValue;
 }
        // void ProbabilisticScorer_add_banned(struct LDKProbabilisticScorer *NONNULL_PTR this_arg, const struct LDKNodeId *NONNULL_PTR node_id);
 /* @internal */
@@ -31782,6 +36529,501 @@ export function ProbabilisticScorer_read(ser: number, arg_a: bigint, arg_b: bigi
        }
        const nativeResponseValue = wasm.TS_ProbabilisticScorer_read(ser, arg_a, arg_b, arg_c);
        return nativeResponseValue;
+}
+       // void BlindedPath_free(struct LDKBlindedPath this_obj);
+/* @internal */
+export function BlindedPath_free(this_obj: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedPath_free(this_obj);
+       // debug statements here
+}
+       // uint64_t BlindedPath_clone_ptr(LDKBlindedPath *NONNULL_PTR arg);
+/* @internal */
+export function BlindedPath_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedPath_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKBlindedPath BlindedPath_clone(const struct LDKBlindedPath *NONNULL_PTR orig);
+/* @internal */
+export function BlindedPath_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedPath_clone(orig);
+       return nativeResponseValue;
+}
+       // void BlindedHop_free(struct LDKBlindedHop this_obj);
+/* @internal */
+export function BlindedHop_free(this_obj: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedHop_free(this_obj);
+       // debug statements here
+}
+       // uint64_t BlindedHop_clone_ptr(LDKBlindedHop *NONNULL_PTR arg);
+/* @internal */
+export function BlindedHop_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedHop_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKBlindedHop BlindedHop_clone(const struct LDKBlindedHop *NONNULL_PTR orig);
+/* @internal */
+export function BlindedHop_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedHop_clone(orig);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKCResult_BlindedPathNoneZ BlindedPath_new(struct LDKCVec_PublicKeyZ node_pks, const struct LDKEntropySource *NONNULL_PTR entropy_source);
+/* @internal */
+export function BlindedPath_new(node_pks: number, entropy_source: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedPath_new(node_pks, entropy_source);
+       return nativeResponseValue;
+}
+       // struct LDKCVec_u8Z BlindedPath_write(const struct LDKBlindedPath *NONNULL_PTR obj);
+/* @internal */
+export function BlindedPath_write(obj: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedPath_write(obj);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_BlindedPathDecodeErrorZ BlindedPath_read(struct LDKu8slice ser);
+/* @internal */
+export function BlindedPath_read(ser: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedPath_read(ser);
+       return nativeResponseValue;
+}
+       // struct LDKCVec_u8Z BlindedHop_write(const struct LDKBlindedHop *NONNULL_PTR obj);
+/* @internal */
+export function BlindedHop_write(obj: bigint): number {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedHop_write(obj);
+       return nativeResponseValue;
+}
+       // struct LDKCResult_BlindedHopDecodeErrorZ BlindedHop_read(struct LDKu8slice ser);
+/* @internal */
+export function BlindedHop_read(ser: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_BlindedHop_read(ser);
+       return nativeResponseValue;
+}
+       // void OnionMessenger_free(struct LDKOnionMessenger this_obj);
+/* @internal */
+export function OnionMessenger_free(this_obj: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessenger_free(this_obj);
+       // debug statements here
+}
+       // void Destination_free(struct LDKDestination this_ptr);
+/* @internal */
+export function Destination_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Destination_free(this_ptr);
+       // debug statements here
+}
+       // uint64_t Destination_clone_ptr(LDKDestination *NONNULL_PTR arg);
+/* @internal */
+export function Destination_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Destination_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKDestination Destination_clone(const struct LDKDestination *NONNULL_PTR orig);
+/* @internal */
+export function Destination_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Destination_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKDestination Destination_node(struct LDKPublicKey a);
+/* @internal */
+export function Destination_node(a: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Destination_node(a);
+       return nativeResponseValue;
+}
+       // struct LDKDestination Destination_blinded_path(struct LDKBlindedPath a);
+/* @internal */
+export function Destination_blinded_path(a: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Destination_blinded_path(a);
+       return nativeResponseValue;
+}
+       // void SendError_free(struct LDKSendError this_ptr);
+/* @internal */
+export function SendError_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_SendError_free(this_ptr);
+       // debug statements here
+}
+       // uint64_t SendError_clone_ptr(LDKSendError *NONNULL_PTR arg);
+/* @internal */
+export function SendError_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_SendError_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKSendError SendError_clone(const struct LDKSendError *NONNULL_PTR orig);
+/* @internal */
+export function SendError_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_SendError_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKSendError SendError_secp256k1(enum LDKSecp256k1Error a);
+/* @internal */
+export function SendError_secp256k1(a: Secp256k1Error): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_SendError_secp256k1(a);
+       return nativeResponseValue;
+}
+       // struct LDKSendError SendError_too_big_packet(void);
+/* @internal */
+export function SendError_too_big_packet(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_SendError_too_big_packet();
+       return nativeResponseValue;
+}
+       // struct LDKSendError SendError_too_few_blinded_hops(void);
+/* @internal */
+export function SendError_too_few_blinded_hops(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_SendError_too_few_blinded_hops();
+       return nativeResponseValue;
+}
+       // struct LDKSendError SendError_invalid_first_hop(void);
+/* @internal */
+export function SendError_invalid_first_hop(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_SendError_invalid_first_hop();
+       return nativeResponseValue;
+}
+       // struct LDKSendError SendError_invalid_message(void);
+/* @internal */
+export function SendError_invalid_message(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_SendError_invalid_message();
+       return nativeResponseValue;
+}
+       // struct LDKSendError SendError_buffer_full(void);
+/* @internal */
+export function SendError_buffer_full(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_SendError_buffer_full();
+       return nativeResponseValue;
+}
+       // struct LDKSendError SendError_get_node_id_failed(void);
+/* @internal */
+export function SendError_get_node_id_failed(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_SendError_get_node_id_failed();
+       return nativeResponseValue;
+}
+       // struct LDKSendError SendError_blinded_path_advance_failed(void);
+/* @internal */
+export function SendError_blinded_path_advance_failed(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_SendError_blinded_path_advance_failed();
+       return nativeResponseValue;
+}
+       // bool SendError_eq(const struct LDKSendError *NONNULL_PTR a, const struct LDKSendError *NONNULL_PTR b);
+/* @internal */
+export function SendError_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_SendError_eq(a, b);
+       return nativeResponseValue;
+}
+       // void CustomOnionMessageHandler_free(struct LDKCustomOnionMessageHandler this_ptr);
+/* @internal */
+export function CustomOnionMessageHandler_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CustomOnionMessageHandler_free(this_ptr);
+       // debug statements here
+}
+       // MUST_USE_RES struct LDKOnionMessenger OnionMessenger_new(struct LDKEntropySource entropy_source, struct LDKNodeSigner node_signer, struct LDKLogger logger, struct LDKCustomOnionMessageHandler custom_handler);
+/* @internal */
+export function OnionMessenger_new(entropy_source: bigint, node_signer: bigint, logger: bigint, custom_handler: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessenger_new(entropy_source, node_signer, logger, custom_handler);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKCResult_NoneSendErrorZ OnionMessenger_send_onion_message(const struct LDKOnionMessenger *NONNULL_PTR this_arg, struct LDKCVec_PublicKeyZ intermediate_nodes, struct LDKDestination destination, struct LDKOnionMessageContents message, struct LDKBlindedPath reply_path);
+/* @internal */
+export function OnionMessenger_send_onion_message(this_arg: bigint, intermediate_nodes: number, destination: bigint, message: bigint, reply_path: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessenger_send_onion_message(this_arg, intermediate_nodes, destination, message, reply_path);
+       return nativeResponseValue;
+}
+       // struct LDKOnionMessageHandler OnionMessenger_as_OnionMessageHandler(const struct LDKOnionMessenger *NONNULL_PTR this_arg);
+/* @internal */
+export function OnionMessenger_as_OnionMessageHandler(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessenger_as_OnionMessageHandler(this_arg);
+       return nativeResponseValue;
+}
+       // struct LDKOnionMessageProvider OnionMessenger_as_OnionMessageProvider(const struct LDKOnionMessenger *NONNULL_PTR this_arg);
+/* @internal */
+export function OnionMessenger_as_OnionMessageProvider(this_arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessenger_as_OnionMessageProvider(this_arg);
+       return nativeResponseValue;
+}
+       // void OnionMessageContents_free(struct LDKOnionMessageContents this_ptr);
+/* @internal */
+export function OnionMessageContents_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessageContents_free(this_ptr);
+       // debug statements here
+}
+       // uint64_t OnionMessageContents_clone_ptr(LDKOnionMessageContents *NONNULL_PTR arg);
+/* @internal */
+export function OnionMessageContents_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessageContents_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKOnionMessageContents OnionMessageContents_clone(const struct LDKOnionMessageContents *NONNULL_PTR orig);
+/* @internal */
+export function OnionMessageContents_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessageContents_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKOnionMessageContents OnionMessageContents_custom(struct LDKCustomOnionMessageContents a);
+/* @internal */
+export function OnionMessageContents_custom(a: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_OnionMessageContents_custom(a);
+       return nativeResponseValue;
+}
+       // uint64_t CustomOnionMessageContents_clone_ptr(LDKCustomOnionMessageContents *NONNULL_PTR arg);
+/* @internal */
+export function CustomOnionMessageContents_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CustomOnionMessageContents_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKCustomOnionMessageContents CustomOnionMessageContents_clone(const struct LDKCustomOnionMessageContents *NONNULL_PTR orig);
+/* @internal */
+export function CustomOnionMessageContents_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CustomOnionMessageContents_clone(orig);
+       return nativeResponseValue;
+}
+       // void CustomOnionMessageContents_free(struct LDKCustomOnionMessageContents this_ptr);
+/* @internal */
+export function CustomOnionMessageContents_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CustomOnionMessageContents_free(this_ptr);
+       // debug statements here
+}
+       // void GossipSync_free(struct LDKGossipSync this_ptr);
+/* @internal */
+export function GossipSync_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_GossipSync_free(this_ptr);
+       // debug statements here
+}
+       // struct LDKGossipSync GossipSync_p2_p(const struct LDKP2PGossipSync *NONNULL_PTR a);
+/* @internal */
+export function GossipSync_p2_p(a: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_GossipSync_p2_p(a);
+       return nativeResponseValue;
+}
+       // struct LDKGossipSync GossipSync_rapid(const struct LDKRapidGossipSync *NONNULL_PTR a);
+/* @internal */
+export function GossipSync_rapid(a: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_GossipSync_rapid(a);
+       return nativeResponseValue;
+}
+       // struct LDKGossipSync GossipSync_none(void);
+/* @internal */
+export function GossipSync_none(): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_GossipSync_none();
+       return nativeResponseValue;
+}
+       // void RapidGossipSync_free(struct LDKRapidGossipSync this_obj);
+/* @internal */
+export function RapidGossipSync_free(this_obj: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_RapidGossipSync_free(this_obj);
+       // debug statements here
+}
+       // MUST_USE_RES struct LDKRapidGossipSync RapidGossipSync_new(const struct LDKNetworkGraph *NONNULL_PTR network_graph, struct LDKLogger logger);
+/* @internal */
+export function RapidGossipSync_new(network_graph: bigint, logger: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_RapidGossipSync_new(network_graph, logger);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKCResult_u32GraphSyncErrorZ RapidGossipSync_update_network_graph(const struct LDKRapidGossipSync *NONNULL_PTR this_arg, struct LDKu8slice update_data);
+/* @internal */
+export function RapidGossipSync_update_network_graph(this_arg: bigint, update_data: number): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_RapidGossipSync_update_network_graph(this_arg, update_data);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES struct LDKCResult_u32GraphSyncErrorZ RapidGossipSync_update_network_graph_no_std(const struct LDKRapidGossipSync *NONNULL_PTR this_arg, struct LDKu8slice update_data, struct LDKCOption_u64Z current_time_unix);
+/* @internal */
+export function RapidGossipSync_update_network_graph_no_std(this_arg: bigint, update_data: number, current_time_unix: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_RapidGossipSync_update_network_graph_no_std(this_arg, update_data, current_time_unix);
+       return nativeResponseValue;
+}
+       // MUST_USE_RES bool RapidGossipSync_is_initial_sync_complete(const struct LDKRapidGossipSync *NONNULL_PTR this_arg);
+/* @internal */
+export function RapidGossipSync_is_initial_sync_complete(this_arg: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_RapidGossipSync_is_initial_sync_complete(this_arg);
+       return nativeResponseValue;
+}
+       // void GraphSyncError_free(struct LDKGraphSyncError this_ptr);
+/* @internal */
+export function GraphSyncError_free(this_ptr: bigint): void {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_GraphSyncError_free(this_ptr);
+       // debug statements here
+}
+       // uint64_t GraphSyncError_clone_ptr(LDKGraphSyncError *NONNULL_PTR arg);
+/* @internal */
+export function GraphSyncError_clone_ptr(arg: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_GraphSyncError_clone_ptr(arg);
+       return nativeResponseValue;
+}
+       // struct LDKGraphSyncError GraphSyncError_clone(const struct LDKGraphSyncError *NONNULL_PTR orig);
+/* @internal */
+export function GraphSyncError_clone(orig: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_GraphSyncError_clone(orig);
+       return nativeResponseValue;
+}
+       // struct LDKGraphSyncError GraphSyncError_decode_error(struct LDKDecodeError a);
+/* @internal */
+export function GraphSyncError_decode_error(a: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_GraphSyncError_decode_error(a);
+       return nativeResponseValue;
+}
+       // struct LDKGraphSyncError GraphSyncError_lightning_error(struct LDKLightningError a);
+/* @internal */
+export function GraphSyncError_lightning_error(a: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_GraphSyncError_lightning_error(a);
+       return nativeResponseValue;
 }
        // void ParseError_free(struct LDKParseError this_ptr);
 /* @internal */
@@ -31971,6 +37213,15 @@ export function ParseError_skip(): bigint {
        }
        const nativeResponseValue = wasm.TS_ParseError_skip();
        return nativeResponseValue;
+}
+       // bool ParseError_eq(const struct LDKParseError *NONNULL_PTR a, const struct LDKParseError *NONNULL_PTR b);
+/* @internal */
+export function ParseError_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ParseError_eq(a, b);
+       return nativeResponseValue;
 }
        // void ParseOrSemanticError_free(struct LDKParseOrSemanticError this_ptr);
 /* @internal */
@@ -32016,6 +37267,15 @@ export function ParseOrSemanticError_semantic_error(a: SemanticError): bigint {
        }
        const nativeResponseValue = wasm.TS_ParseOrSemanticError_semantic_error(a);
        return nativeResponseValue;
+}
+       // bool ParseOrSemanticError_eq(const struct LDKParseOrSemanticError *NONNULL_PTR a, const struct LDKParseOrSemanticError *NONNULL_PTR b);
+/* @internal */
+export function ParseOrSemanticError_eq(a: bigint, b: bigint): boolean {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_ParseOrSemanticError_eq(a, b);
+       return nativeResponseValue;
 }
        // void Invoice_free(struct LDKInvoice this_obj);
 /* @internal */
@@ -32052,6 +37312,15 @@ export function Invoice_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_Invoice_clone(orig);
        return nativeResponseValue;
+}
+       // uint64_t Invoice_hash(const struct LDKInvoice *NONNULL_PTR o);
+/* @internal */
+export function Invoice_hash(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_Invoice_hash(o);
+       return nativeResponseValue;
 }
        // void SignedRawInvoice_free(struct LDKSignedRawInvoice this_obj);
 /* @internal */
@@ -32088,6 +37357,15 @@ export function SignedRawInvoice_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_SignedRawInvoice_clone(orig);
        return nativeResponseValue;
+}
+       // uint64_t SignedRawInvoice_hash(const struct LDKSignedRawInvoice *NONNULL_PTR o);
+/* @internal */
+export function SignedRawInvoice_hash(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_SignedRawInvoice_hash(o);
+       return nativeResponseValue;
 }
        // void RawInvoice_free(struct LDKRawInvoice this_obj);
 /* @internal */
@@ -32142,6 +37420,15 @@ export function RawInvoice_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_RawInvoice_clone(orig);
        return nativeResponseValue;
+}
+       // uint64_t RawInvoice_hash(const struct LDKRawInvoice *NONNULL_PTR o);
+/* @internal */
+export function RawInvoice_hash(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_RawInvoice_hash(o);
+       return nativeResponseValue;
 }
        // void RawDataPart_free(struct LDKRawDataPart this_obj);
 /* @internal */
@@ -32196,6 +37483,15 @@ export function RawDataPart_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_RawDataPart_clone(orig);
        return nativeResponseValue;
+}
+       // uint64_t RawDataPart_hash(const struct LDKRawDataPart *NONNULL_PTR o);
+/* @internal */
+export function RawDataPart_hash(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_RawDataPart_hash(o);
+       return nativeResponseValue;
 }
        // void PositiveTimestamp_free(struct LDKPositiveTimestamp this_obj);
 /* @internal */
@@ -32232,6 +37528,15 @@ export function PositiveTimestamp_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_PositiveTimestamp_clone(orig);
        return nativeResponseValue;
+}
+       // uint64_t PositiveTimestamp_hash(const struct LDKPositiveTimestamp *NONNULL_PTR o);
+/* @internal */
+export function PositiveTimestamp_hash(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_PositiveTimestamp_hash(o);
+       return nativeResponseValue;
 }
        // enum LDKSiPrefix SiPrefix_clone(const enum LDKSiPrefix *NONNULL_PTR orig);
 /* @internal */
@@ -32286,6 +37591,15 @@ export function SiPrefix_eq(a: bigint, b: bigint): boolean {
        }
        const nativeResponseValue = wasm.TS_SiPrefix_eq(a, b);
        return nativeResponseValue;
+}
+       // uint64_t SiPrefix_hash(const enum LDKSiPrefix *NONNULL_PTR o);
+/* @internal */
+export function SiPrefix_hash(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_SiPrefix_hash(o);
+       return nativeResponseValue;
 }
        // MUST_USE_RES uint64_t SiPrefix_multiplier(const enum LDKSiPrefix *NONNULL_PTR this_arg);
 /* @internal */
@@ -32575,76 +37889,76 @@ export function ExpiryTime_eq(a: bigint, b: bigint): boolean {
        const nativeResponseValue = wasm.TS_ExpiryTime_eq(a, b);
        return nativeResponseValue;
 }
-       // void MinFinalCltvExpiry_free(struct LDKMinFinalCltvExpiry this_obj);
+       // void MinFinalCltvExpiryDelta_free(struct LDKMinFinalCltvExpiryDelta this_obj);
 /* @internal */
-export function MinFinalCltvExpiry_free(this_obj: bigint): void {
+export function MinFinalCltvExpiryDelta_free(this_obj: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_MinFinalCltvExpiry_free(this_obj);
+       const nativeResponseValue = wasm.TS_MinFinalCltvExpiryDelta_free(this_obj);
        // debug statements here
 }
-       // uint64_t MinFinalCltvExpiry_get_a(const struct LDKMinFinalCltvExpiry *NONNULL_PTR this_ptr);
+       // uint64_t MinFinalCltvExpiryDelta_get_a(const struct LDKMinFinalCltvExpiryDelta *NONNULL_PTR this_ptr);
 /* @internal */
-export function MinFinalCltvExpiry_get_a(this_ptr: bigint): bigint {
+export function MinFinalCltvExpiryDelta_get_a(this_ptr: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_MinFinalCltvExpiry_get_a(this_ptr);
+       const nativeResponseValue = wasm.TS_MinFinalCltvExpiryDelta_get_a(this_ptr);
        return nativeResponseValue;
 }
-       // void MinFinalCltvExpiry_set_a(struct LDKMinFinalCltvExpiry *NONNULL_PTR this_ptr, uint64_t val);
+       // void MinFinalCltvExpiryDelta_set_a(struct LDKMinFinalCltvExpiryDelta *NONNULL_PTR this_ptr, uint64_t val);
 /* @internal */
-export function MinFinalCltvExpiry_set_a(this_ptr: bigint, val: bigint): void {
+export function MinFinalCltvExpiryDelta_set_a(this_ptr: bigint, val: bigint): void {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_MinFinalCltvExpiry_set_a(this_ptr, val);
+       const nativeResponseValue = wasm.TS_MinFinalCltvExpiryDelta_set_a(this_ptr, val);
        // debug statements here
 }
-       // MUST_USE_RES struct LDKMinFinalCltvExpiry MinFinalCltvExpiry_new(uint64_t a_arg);
+       // MUST_USE_RES struct LDKMinFinalCltvExpiryDelta MinFinalCltvExpiryDelta_new(uint64_t a_arg);
 /* @internal */
-export function MinFinalCltvExpiry_new(a_arg: bigint): bigint {
+export function MinFinalCltvExpiryDelta_new(a_arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_MinFinalCltvExpiry_new(a_arg);
+       const nativeResponseValue = wasm.TS_MinFinalCltvExpiryDelta_new(a_arg);
        return nativeResponseValue;
 }
-       // uint64_t MinFinalCltvExpiry_clone_ptr(LDKMinFinalCltvExpiry *NONNULL_PTR arg);
+       // uint64_t MinFinalCltvExpiryDelta_clone_ptr(LDKMinFinalCltvExpiryDelta *NONNULL_PTR arg);
 /* @internal */
-export function MinFinalCltvExpiry_clone_ptr(arg: bigint): bigint {
+export function MinFinalCltvExpiryDelta_clone_ptr(arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_MinFinalCltvExpiry_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_MinFinalCltvExpiryDelta_clone_ptr(arg);
        return nativeResponseValue;
 }
-       // struct LDKMinFinalCltvExpiry MinFinalCltvExpiry_clone(const struct LDKMinFinalCltvExpiry *NONNULL_PTR orig);
+       // struct LDKMinFinalCltvExpiryDelta MinFinalCltvExpiryDelta_clone(const struct LDKMinFinalCltvExpiryDelta *NONNULL_PTR orig);
 /* @internal */
-export function MinFinalCltvExpiry_clone(orig: bigint): bigint {
+export function MinFinalCltvExpiryDelta_clone(orig: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_MinFinalCltvExpiry_clone(orig);
+       const nativeResponseValue = wasm.TS_MinFinalCltvExpiryDelta_clone(orig);
        return nativeResponseValue;
 }
-       // uint64_t MinFinalCltvExpiry_hash(const struct LDKMinFinalCltvExpiry *NONNULL_PTR o);
+       // uint64_t MinFinalCltvExpiryDelta_hash(const struct LDKMinFinalCltvExpiryDelta *NONNULL_PTR o);
 /* @internal */
-export function MinFinalCltvExpiry_hash(o: bigint): bigint {
+export function MinFinalCltvExpiryDelta_hash(o: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_MinFinalCltvExpiry_hash(o);
+       const nativeResponseValue = wasm.TS_MinFinalCltvExpiryDelta_hash(o);
        return nativeResponseValue;
 }
-       // bool MinFinalCltvExpiry_eq(const struct LDKMinFinalCltvExpiry *NONNULL_PTR a, const struct LDKMinFinalCltvExpiry *NONNULL_PTR b);
+       // bool MinFinalCltvExpiryDelta_eq(const struct LDKMinFinalCltvExpiryDelta *NONNULL_PTR a, const struct LDKMinFinalCltvExpiryDelta *NONNULL_PTR b);
 /* @internal */
-export function MinFinalCltvExpiry_eq(a: bigint, b: bigint): boolean {
+export function MinFinalCltvExpiryDelta_eq(a: bigint, b: bigint): boolean {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_MinFinalCltvExpiry_eq(a, b);
+       const nativeResponseValue = wasm.TS_MinFinalCltvExpiryDelta_eq(a, b);
        return nativeResponseValue;
 }
        // void Fallback_free(struct LDKFallback this_ptr);
@@ -32674,7 +37988,7 @@ export function Fallback_clone(orig: bigint): bigint {
        const nativeResponseValue = wasm.TS_Fallback_clone(orig);
        return nativeResponseValue;
 }
-       // struct LDKFallback Fallback_seg_wit_program(struct LDKu5 version, struct LDKCVec_u8Z program);
+       // struct LDKFallback Fallback_seg_wit_program(struct LDKU5 version, struct LDKCVec_u8Z program);
 /* @internal */
 export function Fallback_seg_wit_program(version: number, program: number): bigint {
        if(!isWasmInitialized) {
@@ -32745,6 +38059,15 @@ export function InvoiceSignature_clone(orig: bigint): bigint {
        }
        const nativeResponseValue = wasm.TS_InvoiceSignature_clone(orig);
        return nativeResponseValue;
+}
+       // uint64_t InvoiceSignature_hash(const struct LDKInvoiceSignature *NONNULL_PTR o);
+/* @internal */
+export function InvoiceSignature_hash(o: bigint): bigint {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_InvoiceSignature_hash(o);
+       return nativeResponseValue;
 }
        // bool InvoiceSignature_eq(const struct LDKInvoiceSignature *NONNULL_PTR a, const struct LDKInvoiceSignature *NONNULL_PTR b);
 /* @internal */
@@ -32818,13 +38141,13 @@ export function SignedRawInvoice_raw_invoice(this_arg: bigint): bigint {
        const nativeResponseValue = wasm.TS_SignedRawInvoice_raw_invoice(this_arg);
        return nativeResponseValue;
 }
-       // MUST_USE_RES const uint8_t (*SignedRawInvoice_hash(const struct LDKSignedRawInvoice *NONNULL_PTR this_arg))[32];
+       // MUST_USE_RES const uint8_t (*SignedRawInvoice_signable_hash(const struct LDKSignedRawInvoice *NONNULL_PTR this_arg))[32];
 /* @internal */
-export function SignedRawInvoice_hash(this_arg: bigint): number {
+export function SignedRawInvoice_signable_hash(this_arg: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_SignedRawInvoice_hash(this_arg);
+       const nativeResponseValue = wasm.TS_SignedRawInvoice_signable_hash(this_arg);
        return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKInvoiceSignature SignedRawInvoice_signature(const struct LDKSignedRawInvoice *NONNULL_PTR this_arg);
@@ -32854,13 +38177,13 @@ export function SignedRawInvoice_check_signature(this_arg: bigint): boolean {
        const nativeResponseValue = wasm.TS_SignedRawInvoice_check_signature(this_arg);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKThirtyTwoBytes RawInvoice_hash(const struct LDKRawInvoice *NONNULL_PTR this_arg);
+       // MUST_USE_RES struct LDKThirtyTwoBytes RawInvoice_signable_hash(const struct LDKRawInvoice *NONNULL_PTR this_arg);
 /* @internal */
-export function RawInvoice_hash(this_arg: bigint): number {
+export function RawInvoice_signable_hash(this_arg: bigint): number {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_RawInvoice_hash(this_arg);
+       const nativeResponseValue = wasm.TS_RawInvoice_signable_hash(this_arg);
        return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKSha256 RawInvoice_payment_hash(const struct LDKRawInvoice *NONNULL_PTR this_arg);
@@ -32908,13 +38231,13 @@ export function RawInvoice_expiry_time(this_arg: bigint): bigint {
        const nativeResponseValue = wasm.TS_RawInvoice_expiry_time(this_arg);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKMinFinalCltvExpiry RawInvoice_min_final_cltv_expiry(const struct LDKRawInvoice *NONNULL_PTR this_arg);
+       // MUST_USE_RES struct LDKMinFinalCltvExpiryDelta RawInvoice_min_final_cltv_expiry_delta(const struct LDKRawInvoice *NONNULL_PTR this_arg);
 /* @internal */
-export function RawInvoice_min_final_cltv_expiry(this_arg: bigint): bigint {
+export function RawInvoice_min_final_cltv_expiry_delta(this_arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_RawInvoice_min_final_cltv_expiry(this_arg);
+       const nativeResponseValue = wasm.TS_RawInvoice_min_final_cltv_expiry_delta(this_arg);
        return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKThirtyTwoBytes RawInvoice_payment_secret(const struct LDKRawInvoice *NONNULL_PTR this_arg);
@@ -33097,13 +38420,13 @@ export function Invoice_would_expire(this_arg: bigint, at_time: bigint): boolean
        const nativeResponseValue = wasm.TS_Invoice_would_expire(this_arg, at_time);
        return nativeResponseValue;
 }
-       // MUST_USE_RES uint64_t Invoice_min_final_cltv_expiry(const struct LDKInvoice *NONNULL_PTR this_arg);
+       // MUST_USE_RES uint64_t Invoice_min_final_cltv_expiry_delta(const struct LDKInvoice *NONNULL_PTR this_arg);
 /* @internal */
-export function Invoice_min_final_cltv_expiry(this_arg: bigint): bigint {
+export function Invoice_min_final_cltv_expiry_delta(this_arg: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Invoice_min_final_cltv_expiry(this_arg);
+       const nativeResponseValue = wasm.TS_Invoice_min_final_cltv_expiry_delta(this_arg);
        return nativeResponseValue;
 }
        // MUST_USE_RES struct LDKCVec_PrivateRouteZ Invoice_private_routes(const struct LDKInvoice *NONNULL_PTR this_arg);
@@ -33267,6 +38590,15 @@ export function CreationError_missing_route_hints(): CreationError {
        }
        const nativeResponseValue = wasm.TS_CreationError_missing_route_hints();
        return nativeResponseValue;
+}
+       // enum LDKCreationError CreationError_min_final_cltv_expiry_delta_too_short(void);
+/* @internal */
+export function CreationError_min_final_cltv_expiry_delta_too_short(): CreationError {
+       if(!isWasmInitialized) {
+               throw new Error("initializeWasm() must be awaited first!");
+       }
+       const nativeResponseValue = wasm.TS_CreationError_min_final_cltv_expiry_delta_too_short();
+       return nativeResponseValue;
 }
        // bool CreationError_eq(const enum LDKCreationError *NONNULL_PTR a, const enum LDKCreationError *NONNULL_PTR b);
 /* @internal */
@@ -33466,85 +38798,40 @@ export function SignOrCreationError_to_str(o: bigint): number {
        const nativeResponseValue = wasm.TS_SignOrCreationError_to_str(o);
        return nativeResponseValue;
 }
-       // void InvoicePayer_free(struct LDKInvoicePayer this_obj);
-/* @internal */
-export function InvoicePayer_free(this_obj: bigint): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_InvoicePayer_free(this_obj);
-       // debug statements here
-}
-       // void Payer_free(struct LDKPayer this_ptr);
-/* @internal */
-export function Payer_free(this_ptr: bigint): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_Payer_free(this_ptr);
-       // debug statements here
-}
-       // void Router_free(struct LDKRouter this_ptr);
-/* @internal */
-export function Router_free(this_ptr: bigint): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_Router_free(this_ptr);
-       // debug statements here
-}
-       // void Retry_free(struct LDKRetry this_ptr);
+       // struct LDKCResult_PaymentIdPaymentErrorZ pay_invoice(const struct LDKInvoice *NONNULL_PTR invoice, struct LDKRetry retry_strategy, const struct LDKChannelManager *NONNULL_PTR channelmanager);
 /* @internal */
-export function Retry_free(this_ptr: bigint): void {
+export function pay_invoice(invoice: bigint, retry_strategy: bigint, channelmanager: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Retry_free(this_ptr);
-       // debug statements here
-}
-       // uint64_t Retry_clone_ptr(LDKRetry *NONNULL_PTR arg);
-/* @internal */
-export function Retry_clone_ptr(arg: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_Retry_clone_ptr(arg);
+       const nativeResponseValue = wasm.TS_pay_invoice(invoice, retry_strategy, channelmanager);
        return nativeResponseValue;
 }
-       // struct LDKRetry Retry_clone(const struct LDKRetry *NONNULL_PTR orig);
+       // struct LDKCResult_NonePaymentErrorZ pay_invoice_with_id(const struct LDKInvoice *NONNULL_PTR invoice, struct LDKThirtyTwoBytes payment_id, struct LDKRetry retry_strategy, const struct LDKChannelManager *NONNULL_PTR channelmanager);
 /* @internal */
-export function Retry_clone(orig: bigint): bigint {
+export function pay_invoice_with_id(invoice: bigint, payment_id: number, retry_strategy: bigint, channelmanager: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Retry_clone(orig);
+       const nativeResponseValue = wasm.TS_pay_invoice_with_id(invoice, payment_id, retry_strategy, channelmanager);
        return nativeResponseValue;
 }
-       // struct LDKRetry Retry_attempts(uintptr_t a);
+       // struct LDKCResult_PaymentIdPaymentErrorZ pay_zero_value_invoice(const struct LDKInvoice *NONNULL_PTR invoice, uint64_t amount_msats, struct LDKRetry retry_strategy, const struct LDKChannelManager *NONNULL_PTR channelmanager);
 /* @internal */
-export function Retry_attempts(a: number): bigint {
+export function pay_zero_value_invoice(invoice: bigint, amount_msats: bigint, retry_strategy: bigint, channelmanager: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Retry_attempts(a);
+       const nativeResponseValue = wasm.TS_pay_zero_value_invoice(invoice, amount_msats, retry_strategy, channelmanager);
        return nativeResponseValue;
 }
-       // bool Retry_eq(const struct LDKRetry *NONNULL_PTR a, const struct LDKRetry *NONNULL_PTR b);
+       // struct LDKCResult_NonePaymentErrorZ pay_zero_value_invoice_with_id(const struct LDKInvoice *NONNULL_PTR invoice, uint64_t amount_msats, struct LDKThirtyTwoBytes payment_id, struct LDKRetry retry_strategy, const struct LDKChannelManager *NONNULL_PTR channelmanager);
 /* @internal */
-export function Retry_eq(a: bigint, b: bigint): boolean {
+export function pay_zero_value_invoice_with_id(invoice: bigint, amount_msats: bigint, payment_id: number, retry_strategy: bigint, channelmanager: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_Retry_eq(a, b);
-       return nativeResponseValue;
-}
-       // uint64_t Retry_hash(const struct LDKRetry *NONNULL_PTR o);
-/* @internal */
-export function Retry_hash(o: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_Retry_hash(o);
+       const nativeResponseValue = wasm.TS_pay_zero_value_invoice_with_id(invoice, amount_msats, payment_id, retry_strategy, channelmanager);
        return nativeResponseValue;
 }
        // void PaymentError_free(struct LDKPaymentError this_ptr);
@@ -33583,130 +38870,58 @@ export function PaymentError_invoice(a: number): bigint {
        const nativeResponseValue = wasm.TS_PaymentError_invoice(a);
        return nativeResponseValue;
 }
-       // struct LDKPaymentError PaymentError_routing(struct LDKLightningError a);
-/* @internal */
-export function PaymentError_routing(a: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_PaymentError_routing(a);
-       return nativeResponseValue;
-}
-       // struct LDKPaymentError PaymentError_sending(struct LDKPaymentSendFailure a);
+       // struct LDKPaymentError PaymentError_sending(enum LDKRetryableSendFailure a);
 /* @internal */
-export function PaymentError_sending(a: bigint): bigint {
+export function PaymentError_sending(a: RetryableSendFailure): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
        const nativeResponseValue = wasm.TS_PaymentError_sending(a);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKInvoicePayer InvoicePayer_new(struct LDKPayer payer, struct LDKRouter router, const struct LDKMultiThreadedLockableScore *NONNULL_PTR scorer, struct LDKLogger logger, struct LDKEventHandler event_handler, struct LDKRetry retry);
+       // struct LDKCResult_InvoiceSignOrCreationErrorZ create_phantom_invoice(struct LDKCOption_u64Z amt_msat, struct LDKThirtyTwoBytes payment_hash, struct LDKStr description, uint32_t invoice_expiry_delta_secs, struct LDKCVec_PhantomRouteHintsZ phantom_route_hints, struct LDKEntropySource entropy_source, struct LDKNodeSigner node_signer, struct LDKLogger logger, enum LDKCurrency network, struct LDKCOption_u16Z min_final_cltv_expiry_delta, uint64_t duration_since_epoch);
 /* @internal */
-export function InvoicePayer_new(payer: bigint, router: bigint, scorer: bigint, logger: bigint, event_handler: bigint, retry: bigint): bigint {
+export function create_phantom_invoice(amt_msat: bigint, payment_hash: number, description: number, invoice_expiry_delta_secs: number, phantom_route_hints: number, entropy_source: bigint, node_signer: bigint, logger: bigint, network: Currency, min_final_cltv_expiry_delta: bigint, duration_since_epoch: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_InvoicePayer_new(payer, router, scorer, logger, event_handler, retry);
+       const nativeResponseValue = wasm.TS_create_phantom_invoice(amt_msat, payment_hash, description, invoice_expiry_delta_secs, phantom_route_hints, entropy_source, node_signer, logger, network, min_final_cltv_expiry_delta, duration_since_epoch);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKCResult_PaymentIdPaymentErrorZ InvoicePayer_pay_invoice(const struct LDKInvoicePayer *NONNULL_PTR this_arg, const struct LDKInvoice *NONNULL_PTR invoice);
+       // struct LDKCResult_InvoiceSignOrCreationErrorZ create_phantom_invoice_with_description_hash(struct LDKCOption_u64Z amt_msat, struct LDKThirtyTwoBytes payment_hash, uint32_t invoice_expiry_delta_secs, struct LDKSha256 description_hash, struct LDKCVec_PhantomRouteHintsZ phantom_route_hints, struct LDKEntropySource entropy_source, struct LDKNodeSigner node_signer, struct LDKLogger logger, enum LDKCurrency network, struct LDKCOption_u16Z min_final_cltv_expiry_delta, uint64_t duration_since_epoch);
 /* @internal */
-export function InvoicePayer_pay_invoice(this_arg: bigint, invoice: bigint): bigint {
+export function create_phantom_invoice_with_description_hash(amt_msat: bigint, payment_hash: number, invoice_expiry_delta_secs: number, description_hash: bigint, phantom_route_hints: number, entropy_source: bigint, node_signer: bigint, logger: bigint, network: Currency, min_final_cltv_expiry_delta: bigint, duration_since_epoch: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_InvoicePayer_pay_invoice(this_arg, invoice);
+       const nativeResponseValue = wasm.TS_create_phantom_invoice_with_description_hash(amt_msat, payment_hash, invoice_expiry_delta_secs, description_hash, phantom_route_hints, entropy_source, node_signer, logger, network, min_final_cltv_expiry_delta, duration_since_epoch);
        return nativeResponseValue;
 }
-       // MUST_USE_RES struct LDKCResult_PaymentIdPaymentErrorZ InvoicePayer_pay_zero_value_invoice(const struct LDKInvoicePayer *NONNULL_PTR this_arg, const struct LDKInvoice *NONNULL_PTR invoice, uint64_t amount_msats);
-/* @internal */
-export function InvoicePayer_pay_zero_value_invoice(this_arg: bigint, invoice: bigint, amount_msats: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_InvoicePayer_pay_zero_value_invoice(this_arg, invoice, amount_msats);
-       return nativeResponseValue;
-}
-       // MUST_USE_RES struct LDKCResult_PaymentIdPaymentErrorZ InvoicePayer_pay_pubkey(const struct LDKInvoicePayer *NONNULL_PTR this_arg, struct LDKPublicKey pubkey, struct LDKThirtyTwoBytes payment_preimage, uint64_t amount_msats, uint32_t final_cltv_expiry_delta);
-/* @internal */
-export function InvoicePayer_pay_pubkey(this_arg: bigint, pubkey: number, payment_preimage: number, amount_msats: bigint, final_cltv_expiry_delta: number): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_InvoicePayer_pay_pubkey(this_arg, pubkey, payment_preimage, amount_msats, final_cltv_expiry_delta);
-       return nativeResponseValue;
-}
-       // void InvoicePayer_remove_cached_payment(const struct LDKInvoicePayer *NONNULL_PTR this_arg, const uint8_t (*payment_hash)[32]);
-/* @internal */
-export function InvoicePayer_remove_cached_payment(this_arg: bigint, payment_hash: number): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_InvoicePayer_remove_cached_payment(this_arg, payment_hash);
-       // debug statements here
-}
-       // struct LDKEventHandler InvoicePayer_as_EventHandler(const struct LDKInvoicePayer *NONNULL_PTR this_arg);
+       // struct LDKCResult_InvoiceSignOrCreationErrorZ create_invoice_from_channelmanager_with_description_hash_and_duration_since_epoch(const struct LDKChannelManager *NONNULL_PTR channelmanager, struct LDKNodeSigner node_signer, struct LDKLogger logger, enum LDKCurrency network, struct LDKCOption_u64Z amt_msat, struct LDKSha256 description_hash, uint64_t duration_since_epoch, uint32_t invoice_expiry_delta_secs, struct LDKCOption_u16Z min_final_cltv_expiry_delta);
 /* @internal */
-export function InvoicePayer_as_EventHandler(this_arg: bigint): bigint {
+export function create_invoice_from_channelmanager_with_description_hash_and_duration_since_epoch(channelmanager: bigint, node_signer: bigint, logger: bigint, network: Currency, amt_msat: bigint, description_hash: bigint, duration_since_epoch: bigint, invoice_expiry_delta_secs: number, min_final_cltv_expiry_delta: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_InvoicePayer_as_EventHandler(this_arg);
+       const nativeResponseValue = wasm.TS_create_invoice_from_channelmanager_with_description_hash_and_duration_since_epoch(channelmanager, node_signer, logger, network, amt_msat, description_hash, duration_since_epoch, invoice_expiry_delta_secs, min_final_cltv_expiry_delta);
        return nativeResponseValue;
 }
-       // struct LDKCResult_InvoiceSignOrCreationErrorZ create_invoice_from_channelmanager_with_description_hash_and_duration_since_epoch(const struct LDKChannelManager *NONNULL_PTR channelmanager, struct LDKKeysInterface keys_manager, enum LDKCurrency network, struct LDKCOption_u64Z amt_msat, struct LDKSha256 description_hash, uint64_t duration_since_epoch, uint32_t invoice_expiry_delta_secs);
+       // struct LDKCResult_InvoiceSignOrCreationErrorZ create_invoice_from_channelmanager_and_duration_since_epoch(const struct LDKChannelManager *NONNULL_PTR channelmanager, struct LDKNodeSigner node_signer, struct LDKLogger logger, enum LDKCurrency network, struct LDKCOption_u64Z amt_msat, struct LDKStr description, uint64_t duration_since_epoch, uint32_t invoice_expiry_delta_secs, struct LDKCOption_u16Z min_final_cltv_expiry_delta);
 /* @internal */
-export function create_invoice_from_channelmanager_with_description_hash_and_duration_since_epoch(channelmanager: bigint, keys_manager: bigint, network: Currency, amt_msat: bigint, description_hash: bigint, duration_since_epoch: bigint, invoice_expiry_delta_secs: number): bigint {
+export function create_invoice_from_channelmanager_and_duration_since_epoch(channelmanager: bigint, node_signer: bigint, logger: bigint, network: Currency, amt_msat: bigint, description: number, duration_since_epoch: bigint, invoice_expiry_delta_secs: number, min_final_cltv_expiry_delta: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_create_invoice_from_channelmanager_with_description_hash_and_duration_since_epoch(channelmanager, keys_manager, network, amt_msat, description_hash, duration_since_epoch, invoice_expiry_delta_secs);
-       return nativeResponseValue;
-}
-       // struct LDKCResult_InvoiceSignOrCreationErrorZ create_invoice_from_channelmanager_and_duration_since_epoch(const struct LDKChannelManager *NONNULL_PTR channelmanager, struct LDKKeysInterface keys_manager, enum LDKCurrency network, struct LDKCOption_u64Z amt_msat, struct LDKStr description, uint64_t duration_since_epoch, uint32_t invoice_expiry_delta_secs);
-/* @internal */
-export function create_invoice_from_channelmanager_and_duration_since_epoch(channelmanager: bigint, keys_manager: bigint, network: Currency, amt_msat: bigint, description: number, duration_since_epoch: bigint, invoice_expiry_delta_secs: number): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_create_invoice_from_channelmanager_and_duration_since_epoch(channelmanager, keys_manager, network, amt_msat, description, duration_since_epoch, invoice_expiry_delta_secs);
-       return nativeResponseValue;
-}
-       // void DefaultRouter_free(struct LDKDefaultRouter this_obj);
-/* @internal */
-export function DefaultRouter_free(this_obj: bigint): void {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_DefaultRouter_free(this_obj);
-       // debug statements here
-}
-       // MUST_USE_RES struct LDKDefaultRouter DefaultRouter_new(const struct LDKNetworkGraph *NONNULL_PTR network_graph, struct LDKLogger logger, struct LDKThirtyTwoBytes random_seed_bytes);
-/* @internal */
-export function DefaultRouter_new(network_graph: bigint, logger: bigint, random_seed_bytes: number): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_DefaultRouter_new(network_graph, logger, random_seed_bytes);
-       return nativeResponseValue;
-}
-       // struct LDKRouter DefaultRouter_as_Router(const struct LDKDefaultRouter *NONNULL_PTR this_arg);
-/* @internal */
-export function DefaultRouter_as_Router(this_arg: bigint): bigint {
-       if(!isWasmInitialized) {
-               throw new Error("initializeWasm() must be awaited first!");
-       }
-       const nativeResponseValue = wasm.TS_DefaultRouter_as_Router(this_arg);
+       const nativeResponseValue = wasm.TS_create_invoice_from_channelmanager_and_duration_since_epoch(channelmanager, node_signer, logger, network, amt_msat, description, duration_since_epoch, invoice_expiry_delta_secs, min_final_cltv_expiry_delta);
        return nativeResponseValue;
 }
-       // struct LDKPayer ChannelManager_as_Payer(const struct LDKChannelManager *NONNULL_PTR this_arg);
+       // struct LDKCResult_InvoiceSignOrCreationErrorZ create_invoice_from_channelmanager_and_duration_since_epoch_with_payment_hash(const struct LDKChannelManager *NONNULL_PTR channelmanager, struct LDKNodeSigner node_signer, struct LDKLogger logger, enum LDKCurrency network, struct LDKCOption_u64Z amt_msat, struct LDKStr description, uint64_t duration_since_epoch, uint32_t invoice_expiry_delta_secs, struct LDKThirtyTwoBytes payment_hash, struct LDKCOption_u16Z min_final_cltv_expiry_delta);
 /* @internal */
-export function ChannelManager_as_Payer(this_arg: bigint): bigint {
+export function create_invoice_from_channelmanager_and_duration_since_epoch_with_payment_hash(channelmanager: bigint, node_signer: bigint, logger: bigint, network: Currency, amt_msat: bigint, description: number, duration_since_epoch: bigint, invoice_expiry_delta_secs: number, payment_hash: number, min_final_cltv_expiry_delta: bigint): bigint {
        if(!isWasmInitialized) {
                throw new Error("initializeWasm() must be awaited first!");
        }
-       const nativeResponseValue = wasm.TS_ChannelManager_as_Payer(this_arg);
+       const nativeResponseValue = wasm.TS_create_invoice_from_channelmanager_and_duration_since_epoch_with_payment_hash(channelmanager, node_signer, logger, network, amt_msat, description, duration_since_epoch, invoice_expiry_delta_secs, payment_hash, min_final_cltv_expiry_delta);
        return nativeResponseValue;
 }
        // struct LDKCResult_SiPrefixParseErrorZ SiPrefix_from_str(struct LDKStr s);
@@ -33793,12 +39008,12 @@ export function SiPrefix_to_str(o: bigint): number {
 
 
 js_invoke = function(obj_ptr: number, fn_id: number, arg1: bigint|number, arg2: bigint|number, arg3: bigint|number, arg4: bigint|number, arg5: bigint|number, arg6: bigint|number, arg7: bigint|number, arg8: bigint|number, arg9: bigint|number, arg10: bigint|number) {
-       const weak: WeakRef<object> = js_objs[obj_ptr];
+       const weak: WeakRef<object>|undefined = js_objs[obj_ptr];
        if (weak == null || weak == undefined) {
                console.error("Got function call on unknown/free'd JS object!");
                throw new Error("Got function call on unknown/free'd JS object!");
        }
-       const obj: object = weak.deref();
+       const obj = weak.deref();
        if (obj == null || obj == undefined) {
                console.error("Got function call on GC'd JS object!");
                throw new Error("Got function call on GC'd JS object!");
@@ -33811,107 +39026,123 @@ js_invoke = function(obj_ptr: number, fn_id: number, arg1: bigint|number, arg2:
                case 3: fn = Object.getOwnPropertyDescriptor(obj, "release_commitment_secret"); break;
                case 4: fn = Object.getOwnPropertyDescriptor(obj, "validate_holder_commitment"); break;
                case 5: fn = Object.getOwnPropertyDescriptor(obj, "channel_keys_id"); break;
-               case 6: fn = Object.getOwnPropertyDescriptor(obj, "sign_counterparty_commitment"); break;
-               case 7: fn = Object.getOwnPropertyDescriptor(obj, "validate_counterparty_revocation"); break;
-               case 8: fn = Object.getOwnPropertyDescriptor(obj, "sign_holder_commitment_and_htlcs"); break;
-               case 9: fn = Object.getOwnPropertyDescriptor(obj, "sign_justice_revoked_output"); break;
-               case 10: fn = Object.getOwnPropertyDescriptor(obj, "sign_justice_revoked_htlc"); break;
-               case 11: fn = Object.getOwnPropertyDescriptor(obj, "sign_counterparty_htlc_transaction"); break;
-               case 12: fn = Object.getOwnPropertyDescriptor(obj, "sign_closing_transaction"); break;
-               case 13: fn = Object.getOwnPropertyDescriptor(obj, "sign_channel_announcement"); break;
-               case 14: fn = Object.getOwnPropertyDescriptor(obj, "ready_channel"); break;
-               case 15: fn = Object.getOwnPropertyDescriptor(obj, "write"); break;
-               case 16: fn = Object.getOwnPropertyDescriptor(obj, "watch_channel"); break;
-               case 17: fn = Object.getOwnPropertyDescriptor(obj, "update_channel"); break;
-               case 18: fn = Object.getOwnPropertyDescriptor(obj, "release_pending_monitor_events"); break;
-               case 19: fn = Object.getOwnPropertyDescriptor(obj, "broadcast_transaction"); break;
-               case 20: fn = Object.getOwnPropertyDescriptor(obj, "get_node_secret"); break;
-               case 21: fn = Object.getOwnPropertyDescriptor(obj, "get_destination_script"); break;
-               case 22: fn = Object.getOwnPropertyDescriptor(obj, "get_shutdown_scriptpubkey"); break;
-               case 23: fn = Object.getOwnPropertyDescriptor(obj, "get_channel_signer"); break;
-               case 24: fn = Object.getOwnPropertyDescriptor(obj, "get_secure_random_bytes"); break;
-               case 25: fn = Object.getOwnPropertyDescriptor(obj, "read_chan_signer"); break;
-               case 26: fn = Object.getOwnPropertyDescriptor(obj, "sign_invoice"); break;
-               case 27: fn = Object.getOwnPropertyDescriptor(obj, "get_inbound_payment_key_material"); break;
-               case 28: fn = Object.getOwnPropertyDescriptor(obj, "get_est_sat_per_1000_weight"); break;
-               case 29: fn = Object.getOwnPropertyDescriptor(obj, "type_id"); break;
-               case 30: fn = Object.getOwnPropertyDescriptor(obj, "debug_str"); break;
-               case 31: fn = Object.getOwnPropertyDescriptor(obj, "write"); break;
-               case 32: fn = Object.getOwnPropertyDescriptor(obj, "register_tx"); break;
-               case 33: fn = Object.getOwnPropertyDescriptor(obj, "register_output"); break;
-               case 34: fn = Object.getOwnPropertyDescriptor(obj, "get_and_clear_pending_msg_events"); break;
-               case 35: fn = Object.getOwnPropertyDescriptor(obj, "handle_event"); break;
-               case 36: fn = Object.getOwnPropertyDescriptor(obj, "process_pending_events"); break;
-               case 37: fn = Object.getOwnPropertyDescriptor(obj, "channel_penalty_msat"); break;
-               case 38: fn = Object.getOwnPropertyDescriptor(obj, "payment_path_failed"); break;
-               case 39: fn = Object.getOwnPropertyDescriptor(obj, "payment_path_successful"); break;
-               case 40: fn = Object.getOwnPropertyDescriptor(obj, "probe_failed"); break;
-               case 41: fn = Object.getOwnPropertyDescriptor(obj, "probe_successful"); break;
-               case 42: fn = Object.getOwnPropertyDescriptor(obj, "write"); break;
-               case 43: fn = Object.getOwnPropertyDescriptor(obj, "persist_manager"); break;
-               case 44: fn = Object.getOwnPropertyDescriptor(obj, "persist_graph"); break;
-               case 45: fn = Object.getOwnPropertyDescriptor(obj, "persist_scorer"); break;
-               case 46: fn = Object.getOwnPropertyDescriptor(obj, "filtered_block_connected"); break;
-               case 47: fn = Object.getOwnPropertyDescriptor(obj, "block_connected"); break;
-               case 48: fn = Object.getOwnPropertyDescriptor(obj, "block_disconnected"); break;
-               case 49: fn = Object.getOwnPropertyDescriptor(obj, "transactions_confirmed"); break;
-               case 50: fn = Object.getOwnPropertyDescriptor(obj, "transaction_unconfirmed"); break;
-               case 51: fn = Object.getOwnPropertyDescriptor(obj, "best_block_updated"); break;
-               case 52: fn = Object.getOwnPropertyDescriptor(obj, "get_relevant_txids"); break;
-               case 53: fn = Object.getOwnPropertyDescriptor(obj, "persist_new_channel"); break;
-               case 54: fn = Object.getOwnPropertyDescriptor(obj, "update_persisted_channel"); break;
-               case 55: fn = Object.getOwnPropertyDescriptor(obj, "handle_open_channel"); break;
-               case 56: fn = Object.getOwnPropertyDescriptor(obj, "handle_accept_channel"); break;
-               case 57: fn = Object.getOwnPropertyDescriptor(obj, "handle_funding_created"); break;
-               case 58: fn = Object.getOwnPropertyDescriptor(obj, "handle_funding_signed"); break;
-               case 59: fn = Object.getOwnPropertyDescriptor(obj, "handle_channel_ready"); break;
-               case 60: fn = Object.getOwnPropertyDescriptor(obj, "handle_shutdown"); break;
-               case 61: fn = Object.getOwnPropertyDescriptor(obj, "handle_closing_signed"); break;
-               case 62: fn = Object.getOwnPropertyDescriptor(obj, "handle_update_add_htlc"); break;
-               case 63: fn = Object.getOwnPropertyDescriptor(obj, "handle_update_fulfill_htlc"); break;
-               case 64: fn = Object.getOwnPropertyDescriptor(obj, "handle_update_fail_htlc"); break;
-               case 65: fn = Object.getOwnPropertyDescriptor(obj, "handle_update_fail_malformed_htlc"); break;
-               case 66: fn = Object.getOwnPropertyDescriptor(obj, "handle_commitment_signed"); break;
-               case 67: fn = Object.getOwnPropertyDescriptor(obj, "handle_revoke_and_ack"); break;
-               case 68: fn = Object.getOwnPropertyDescriptor(obj, "handle_update_fee"); break;
-               case 69: fn = Object.getOwnPropertyDescriptor(obj, "handle_announcement_signatures"); break;
-               case 70: fn = Object.getOwnPropertyDescriptor(obj, "peer_disconnected"); break;
-               case 71: fn = Object.getOwnPropertyDescriptor(obj, "peer_connected"); break;
-               case 72: fn = Object.getOwnPropertyDescriptor(obj, "handle_channel_reestablish"); break;
-               case 73: fn = Object.getOwnPropertyDescriptor(obj, "handle_channel_update"); break;
-               case 74: fn = Object.getOwnPropertyDescriptor(obj, "handle_error"); break;
-               case 75: fn = Object.getOwnPropertyDescriptor(obj, "handle_node_announcement"); break;
-               case 76: fn = Object.getOwnPropertyDescriptor(obj, "handle_channel_announcement"); break;
-               case 77: fn = Object.getOwnPropertyDescriptor(obj, "handle_channel_update"); break;
-               case 78: fn = Object.getOwnPropertyDescriptor(obj, "get_next_channel_announcements"); break;
-               case 79: fn = Object.getOwnPropertyDescriptor(obj, "get_next_node_announcements"); break;
-               case 80: fn = Object.getOwnPropertyDescriptor(obj, "peer_connected"); break;
-               case 81: fn = Object.getOwnPropertyDescriptor(obj, "handle_reply_channel_range"); break;
-               case 82: fn = Object.getOwnPropertyDescriptor(obj, "handle_reply_short_channel_ids_end"); break;
-               case 83: fn = Object.getOwnPropertyDescriptor(obj, "handle_query_channel_range"); break;
-               case 84: fn = Object.getOwnPropertyDescriptor(obj, "handle_query_short_channel_ids"); break;
-               case 85: fn = Object.getOwnPropertyDescriptor(obj, "read"); break;
-               case 86: fn = Object.getOwnPropertyDescriptor(obj, "handle_custom_message"); break;
-               case 87: fn = Object.getOwnPropertyDescriptor(obj, "get_and_clear_pending_msg"); break;
-               case 88: fn = Object.getOwnPropertyDescriptor(obj, "send_data"); break;
-               case 89: fn = Object.getOwnPropertyDescriptor(obj, "disconnect_socket"); break;
-               case 90: fn = Object.getOwnPropertyDescriptor(obj, "eq"); break;
-               case 91: fn = Object.getOwnPropertyDescriptor(obj, "hash"); break;
-               case 92: fn = Object.getOwnPropertyDescriptor(obj, "lock"); break;
-               case 93: fn = Object.getOwnPropertyDescriptor(obj, "node_id"); break;
-               case 94: fn = Object.getOwnPropertyDescriptor(obj, "first_hops"); break;
-               case 95: fn = Object.getOwnPropertyDescriptor(obj, "send_payment"); break;
-               case 96: fn = Object.getOwnPropertyDescriptor(obj, "send_spontaneous_payment"); break;
-               case 97: fn = Object.getOwnPropertyDescriptor(obj, "retry_payment"); break;
-               case 98: fn = Object.getOwnPropertyDescriptor(obj, "abandon_payment"); break;
-               case 99: fn = Object.getOwnPropertyDescriptor(obj, "find_route"); break;
+               case 6: fn = Object.getOwnPropertyDescriptor(obj, "provide_channel_parameters"); break;
+               case 7: fn = Object.getOwnPropertyDescriptor(obj, "sign_counterparty_commitment"); break;
+               case 8: fn = Object.getOwnPropertyDescriptor(obj, "validate_counterparty_revocation"); break;
+               case 9: fn = Object.getOwnPropertyDescriptor(obj, "sign_holder_commitment_and_htlcs"); break;
+               case 10: fn = Object.getOwnPropertyDescriptor(obj, "sign_justice_revoked_output"); break;
+               case 11: fn = Object.getOwnPropertyDescriptor(obj, "sign_justice_revoked_htlc"); break;
+               case 12: fn = Object.getOwnPropertyDescriptor(obj, "sign_counterparty_htlc_transaction"); break;
+               case 13: fn = Object.getOwnPropertyDescriptor(obj, "sign_closing_transaction"); break;
+               case 14: fn = Object.getOwnPropertyDescriptor(obj, "sign_holder_anchor_input"); break;
+               case 15: fn = Object.getOwnPropertyDescriptor(obj, "sign_channel_announcement_with_funding_key"); break;
+               case 16: fn = Object.getOwnPropertyDescriptor(obj, "write"); break;
+               case 17: fn = Object.getOwnPropertyDescriptor(obj, "watch_channel"); break;
+               case 18: fn = Object.getOwnPropertyDescriptor(obj, "update_channel"); break;
+               case 19: fn = Object.getOwnPropertyDescriptor(obj, "release_pending_monitor_events"); break;
+               case 20: fn = Object.getOwnPropertyDescriptor(obj, "broadcast_transaction"); break;
+               case 21: fn = Object.getOwnPropertyDescriptor(obj, "get_secure_random_bytes"); break;
+               case 22: fn = Object.getOwnPropertyDescriptor(obj, "get_inbound_payment_key_material"); break;
+               case 23: fn = Object.getOwnPropertyDescriptor(obj, "get_node_id"); break;
+               case 24: fn = Object.getOwnPropertyDescriptor(obj, "ecdh"); break;
+               case 25: fn = Object.getOwnPropertyDescriptor(obj, "sign_invoice"); break;
+               case 26: fn = Object.getOwnPropertyDescriptor(obj, "sign_gossip_message"); break;
+               case 27: fn = Object.getOwnPropertyDescriptor(obj, "generate_channel_keys_id"); break;
+               case 28: fn = Object.getOwnPropertyDescriptor(obj, "derive_channel_signer"); break;
+               case 29: fn = Object.getOwnPropertyDescriptor(obj, "read_chan_signer"); break;
+               case 30: fn = Object.getOwnPropertyDescriptor(obj, "get_destination_script"); break;
+               case 31: fn = Object.getOwnPropertyDescriptor(obj, "get_shutdown_scriptpubkey"); break;
+               case 32: fn = Object.getOwnPropertyDescriptor(obj, "get_est_sat_per_1000_weight"); break;
+               case 33: fn = Object.getOwnPropertyDescriptor(obj, "find_route"); break;
+               case 34: fn = Object.getOwnPropertyDescriptor(obj, "find_route_with_id"); break;
+               case 35: fn = Object.getOwnPropertyDescriptor(obj, "type_id"); break;
+               case 36: fn = Object.getOwnPropertyDescriptor(obj, "debug_str"); break;
+               case 37: fn = Object.getOwnPropertyDescriptor(obj, "write"); break;
+               case 38: fn = Object.getOwnPropertyDescriptor(obj, "tlv_type"); break;
+               case 39: fn = Object.getOwnPropertyDescriptor(obj, "write"); break;
+               case 40: fn = Object.getOwnPropertyDescriptor(obj, "register_tx"); break;
+               case 41: fn = Object.getOwnPropertyDescriptor(obj, "register_output"); break;
+               case 42: fn = Object.getOwnPropertyDescriptor(obj, "get_and_clear_pending_msg_events"); break;
+               case 43: fn = Object.getOwnPropertyDescriptor(obj, "next_onion_message_for_peer"); break;
+               case 44: fn = Object.getOwnPropertyDescriptor(obj, "handle_event"); break;
+               case 45: fn = Object.getOwnPropertyDescriptor(obj, "process_pending_events"); break;
+               case 46: fn = Object.getOwnPropertyDescriptor(obj, "channel_penalty_msat"); break;
+               case 47: fn = Object.getOwnPropertyDescriptor(obj, "payment_path_failed"); break;
+               case 48: fn = Object.getOwnPropertyDescriptor(obj, "payment_path_successful"); break;
+               case 49: fn = Object.getOwnPropertyDescriptor(obj, "probe_failed"); break;
+               case 50: fn = Object.getOwnPropertyDescriptor(obj, "probe_successful"); break;
+               case 51: fn = Object.getOwnPropertyDescriptor(obj, "write"); break;
+               case 52: fn = Object.getOwnPropertyDescriptor(obj, "lock"); break;
+               case 53: fn = Object.getOwnPropertyDescriptor(obj, "write"); break;
+               case 54: fn = Object.getOwnPropertyDescriptor(obj, "persist_manager"); break;
+               case 55: fn = Object.getOwnPropertyDescriptor(obj, "persist_graph"); break;
+               case 56: fn = Object.getOwnPropertyDescriptor(obj, "persist_scorer"); break;
+               case 57: fn = Object.getOwnPropertyDescriptor(obj, "call"); break;
+               case 58: fn = Object.getOwnPropertyDescriptor(obj, "filtered_block_connected"); break;
+               case 59: fn = Object.getOwnPropertyDescriptor(obj, "block_connected"); break;
+               case 60: fn = Object.getOwnPropertyDescriptor(obj, "block_disconnected"); break;
+               case 61: fn = Object.getOwnPropertyDescriptor(obj, "transactions_confirmed"); break;
+               case 62: fn = Object.getOwnPropertyDescriptor(obj, "transaction_unconfirmed"); break;
+               case 63: fn = Object.getOwnPropertyDescriptor(obj, "best_block_updated"); break;
+               case 64: fn = Object.getOwnPropertyDescriptor(obj, "get_relevant_txids"); break;
+               case 65: fn = Object.getOwnPropertyDescriptor(obj, "persist_new_channel"); break;
+               case 66: fn = Object.getOwnPropertyDescriptor(obj, "update_persisted_channel"); break;
+               case 67: fn = Object.getOwnPropertyDescriptor(obj, "handle_open_channel"); break;
+               case 68: fn = Object.getOwnPropertyDescriptor(obj, "handle_accept_channel"); break;
+               case 69: fn = Object.getOwnPropertyDescriptor(obj, "handle_funding_created"); break;
+               case 70: fn = Object.getOwnPropertyDescriptor(obj, "handle_funding_signed"); break;
+               case 71: fn = Object.getOwnPropertyDescriptor(obj, "handle_channel_ready"); break;
+               case 72: fn = Object.getOwnPropertyDescriptor(obj, "handle_shutdown"); break;
+               case 73: fn = Object.getOwnPropertyDescriptor(obj, "handle_closing_signed"); break;
+               case 74: fn = Object.getOwnPropertyDescriptor(obj, "handle_update_add_htlc"); break;
+               case 75: fn = Object.getOwnPropertyDescriptor(obj, "handle_update_fulfill_htlc"); break;
+               case 76: fn = Object.getOwnPropertyDescriptor(obj, "handle_update_fail_htlc"); break;
+               case 77: fn = Object.getOwnPropertyDescriptor(obj, "handle_update_fail_malformed_htlc"); break;
+               case 78: fn = Object.getOwnPropertyDescriptor(obj, "handle_commitment_signed"); break;
+               case 79: fn = Object.getOwnPropertyDescriptor(obj, "handle_revoke_and_ack"); break;
+               case 80: fn = Object.getOwnPropertyDescriptor(obj, "handle_update_fee"); break;
+               case 81: fn = Object.getOwnPropertyDescriptor(obj, "handle_announcement_signatures"); break;
+               case 82: fn = Object.getOwnPropertyDescriptor(obj, "peer_disconnected"); break;
+               case 83: fn = Object.getOwnPropertyDescriptor(obj, "peer_connected"); break;
+               case 84: fn = Object.getOwnPropertyDescriptor(obj, "handle_channel_reestablish"); break;
+               case 85: fn = Object.getOwnPropertyDescriptor(obj, "handle_channel_update"); break;
+               case 86: fn = Object.getOwnPropertyDescriptor(obj, "handle_error"); break;
+               case 87: fn = Object.getOwnPropertyDescriptor(obj, "provided_node_features"); break;
+               case 88: fn = Object.getOwnPropertyDescriptor(obj, "provided_init_features"); break;
+               case 89: fn = Object.getOwnPropertyDescriptor(obj, "handle_node_announcement"); break;
+               case 90: fn = Object.getOwnPropertyDescriptor(obj, "handle_channel_announcement"); break;
+               case 91: fn = Object.getOwnPropertyDescriptor(obj, "handle_channel_update"); break;
+               case 92: fn = Object.getOwnPropertyDescriptor(obj, "get_next_channel_announcement"); break;
+               case 93: fn = Object.getOwnPropertyDescriptor(obj, "get_next_node_announcement"); break;
+               case 94: fn = Object.getOwnPropertyDescriptor(obj, "peer_connected"); break;
+               case 95: fn = Object.getOwnPropertyDescriptor(obj, "handle_reply_channel_range"); break;
+               case 96: fn = Object.getOwnPropertyDescriptor(obj, "handle_reply_short_channel_ids_end"); break;
+               case 97: fn = Object.getOwnPropertyDescriptor(obj, "handle_query_channel_range"); break;
+               case 98: fn = Object.getOwnPropertyDescriptor(obj, "handle_query_short_channel_ids"); break;
+               case 99: fn = Object.getOwnPropertyDescriptor(obj, "processing_queue_high"); break;
+               case 100: fn = Object.getOwnPropertyDescriptor(obj, "provided_node_features"); break;
+               case 101: fn = Object.getOwnPropertyDescriptor(obj, "provided_init_features"); break;
+               case 102: fn = Object.getOwnPropertyDescriptor(obj, "handle_onion_message"); break;
+               case 103: fn = Object.getOwnPropertyDescriptor(obj, "peer_connected"); break;
+               case 104: fn = Object.getOwnPropertyDescriptor(obj, "peer_disconnected"); break;
+               case 105: fn = Object.getOwnPropertyDescriptor(obj, "provided_node_features"); break;
+               case 106: fn = Object.getOwnPropertyDescriptor(obj, "provided_init_features"); break;
+               case 107: fn = Object.getOwnPropertyDescriptor(obj, "read"); break;
+               case 108: fn = Object.getOwnPropertyDescriptor(obj, "handle_custom_message"); break;
+               case 109: fn = Object.getOwnPropertyDescriptor(obj, "get_and_clear_pending_msg"); break;
+               case 110: fn = Object.getOwnPropertyDescriptor(obj, "handle_custom_message"); break;
+               case 111: fn = Object.getOwnPropertyDescriptor(obj, "read_custom_message"); break;
+               case 112: fn = Object.getOwnPropertyDescriptor(obj, "send_data"); break;
+               case 113: fn = Object.getOwnPropertyDescriptor(obj, "disconnect_socket"); break;
+               case 114: fn = Object.getOwnPropertyDescriptor(obj, "eq"); break;
+               case 115: fn = Object.getOwnPropertyDescriptor(obj, "hash"); break;
                default:
-                       console.error("Got unknown function call from C!");
-                       throw new Error("Got unknown function call from C!");
+                       console.error("Got unknown function call with id " + fn_id + " from C!");
+                       throw new Error("Got unknown function call with id " + fn_id + " from C!");
        }
        if (fn == null || fn == undefined) {
-               console.error("Got function call on incorrect JS object!");
-               throw new Error("Got function call on incorrect JS object!");
+               console.error("Got function call with id " + fn_id + " on incorrect JS object: " + obj);
+               throw new Error("Got function call with id " + fn_id + " on incorrect JS object: " + obj);
        }
        const ret = fn.value.bind(obj)(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10);
        if (ret === undefined || ret === null) return BigInt(0);